ceshi 2 bug处理ok
This commit is contained in:
1 parent
b768ff1555
commit
faa3a22631
8 files changed
+314
-52
No files matched your search
+11
-18
@@ -105,10 +105,9 @@ class MianshiService(BlueFoxServerSystem):
|
||||
self.timerSources.add(src)
|
||||
self.featureBlocks.add(src)
|
||||
if src not in self.startTimerTips:
|
||||
sec = r.get("time", 60)
|
||||
tgt = NAME_MAP.get(r["target"], r["target"])
|
||||
self.startTimerTips[src] = "§a开始蒸制: 还需%d秒, 计时结束变成 %s" % (sec, tgt)
|
||||
self.timingTips[src] = "§e正在蒸制中: 还需%d秒, 计时结束变成 %s" % (sec, tgt)
|
||||
self.startTimerTips[src] = "§a开始蒸制, 计时结束变成 %s" % tgt
|
||||
self.timingTips[src] = "§e正在蒸制中, 计时结束变成 %s" % tgt
|
||||
|
||||
# ---- 结果方块/物品 -> "下一步"可读提示(供转换/入笼提示追加) ----
|
||||
# 例子: 饺子皮 -> "加入 猪肉馅、青菜碎"; 可颂面胚 -> "放在烤炉上等计时(60秒)结束变成 可颂"
|
||||
@@ -140,9 +139,9 @@ class MianshiService(BlueFoxServerSystem):
|
||||
sec = r.get("time", 60)
|
||||
tgt = NAME_MAP.get(r["target"], r["target"])
|
||||
if r.get("below") == [OVEN]:
|
||||
_addTip(src, "放在烤炉上等计时(%d秒)结束变成 %s" % (sec, tgt))
|
||||
_addTip(src, "放在烤炉上等计时结束变成 %s" % tgt)
|
||||
else:
|
||||
_addTip(src, "等计时(%d秒)结束变成 %s" % (sec, tgt))
|
||||
_addTip(src, "等计时结束变成 %s" % tgt)
|
||||
|
||||
# ---- 计时源方块 -> 计时结束后的成品名(烤炉固定开始烤制提示用) ----
|
||||
self.timerTargetName = {}
|
||||
@@ -191,13 +190,11 @@ class MianshiService(BlueFoxServerSystem):
|
||||
if blockName in KNEAD_COUNTERS and (not itemName or itemName == "minecraft:air"):
|
||||
return self._handleKnead(blockName, playerId, pos, dim, key)
|
||||
|
||||
# ---- 烤炉固定: 胚/面糊/蛋液等放在烤炉上 -> 禁止右键转换, 固定开始烤制 ----
|
||||
if blockName in OVEN_FIX_BLOCKS and self._belowIs(dim, pos, OVEN):
|
||||
FeatureDispatcher.startTimerFor(blockName, dim, pos, playerId)
|
||||
if self.checkCooldown(key, 0.4):
|
||||
comp.CreateMsg(playerId).NotifyOneMessage(
|
||||
playerId, "§a已启动计时(共60秒)")
|
||||
return True
|
||||
# ---- 烤炉固定: 胚/面糊/蛋液等放在烤炉上 → 不再通过右键启动计时。
|
||||
# 【根因D】计时改自动开始: MianshiTimerService 的 tick 会按下方是否为烤炉
|
||||
# 自动启动计时(OVEN_FIX_BLOCKS 的 autoStart, 参照烤乳猪机制)。这里不再拦截
|
||||
# 右键启动, 也不挡玩家正常放置。空手右键成品取走逻辑保留在下方。
|
||||
# (移除了原"startTimerFor + 提示已启动计时"分支)
|
||||
|
||||
# ---- 烤制成品取走: 空手右键成品(下方是烤炉) -> 成品掉落物, 烤炉不动 ----
|
||||
if blockName in OVEN_RESULT_BLOCKS and self._belowIs(dim, pos, OVEN) \
|
||||
@@ -210,12 +207,8 @@ class MianshiService(BlueFoxServerSystem):
|
||||
playerId, "§a取走" + self._nameOf(blockName))
|
||||
return True
|
||||
|
||||
# ---- 空手右键"蒸笼计时源"(蒸X_生): 下方是点燃炉灶 -> 开始/继续计时 ----
|
||||
if (not itemName or itemName == "minecraft:air") and blockName in self.timerSources:
|
||||
if not self.checkCooldown(key, 0.4):
|
||||
return True
|
||||
self._handleStartTimer(blockName, playerId, pos, dim)
|
||||
return True
|
||||
# ---- 空手右键"蒸笼计时源"(蒸X_生): 计时已改自动(tick 判定下方点燃炉灶),
|
||||
# 不再通过空手右键启动; 此处不再拦截, 避免空手右键被吞影响后续操作。----
|
||||
|
||||
# ---- 常规转换 ----
|
||||
recipe = self.findRecipe(blockName, itemDict)
|
||||
|
||||
Reference in new issue
Block a user