吃 3 功能

This commit is contained in:
wenhe committed 2026-09-21 16:13:53 +08:00
1 parent 4176eb293c
commit fb817b5d34
12 files changed
+1021 -118

No files matched your search

@@ -26,6 +26,7 @@ from xiangyemod.tangguo.service.TangguoService import TangguoService
from xiangyemod.tangguo.service.TangguoTimerService import TangguoTimerService from xiangyemod.tangguo.service.TangguoTimerService import TangguoTimerService
from xiangyemod.chaoguo.service.ChaoguoService import ChaoguoService from xiangyemod.chaoguo.service.ChaoguoService import ChaoguoService
from xiangyemod.chaoguo.service.ChaoguoTimerService import ChaoguoTimerService from xiangyemod.chaoguo.service.ChaoguoTimerService import ChaoguoTimerService
from xiangyemod.shiyongfood.service.ShiyongfoodService import ShiyongfoodService
if not serverApi.IsInServer(): if not serverApi.IsInServer():
pass pass
@@ -173,7 +173,7 @@ SWITCH_RULES = [
{"block": "rtdd:dumplings_3", "item": None, "action": "drop_result", {"block": "rtdd:dumplings_3", "item": None, "action": "drop_result",
"dropItem": "rtdd:dumplings_4", "tip": "§a捏合成了生饺子"}, "dropItem": "rtdd:dumplings_4", "tip": "§a捏合成了生饺子"},
{"block": "rtdd:steamerdumplings_1", "item": PLATE, "action": "take_steamer", {"block": "rtdd:steamerdumplings_1", "item": PLATE, "action": "take_steamer",
"dropItem": "rtdd:plate_30", "consume": 1, "tip": "§a取出盘装水饺, 蒸笼归位"}, "dropItem": "rtdd:plate_30a", "consume": 1, "tip": "§a取出美味饺子(全份)盘装, 蒸笼归位"},
# ---- 三、包子组 ---- # ---- 三、包子组 ----
{"block": "rtdd:dumplings_0", "item": None, "target": "rtdd:baozipi", {"block": "rtdd:dumplings_0", "item": None, "target": "rtdd:baozipi",
@@ -65,6 +65,8 @@ class FeatureDispatcher(BlueFoxServerSystem):
itemUseOnAll = {} # 物品名 -> [服务...]: 同一物品可被多个服务注册(按注册顺序), 逐个 fallback itemUseOnAll = {} # 物品名 -> [服务...]: 同一物品可被多个服务注册(按注册顺序), 逐个 fallback
timerOwner = {} timerOwner = {}
timerSet = set() timerSet = set()
tryUseOwner = {} # 物品名 -> 服务: 手持"直接吃"物品(长按使用)路由
tryUseSet = set()
# ---- 拆方块掉落映射: 方块名 → 掉落对应的原版生食材 ---- # ---- 拆方块掉落映射: 方块名 → 掉落对应的原版生食材 ----
# 玩家左键破坏这些"放置的半成品/死鱼"方块时, 取消默认掉落, 改为掉对应的原版生食材 # 玩家左键破坏这些"放置的半成品/死鱼"方块时, 取消默认掉落, 改为掉对应的原版生食材
@@ -109,6 +111,16 @@ class FeatureDispatcher(BlueFoxServerSystem):
cls.timerOwner[block] = service cls.timerOwner[block] = service
cls.timerSet.add(block) cls.timerSet.add(block)
@classmethod
def registerTryUse(cls, service):
"""
手持"直接吃"服务初始化时调用:把"手持右键直接吃(不放置)"的物品注册进 try-use
路由表。ServerItemTryUseEvent(长按使用物品) 会按此表把事件路由到对应服务。
"""
for item in service.getTryUseRules():
cls.tryUseOwner[item] = service
cls.tryUseSet.add(item)
@classmethod @classmethod
def startTimerFor(cls, blockName, dim, pos, playerId=None): def startTimerFor(cls, blockName, dim, pos, playerId=None):
""" """
@@ -279,13 +291,19 @@ class FeatureDispatcher(BlueFoxServerSystem):
def OnItemTryUse(self, args): def OnItemTryUse(self, args):
""" """
玩家尝试使用物品(喝药水、吃食物等)时触发。 玩家尝试使用物品(喝药水、吃食物等)时触发。
如果该玩家刚被标记为"取消下一次物品使用"(_cancelItemUse), 1. 如果该玩家刚被标记为"取消下一次物品使用"(_cancelItemUse),
就取消这次默认行为,避免右键转换方块时误喝药水。 就取消这次默认行为,避免右键转换方块时误喝药水。
2. 否则按 tryUseOwner 路由:手持"直接吃"物品(饭团/水煮蛋/豆腐) -> 吃掉。
""" """
playerId = args.get("playerId") playerId = args.get("playerId")
print "[FD-ItemTryUse]", args.get("itemName"), "player", playerId print "[FD-ItemTryUse]", args.get("itemName"), "player", playerId
if self._cancelItemUse.pop(playerId, False): if self._cancelItemUse.pop(playerId, False):
args['cancel'] = True args['cancel'] = True
return
itemName = args.get("itemName")
service = self.tryUseOwner.get(itemName)
if service and service.handleItemTryUse(args):
args['cancel'] = True
# ============================================================================ # ============================================================================
# 主入口4:计时方块 tick → 按 timerOwner 路由到计时服务(持久化计时) # 主入口4:计时方块 tick → 按 timerOwner 路由到计时服务(持久化计时)
@@ -0,0 +1,590 @@
# -*- coding: utf-8 -*-
"""
================================================================================
【总食用】(shiyongfood) 食用规则数据
================================================================================
唯一标准: lang(zh_CN.lang) 里的汉语方块/物品名, 不理会英文 id 的含义
规范来源: tuilun/总食用转化关系.txt (2026-09-21, 用户最终稿)
【操作方式】
1. 成品方块吃(绝大多数): 先放置成方块, 再【空手右键 已放置的方块】吃一级
- 规则在 EAT_RULES: block(被吃的方块) -> target(转换成下一级, 缺省=消失)
- hunger = 回复饱食度(点, 1点=半个鸡腿); effects = 增益效果
- drop = 吃完掉落的容器(脏盘子plate_0a/木碗bowlasoup/玻璃杯fruitjuice_0/支杆b_34)
2. 手持物品直接吃(不放置, TRY_USE_RULES): 饭团/水煮蛋/豆腐
- 手持该物品右键(长按/点方块表面), 消耗1个, 回复饱食度+效果, 无容器掉落
【effects 格式】("效果英文名", 时长秒, 等级)
等级 1 = 效果I (AddEffectToEntity 的 amplifier = 等级-1; 夜视/缓降等无等级差也用1)
例: ("strength", 60, 2) = 力量II(60秒)
================================================================================
"""
import mod.server.extraServerApi as serverApi
# ============================================================================
# 一、容器/道具 id
# ============================================================================
PLATE_DIRTY = "rtdd:plate_0a" # 脏盘子
BOWL = "rtdd:bowlasoup" # 木碗
GLASS = "rtdd:fruitjuice_0" # 玻璃杯
ROD = "rtdd:b_34" # 支杆(烧烤烤鱼用)
# ============================================================================
# 二、增益效果中文名(提示用)
# ============================================================================
EFFECT_CN = {
"speed": "速度", "haste": "急迫", "strength": "力量",
"instant_health": "瞬间治疗", "regeneration": "生命恢复",
"resistance": "抗性提升", "fire_resistance": "抗火",
"water_breathing": "水下呼吸", "night_vision": "夜视",
"saturation": "饱和", "absorption": "伤害吸收",
"health_boost": "生命提升", "luck": "幸运",
"jump_boost": "跳跃提升", "slow_falling": "缓降",
"conduit_power": "潮涌能量",
}
# ============================================================================
# 三、成品方块吃(EAT_RULES)
# 字段: block(必), target(可省=消失), hunger(必), effects(可省),
# drop(可省=无容器掉落)
# ============================================================================
EAT_RULES = [
# ------------------------------------------------------------------
# 【炒锅】(xy_chaoguo)
# ------------------------------------------------------------------
# 一、黑椒牛排 全份->半份
{"block": "rtdd:plate_2", "target": "rtdd:plate_2a", "hunger": 4,
"effects": [("strength", 60, 2)]},
{"block": "rtdd:plate_2a", "hunger": 4, "drop": PLATE_DIRTY},
# 二、清炒猪排 全份->半份
{"block": "rtdd:plate_1", "target": "rtdd:plate_1a", "hunger": 4,
"effects": [("haste", 30, 2), ("speed", 20, 1)]},
{"block": "rtdd:plate_1a", "hunger": 3, "drop": PLATE_DIRTY},
# 三、清炒羊肉
{"block": "rtdd:plate_3", "hunger": 7,
"effects": [("health_boost", 45, 2), ("resistance", 60, 1),
("regeneration", 15, 1)], "drop": PLATE_DIRTY},
# 五、胡萝卜鲑鱼 全份->半份
{"block": "rtdd:plate_5", "target": "rtdd:plate_5a", "hunger": 4,
"effects": [("luck", 40, 1), ("water_breathing", 50, 1)]},
{"block": "rtdd:plate_5a", "hunger": 3, "drop": PLATE_DIRTY},
# 六、胡萝卜牛排骨
{"block": "rtdd:plate_6", "hunger": 7,
"effects": [("strength", 45, 1), ("resistance", 30, 1),
("night_vision", 60, 1)], "drop": PLATE_DIRTY},
# 七、黑椒牛腿
{"block": "rtdd:plate_7", "hunger": 8,
"effects": [("strength", 45, 1), ("speed", 30, 2)], "drop": PLATE_DIRTY},
# 八、胡萝卜牛里脊
{"block": "rtdd:plate_8", "hunger": 7,
"effects": [("strength", 45, 1), ("night_vision", 60, 1)],
"drop": PLATE_DIRTY},
# 九、胡萝卜羊腿 全份->半份
{"block": "rtdd:plate_9", "target": "rtdd:plate_9a", "hunger": 4,
"effects": [("jump_boost", 50, 2), ("absorption", 15, 2)]},
{"block": "rtdd:plate_9a", "hunger": 3, "drop": PLATE_DIRTY},
# 十、胡萝卜炒羊里脊 全份->半份
{"block": "rtdd:plate_10", "target": "rtdd:plate_10a", "hunger": 4,
"effects": [("health_boost", 60, 4), ("regeneration", 20, 2)]},
{"block": "rtdd:plate_10a", "hunger": 3, "drop": PLATE_DIRTY},
# 十一、胡萝卜炒羊排
{"block": "rtdd:plate_11", "hunger": 6,
"effects": [("health_boost", 45, 2), ("regeneration", 15, 1),
("night_vision", 40, 1)], "drop": PLATE_DIRTY},
# 十二、小炒五花肉 全份->半份
{"block": "rtdd:plate_12", "target": "rtdd:plate_12a", "hunger": 3,
"effects": [("speed", 45, 1), ("haste", 45, 1), ("strength", 45, 1)]},
{"block": "rtdd:plate_12a", "hunger": 3, "drop": PLATE_DIRTY},
# 十三、胡萝卜炒猪排骨 全份->半份
{"block": "rtdd:plate_13", "target": "rtdd:plate_13a", "hunger": 4,
"effects": [("strength", 45, 1), ("jump_boost", 50, 1),
("absorption", 30, 2)]},
{"block": "rtdd:plate_13a", "hunger": 3, "drop": PLATE_DIRTY},
# 十四、炒土豆
{"block": "rtdd:plate_14", "hunger": 4,
"effects": [("saturation", 15, 1), ("regeneration", 30, 1)],
"drop": PLATE_DIRTY},
# 十五、胡萝卜炒鳕鱼
{"block": "rtdd:plate_15", "hunger": 6,
"effects": [("luck", 60, 1), ("water_breathing", 60, 1)],
"drop": PLATE_DIRTY},
# 十六、辣炒兔肉 全份->半份
{"block": "rtdd:plate_19", "target": "rtdd:plate_19a", "hunger": 4,
"effects": [("fire_resistance", 60, 1), ("resistance", 20, 1),
("jump_boost", 50, 2)]},
{"block": "rtdd:plate_19a", "hunger": 3, "drop": PLATE_DIRTY},
# 十七、元气煎蛋
{"block": "rtdd:plate_22", "hunger": 4,
"effects": [("regeneration", 30, 1), ("luck", 30, 2)],
"drop": PLATE_DIRTY},
# 十八、炒时蔬
{"block": "rtdd:plate_23", "hunger": 4,
"effects": [("speed", 30, 1), ("regeneration", 30, 1)],
"drop": PLATE_DIRTY},
# 十九、炒碎肉
{"block": "rtdd:plate_24", "hunger": 5,
"effects": [("strength", 30, 1), ("absorption", 30, 2)],
"drop": PLATE_DIRTY},
# 二十、煎鲑鱼
{"block": "rtdd:plate_25", "hunger": 6,
"effects": [("luck", 40, 1), ("water_breathing", 40, 1)],
"drop": PLATE_DIRTY},
# 二十一、炒鱿鱼 全份->三分之二->三分之一
{"block": "rtdd:plate_26", "target": "rtdd:plate_26a", "hunger": 4,
"effects": [("conduit_power", 30, 2), ("water_breathing", 60, 1),
("night_vision", 30, 1), ("resistance", 50, 1)]},
{"block": "rtdd:plate_26a", "target": "rtdd:plate_26b", "hunger": 4},
{"block": "rtdd:plate_26b", "hunger": 2, "drop": PLATE_DIRTY},
# 二十二、炒鱿鱼须 全份->半份
{"block": "rtdd:plate_26d", "target": "rtdd:plate_26c", "hunger": 2,
"effects": [("speed", 30, 1), ("water_breathing", 30, 1)]},
{"block": "rtdd:plate_26c", "hunger": 2, "drop": PLATE_DIRTY},
# 二十三、小炒鸡肉 全份->半份
{"block": "rtdd:plate_31", "target": "rtdd:plate_31a", "hunger": 4,
"effects": [("saturation", 30, 1), ("speed", 60, 2), ("haste", 30, 1)]},
{"block": "rtdd:plate_31a", "hunger": 3, "drop": PLATE_DIRTY},
# 二十四、麻婆豆腐 全份->半份
{"block": "rtdd:plate_32", "target": "rtdd:plate_32a", "hunger": 4,
"effects": [("fire_resistance", 45, 1), ("regeneration", 20, 2),
("health_boost", 60, 3)]},
{"block": "rtdd:plate_32a", "hunger": 3, "drop": PLATE_DIRTY},
# 二十五、炒蟹 全份->半份
{"block": "rtdd:plate_33", "target": "rtdd:plate_33a", "hunger": 2,
"effects": [("luck", 60, 1)]},
{"block": "rtdd:plate_33a", "hunger": 3, "drop": PLATE_DIRTY},
# 二十六、辣炒鲑鱼
{"block": "rtdd:plate_41", "hunger": 6,
"effects": [("fire_resistance", 30, 1), ("resistance", 20, 1),
("speed", 50, 1)], "drop": PLATE_DIRTY},
# 二十七、牛肉意面 全份->半份
{"block": "rtdd:plate_43", "target": "rtdd:plate_43a", "hunger": 3,
"effects": [("saturation", 30, 1), ("strength", 30, 2),
("regeneration", 30, 1)]},
{"block": "rtdd:plate_43a", "hunger": 4, "drop": PLATE_DIRTY},
# 二十八、香菇意面 全份->半份
{"block": "rtdd:plate_44", "target": "rtdd:plate_44a", "hunger": 2,
"effects": [("saturation", 45, 1), ("jump_boost", 30, 1),
("haste", 30, 1)]},
{"block": "rtdd:plate_44a", "hunger": 3, "drop": PLATE_DIRTY},
# 二十九、胡萝卜意面 全份->半份
{"block": "rtdd:plate_45", "target": "rtdd:plate_45a", "hunger": 2,
"effects": [("saturation", 25, 1), ("night_vision", 30, 1),
("absorption", 40, 2)]},
{"block": "rtdd:plate_45a", "hunger": 3, "drop": PLATE_DIRTY},
# 三十、鸡肉番茄意面 全份->半份
{"block": "rtdd:plate_46", "target": "rtdd:plate_46a", "hunger": 4,
"effects": [("health_boost", 40, 3), ("regeneration", 15, 1),
("resistance", 20, 1)]},
{"block": "rtdd:plate_46a", "hunger": 3, "drop": PLATE_DIRTY},
# 三十一、辣子鸡丁
{"block": "rtdd:plate_47", "hunger": 6,
"effects": [("fire_resistance", 45, 1), ("strength", 45, 1),
("speed", 30, 1)], "drop": PLATE_DIRTY},
# 三十二、辣椒炒牛肉
{"block": "rtdd:plate_47a", "hunger": 6,
"effects": [("strength", 40, 2), ("resistance", 30, 2)],
"drop": PLATE_DIRTY},
# 三十三、土豆炒猪肉
{"block": "rtdd:plate_52", "hunger": 6,
"effects": [("saturation", 20, 1), ("absorption", 40, 3),
("regeneration", 20, 1)], "drop": PLATE_DIRTY},
# 三十四、胡萝卜炒猪肉
{"block": "rtdd:plate_53", "hunger": 6,
"effects": [("absorption", 40, 3), ("regeneration", 20, 1),
("haste", 30, 1)], "drop": PLATE_DIRTY},
# 三十五、香菇滑鸡
{"block": "rtdd:plate_54", "hunger": 5,
"effects": [("speed", 50, 2), ("jump_boost", 30, 2),
("slow_falling", 90, 1)], "drop": PLATE_DIRTY},
# 三十六、蛋炒饭(碗装)
{"block": "rtdd:bowlofriceegg", "hunger": 7,
"effects": [("luck", 60, 2), ("saturation", 30, 1)], "drop": BOWL},
# 三十七、葱油饼
{"block": "rtdd:scallion_pancake_0", "hunger": 4,
"effects": [("absorption", 35, 2), ("slow_falling", 30, 1)]},
# 三十八、酱香饼
{"block": "rtdd:cookedpancake", "hunger": 5,
"effects": [("saturation", 30, 1), ("resistance", 30, 1)]},
# 盖饭
{"block": "rtdd:plate_48", "target": "rtdd:plate_48a", "hunger": 5,
"effects": [("regeneration", 20, 2), ("health_boost", 60, 4)]},
{"block": "rtdd:plate_48a", "hunger": 4, "drop": PLATE_DIRTY},
{"block": "rtdd:plate_55", "target": "rtdd:plate_55a", "hunger": 5,
"effects": [("jump_boost", 30, 2), ("strength", 60, 1),
("slow_falling", 90, 1)]},
{"block": "rtdd:plate_55a", "hunger": 4, "drop": PLATE_DIRTY},
{"block": "rtdd:plate_56", "hunger": 7,
"effects": [("saturation", 30, 1), ("absorption", 90, 2),
("resistance", 60, 1)], "drop": PLATE_DIRTY},
{"block": "rtdd:plate_50", "hunger": 7,
"effects": [("saturation", 30, 1), ("luck", 90, 1),
("night_vision", 60, 1)], "drop": PLATE_DIRTY},
# ------------------------------------------------------------------
# 【油锅】(xy_youguo)
# ------------------------------------------------------------------
{"block": "rtdd:plate_38", "hunger": 5,
"effects": [("regeneration", 30, 1), ("jump_boost", 30, 1)],
"drop": PLATE_DIRTY},
{"block": "rtdd:plate_36", "hunger": 7,
"effects": [("strength", 45, 1), ("resistance", 45, 1),
("fire_resistance", 45, 1)], "drop": PLATE_DIRTY},
{"block": "rtdd:plate_37", "hunger": 4,
"effects": [("speed", 30, 1), ("absorption", 30, 1)],
"drop": PLATE_DIRTY},
{"block": "rtdd:plate_39", "hunger": 5,
"effects": [("luck", 45, 2), ("conduit_power", 60, 1)],
"drop": PLATE_DIRTY},
# 天妇罗炸虾 整份->半份
{"block": "rtdd:plate_49", "target": "rtdd:plate_49a", "hunger": 3,
"effects": [("speed", 45, 1), ("night_vision", 60, 1),
("resistance", 45, 1)]},
{"block": "rtdd:plate_49a", "hunger": 3, "drop": PLATE_DIRTY},
# 炸饺子
{"block": "rtdd:plate_51", "hunger": 5,
"effects": [("absorption", 60, 2), ("regeneration", 20, 1)],
"drop": PLATE_DIRTY},
# ------------------------------------------------------------------
# 【汤锅】(xy_tangguo)
# ------------------------------------------------------------------
# 一、碗装汤品(单次吃完, 掉木碗)
{"block": "rtdd:bowlacarrotbeefsoup", "hunger": 6, "drop": BOWL,
"effects": [("strength", 45, 1), ("regeneration", 45, 1),
("fire_resistance", 45, 1), ("night_vision", 45, 1)]},
{"block": "rtdd:brownlambsoupwithturnipssoup", "hunger": 6, "drop": BOWL,
"effects": [("resistance", 45, 2), ("night_vision", 45, 1)]},
{"block": "rtdd:bowlacarrotribs", "hunger": 6, "drop": BOWL,
"effects": [("night_vision", 45, 1), ("speed", 45, 1),
("strength", 45, 1)]},
{"block": "rtdd:bowlavegetablebeefsoup", "hunger": 6, "drop": BOWL,
"effects": [("regeneration", 30, 1), ("resistance", 30, 1),
("absorption", 60, 2)]},
{"block": "rtdd:bowlavegetablelambsoup", "hunger": 5, "drop": BOWL,
"effects": [("strength", 45, 1), ("regeneration", 20, 1),
("absorption", 60, 2)]},
{"block": "rtdd:bowlavegetableleanbroth", "hunger": 5, "drop": BOWL,
"effects": [("haste", 45, 1), ("health_boost", 45, 2),
("regeneration", 20, 1)]},
{"block": "rtdd:bowlavegetablesstew", "hunger": 6, "drop": BOWL,
"effects": [("saturation", 30, 1), ("speed", 45, 1)]},
{"block": "rtdd:bowlabeefbonebroth", "hunger": 7, "drop": BOWL,
"effects": [("strength", 45, 2), ("night_vision", 45, 1),
("speed", 45, 1), ("slow_falling", 45, 1)]},
{"block": "rtdd:bowlalambstew", "hunger": 7, "drop": BOWL,
"effects": [("regeneration", 45, 1), ("absorption", 60, 3),
("resistance", 45, 1)]},
{"block": "rtdd:bowla_lambchopsoup", "hunger": 7, "drop": BOWL,
"effects": [("absorption", 60, 3), ("regeneration", 10, 1),
("resistance", 45, 2)]},
{"block": "rtdd:bowlacarrotcodsoup", "hunger": 6, "drop": BOWL,
"effects": [("luck", 45, 2), ("jump_boost", 45, 1)]},
{"block": "rtdd:browncarrotfishsoupsoup", "hunger": 6, "drop": BOWL,
"effects": [("luck", 45, 2), ("speed", 45, 1)]},
{"block": "rtdd:bowlaeggcodsoup", "hunger": 5, "drop": BOWL,
"effects": [("regeneration", 30, 1), ("luck", 45, 1),
("health_boost", 45, 2)]},
{"block": "rtdd:brown_norieggsoup", "hunger": 5, "drop": BOWL,
"effects": [("strength", 30, 1), ("absorption", 60, 2)]},
{"block": "rtdd:bowlatufufish", "hunger": 5, "drop": BOWL,
"effects": [("luck", 45, 1), ("water_breathing", 60, 1),
("night_vision", 60, 1)]},
{"block": "rtdd:bowlofmushroomsoup", "hunger": 7, "drop": BOWL,
"effects": [("speed", 45, 1), ("regeneration", 60, 1),
("fire_resistance", 45, 1), ("jump_boost", 45, 1)]},
{"block": "rtdd:brownpigfootsoup", "hunger": 6, "drop": BOWL,
"effects": [("strength", 45, 1), ("resistance", 30, 1),
("speed", 45, 1), ("haste", 45, 2)]},
{"block": "rtdd:bowla_roujiamo", "hunger": 7, "drop": BOWL,
"effects": [("saturation", 45, 1), ("resistance", 45, 1)]},
{"block": "rtdd:dumplingssoup", "hunger": 6, "drop": BOWL,
"effects": [("saturation", 30, 1), ("absorption", 60, 2),
("regeneration", 20, 1)]},
{"block": "rtdd:brownvegetablefishsoup", "hunger": 5, "drop": BOWL,
"effects": [("luck", 45, 1), ("water_breathing", 120, 1)]},
# 二、美味饺子 全份->半份(盘装, 掉脏盘子)
{"block": "rtdd:plate_30a", "target": "rtdd:plate_30", "hunger": 4,
"effects": [("saturation", 45, 1), ("absorption", 60, 3),
("regeneration", 20, 2)]},
{"block": "rtdd:plate_30", "hunger": 3, "drop": PLATE_DIRTY},
# 三、熟面条(碗装)
{"block": "rtdd:noodle_soup", "hunger": 4, "drop": BOWL,
"effects": [("saturation", 15, 1)]},
# 四、熟米饭(碗装, 三形态)
{"block": "rtdd:bowlofrice", "hunger": 4, "drop": BOWL,
"effects": [("saturation", 30, 1)]},
{"block": "rtdd:bowlofrice_2", "hunger": 4, "drop": BOWL,
"effects": [("saturation", 30, 1)]},
{"block": "rtdd:bowlofrice_3", "hunger": 4, "drop": BOWL,
"effects": [("saturation", 30, 1)]},
# 八、汤面(碗装, 单次吃完, 掉木碗)
{"block": "rtdd:noodlesoup_1", "hunger": 7, "drop": BOWL,
"effects": [("health_boost", 45, 2), ("regeneration", 10, 1)]},
{"block": "rtdd:noodlesoup_2", "hunger": 7, "drop": BOWL,
"effects": [("health_boost", 45, 2), ("regeneration", 10, 1)]},
{"block": "rtdd:noodlesoup_3", "hunger": 8, "drop": BOWL,
"effects": [("strength", 60, 2)]},
{"block": "rtdd:noodlesoup_4", "hunger": 7, "drop": BOWL,
"effects": [("regeneration", 60, 1), ("jump_boost", 60, 1)]},
{"block": "rtdd:assortedramen", "hunger": 6, "drop": BOWL,
"effects": [("saturation", 30, 1), ("night_vision", 30, 1)]},
{"block": "rtdd:braisednoodles", "hunger": 7, "drop": BOWL,
"effects": [("strength", 45, 1), ("night_vision", 60, 1)]},
{"block": "rtdd:mushroomnoodles", "hunger": 6, "drop": BOWL,
"effects": [("regeneration", 30, 1), ("haste", 30, 1),
("slow_falling", 30, 1)]},
{"block": "rtdd:yushengramen", "hunger": 6, "drop": BOWL,
"effects": [("luck", 45, 1), ("resistance", 30, 1),
("regeneration", 30, 1)]},
{"block": "rtdd:vegetable_noodles", "hunger": 5, "drop": BOWL,
"effects": [("saturation", 30, 1), ("resistance", 30, 1)]},
{"block": "rtdd:noodles_1", "hunger": 5, "drop": BOWL,
"effects": [("regeneration", 30, 1)]},
{"block": "rtdd:noodles_2", "hunger": 5, "drop": BOWL,
"effects": [("speed", 30, 1)]},
{"block": "rtdd:egg_noodles", "hunger": 6, "drop": BOWL,
"effects": [("health_boost", 30, 1)]},
{"block": "rtdd:tonkotsu_ramen", "hunger": 9, "drop": BOWL,
"effects": [("health_boost", 120, 4), ("regeneration", 30, 2),
("speed", 30, 1)]},
# ------------------------------------------------------------------
# 【面食.甜食】(xy_mianshi)
# ------------------------------------------------------------------
# 熟肉包子 分食链: 整->半个->1/4个->消失
{"block": "rtdd:shouroubao", "target": "rtdd:shoubaozi_2", "hunger": 1,
"effects": [("regeneration", 30, 1)]},
{"block": "rtdd:shoubaozi_2", "target": "rtdd:shoubaozi_3", "hunger": 1},
{"block": "rtdd:shoubaozi_3", "hunger": 1},
# 肉夹馍
{"block": "rtdd:roujiamo_2", "hunger": 6,
"effects": [("strength", 45, 1), ("absorption", 45, 2)]},
# 煎饼卷牛肉
{"block": "rtdd:cookeddought_6", "hunger": 6,
"effects": [("strength", 45, 1), ("absorption", 45, 2)]},
# 煎饼卷鳕鱼
{"block": "rtdd:cookedcoddought_6", "hunger": 6,
"effects": [("luck", 45, 1), ("strength", 45, 1)]},
# 熟竹筒饭
{"block": "rtdd:bamboo_5", "hunger": 4,
"effects": [("saturation", 45, 1), ("resistance", 45, 2)]},
# 法棍(一份)/吐司(一份)/可颂(一份)
{"block": "rtdd:bread_1", "hunger": 3,
"effects": [("strength", 45, 1), ("speed", 45, 1),
("jump_boost", 45, 1)]},
{"block": "rtdd:bread_2", "hunger": 3,
"effects": [("strength", 45, 1), ("speed", 45, 1),
("jump_boost", 45, 1)]},
{"block": "rtdd:bread_3", "hunger": 3,
"effects": [("strength", 45, 1), ("speed", 45, 1),
("jump_boost", 45, 1)]},
# 甜甜圈(一份)
{"block": "rtdd:bread_4", "hunger": 3,
"effects": [("speed", 45, 1), ("resistance", 45, 1)]},
# 蛋糕小块(蜂蜜cake_1d/浆果cake_2d/巧克力cake_3d) + 奶油蛋糕整块(cake_0)
{"block": "rtdd:cake_0", "hunger": 3,
"effects": [("saturation", 45, 1), ("haste", 45, 1),
("absorption", 45, 1)]},
{"block": "rtdd:cake_1d", "hunger": 3,
"effects": [("saturation", 45, 1), ("haste", 45, 1),
("absorption", 45, 1)]},
{"block": "rtdd:cake_2d", "hunger": 3,
"effects": [("saturation", 45, 1), ("haste", 45, 1),
("absorption", 45, 1)]},
{"block": "rtdd:cake_3d", "hunger": 3,
"effects": [("saturation", 45, 1), ("haste", 45, 1),
("absorption", 45, 1)]},
# 焦糖布丁
{"block": "rtdd:cream_caramel", "hunger": 4,
"effects": [("saturation", 30, 1), ("luck", 30, 1)]},
# 舒芙蕾
{"block": "rtdd:souffle_0", "hunger": 4,
"effects": [("saturation", 30, 1), ("health_boost", 30, 1),
("luck", 30, 1)]},
# 馍
{"block": "rtdd:roujiamo_0", "hunger": 2},
# 煎饼
{"block": "rtdd:cooked_dought", "hunger": 4,
"effects": [("regeneration", 10, 1)]},
# ------------------------------------------------------------------
# 【寿司】(xy_sushi)
# ------------------------------------------------------------------
# 鳕鱼寿司块 三->两->一->空
{"block": "rtdd:codsushi_6", "target": "rtdd:codsushicubes_2", "hunger": 2,
"effects": [("luck", 30, 1), ("haste", 30, 1)]},
{"block": "rtdd:codsushicubes_2", "target": "rtdd:codsushicubes_1",
"hunger": 2, "effects": [("luck", 30, 1), ("haste", 30, 1)]},
{"block": "rtdd:codsushicubes_1", "hunger": 2,
"effects": [("luck", 30, 1), ("haste", 30, 1)]},
# 鲑鱼寿司块
{"block": "rtdd:salmonsushi_6", "target": "rtdd:salmonsushicubes_2",
"hunger": 2, "effects": [("luck", 120, 1), ("haste", 60, 1)]},
{"block": "rtdd:salmonsushicubes_2", "target": "rtdd:salmonsushicubes_1",
"hunger": 2, "effects": [("luck", 120, 1), ("haste", 60, 1)]},
{"block": "rtdd:salmonsushicubes_1", "hunger": 2,
"effects": [("luck", 120, 1), ("haste", 60, 1)]},
# 热带鱼寿司块
{"block": "rtdd:fishmonsushi_6", "target": "rtdd:fishsushicubes_2",
"hunger": 2, "effects": [("luck", 120, 1), ("haste", 60, 1)]},
{"block": "rtdd:fishsushicubes_2", "target": "rtdd:fishsushicubes_1",
"hunger": 2, "effects": [("luck", 120, 1), ("haste", 60, 1)]},
{"block": "rtdd:fishsushicubes_1", "hunger": 2,
"effects": [("luck", 120, 1), ("haste", 60, 1)]},
# 手握鳕鱼寿司
{"block": "rtdd:nigirisushicod_3", "target": "rtdd:nigirisushicod_2",
"hunger": 2, "effects": [("health_boost", 30, 1),
("regeneration", 10, 1)]},
{"block": "rtdd:nigirisushicod_2", "target": "rtdd:nigirisushifishcod",
"hunger": 2, "effects": [("health_boost", 30, 1),
("regeneration", 10, 1)]},
{"block": "rtdd:nigirisushifishcod", "hunger": 2,
"effects": [("health_boost", 30, 1), ("regeneration", 10, 1)]},
# 手握鲑鱼寿司
{"block": "rtdd:nigirisushisalnom_3", "target": "rtdd:nigirisushisalnom_2",
"hunger": 2, "effects": [("health_boost", 30, 1),
("regeneration", 10, 1)]},
{"block": "rtdd:nigirisushisalnom_2", "target": "rtdd:nigirisushifishsalmon_1",
"hunger": 2, "effects": [("health_boost", 30, 1),
("regeneration", 10, 1)]},
{"block": "rtdd:nigirisushifishsalmon_1", "hunger": 2,
"effects": [("health_boost", 30, 1), ("regeneration", 10, 1)]},
# 手握热带鱼寿司
{"block": "rtdd:nigirisushifish_3", "target": "rtdd:nigirisushifish_2",
"hunger": 2, "effects": [("health_boost", 30, 1),
("regeneration", 10, 1)]},
{"block": "rtdd:nigirisushifish_2", "target": "rtdd:nigirisushifish_1",
"hunger": 2, "effects": [("health_boost", 30, 1),
("regeneration", 10, 1)]},
{"block": "rtdd:nigirisushifish_1", "hunger": 2,
"effects": [("health_boost", 30, 1), ("regeneration", 10, 1)]},
# 手握鱿鱼寿司
{"block": "rtdd:squidsushi_3", "target": "rtdd:squidsushi_2", "hunger": 2,
"effects": [("health_boost", 30, 1), ("regeneration", 10, 1)]},
{"block": "rtdd:squidsushi_2", "target": "rtdd:squid_sushi", "hunger": 2,
"effects": [("health_boost", 30, 1), ("regeneration", 10, 1)]},
{"block": "rtdd:squid_sushi", "hunger": 2,
"effects": [("health_boost", 30, 1), ("regeneration", 10, 1)]},
# 盘装寿司(单次吃完, 掉脏盘子)
{"block": "rtdd:plate_27", "hunger": 8, "drop": PLATE_DIRTY,
"effects": [("luck", 60, 2), ("health_boost", 60, 3),
("regeneration", 20, 2), ("strength", 60, 1)]},
{"block": "rtdd:plate_28", "hunger": 8, "drop": PLATE_DIRTY,
"effects": [("luck", 60, 2), ("health_boost", 60, 3),
("regeneration", 20, 2), ("strength", 60, 1)]},
{"block": "rtdd:plate_29", "hunger": 8, "drop": PLATE_DIRTY,
"effects": [("luck", 60, 2), ("health_boost", 60, 3),
("regeneration", 20, 2), ("strength", 60, 1)]},
{"block": "rtdd:plate_42", "hunger": 8, "drop": PLATE_DIRTY,
"effects": [("luck", 60, 2), ("health_boost", 60, 3),
("regeneration", 20, 2), ("strength", 60, 1)]},
# ------------------------------------------------------------------
# 【烧烤】(xy_shaokao)
# ------------------------------------------------------------------
# 烤鸡 分食链(无容器)
{"block": "rtdd:roast_chickenplace_1", "target": "rtdd:roast_chickenplace_2",
"hunger": 3, "effects": [("health_boost", 30, 3),
("regeneration", 30, 1)]},
{"block": "rtdd:roast_chickenplace_2", "target": "rtdd:roast_chickenplace_3",
"hunger": 3},
{"block": "rtdd:roast_chickenplace_3", "target": "rtdd:roast_chickenplace_4",
"hunger": 3},
{"block": "rtdd:roast_chickenplace_4", "hunger": 3,
"effects": [("speed", 60, 1)]},
# 烤乳猪 分食链(无容器)
{"block": "rtdd:roastpignew_1", "target": "rtdd:roastpignew_2", "hunger": 4,
"effects": [("health_boost", 30, 3), ("regeneration", 30, 1),
("strength", 30, 1)]},
{"block": "rtdd:roastpignew_2", "target": "rtdd:roastpignew_3", "hunger": 4},
{"block": "rtdd:roastpignew_3", "target": "rtdd:roastpignew_4", "hunger": 4},
{"block": "rtdd:roastpignew_4", "target": "rtdd:roastpignew_5", "hunger": 4},
{"block": "rtdd:roastpignew_5", "target": "rtdd:roastpignew_6", "hunger": 4},
{"block": "rtdd:roastpignew_6", "hunger": 4,
"effects": [("strength", 60, 2)]},
# 烤鳕鱼(熟)/烤鲑鱼(熟): 吃完掉支杆
{"block": "rtdd:grilledcod_1", "hunger": 5, "drop": ROD,
"effects": [("luck", 40, 1)]},
{"block": "rtdd:grilled_salmon", "hunger": 5, "drop": ROD,
"effects": [("luck", 40, 1)]},
# 烤串(熟, 无容器)
{"block": "rtdd:beefkebabs_3", "hunger": 5,
"effects": [("strength", 30, 1)]},
{"block": "rtdd:lambkebabs_3", "hunger": 5,
"effects": [("strength", 30, 1)]},
{"block": "rtdd:roasted_vegetables_3", "hunger": 4,
"effects": [("saturation", 15, 1)]},
{"block": "rtdd:roastedmushrooms_3", "hunger": 4,
"effects": [("regeneration", 15, 1)]},
# ------------------------------------------------------------------
# 【乡野食物】(xy_food)
# ------------------------------------------------------------------
# 章鱼小丸子 完整->半份
{"block": "rtdd:plate_40", "target": "rtdd:plate_40a", "hunger": 4,
"effects": [("regeneration", 60, 1), ("resistance", 60, 1)]},
{"block": "rtdd:plate_40a", "hunger": 2, "drop": PLATE_DIRTY},
# 原版食物-成品盘(单次吃完, 掉脏盘子)
{"block": "rtdd:plate_16", "hunger": 5, "drop": PLATE_DIRTY},
{"block": "rtdd:plate_17", "hunger": 4, "drop": PLATE_DIRTY},
{"block": "rtdd:plate_18", "hunger": 3, "drop": PLATE_DIRTY},
{"block": "rtdd:plate_20", "hunger": 5, "drop": PLATE_DIRTY},
{"block": "rtdd:plate_21", "hunger": 3, "drop": PLATE_DIRTY},
{"block": "rtdd:plate_4", "hunger": 5, "drop": PLATE_DIRTY},
# ------------------------------------------------------------------
# 【乡野饮料】(xy_drink)
# ------------------------------------------------------------------
# 果汁/豆浆(喝完掉玻璃杯)
{"block": "rtdd:fruitjuice_1", "hunger": 2, "drop": GLASS,
"effects": [("speed", 30, 1)]},
{"block": "rtdd:fruitjuice_2", "hunger": 2, "drop": GLASS,
"effects": [("speed", 30, 1)]},
{"block": "rtdd:fruitjuice_3", "hunger": 2, "drop": GLASS,
"effects": [("regeneration", 15, 1)]},
{"block": "rtdd:fruitjuice_4", "hunger": 2, "drop": GLASS,
"effects": [("regeneration", 15, 1)]},
{"block": "rtdd:fruitjuice_6", "hunger": 2, "drop": GLASS,
"effects": [("regeneration", 15, 1)]},
{"block": "rtdd:fruitjuice_7", "hunger": 4, "drop": GLASS,
"effects": [("health_boost", 30, 1)]},
# 冰棍(无容器)
{"block": "rtdd:apple_popsicleplace", "hunger": 2,
"effects": [("speed", 15, 1)]},
{"block": "rtdd:grape_popsicleplace", "hunger": 2,
"effects": [("speed", 15, 1)]},
{"block": "rtdd:melon_popsicleplace", "hunger": 2,
"effects": [("speed", 15, 1)]},
{"block": "rtdd:orange_popsicle_place", "hunger": 2,
"effects": [("speed", 15, 1)]},
{"block": "rtdd:peach_popsicleplace", "hunger": 2,
"effects": [("speed", 15, 1)]},
# 冰沙(无容器)
{"block": "rtdd:appleicecreamplace", "hunger": 3,
"effects": [("speed", 30, 1)]},
{"block": "rtdd:grapeicecreamplace", "hunger": 3,
"effects": [("speed", 30, 1)]},
{"block": "rtdd:orangeicecreamplace", "hunger": 3,
"effects": [("speed", 30, 1)]},
{"block": "rtdd:peachicecreamplace", "hunger": 3,
"effects": [("speed", 30, 1)]},
{"block": "rtdd:melonicecreamplace", "hunger": 3,
"effects": [("speed", 30, 1)]},
]
# ============================================================================
# 四、手持物品右键直接吃(不放置)
# itemName -> {hunger, effects} 消耗1个, 无容器掉落
# ============================================================================
TRY_USE_RULES = {
"rtdd:rice_balls": {"hunger": 3, "effects": [("saturation", 15, 1)]},
"rtdd:boiled_egg": {"hunger": 2, "effects": []},
"rtdd:beancurd": {"hunger": 2, "effects": []},
}
# ============================================================================
# 五、把规则表索引为字典: block -> rule
# ============================================================================
EAT_RULE_MAP = {}
for _r in EAT_RULES:
EAT_RULE_MAP[_r["block"]] = _r
@@ -0,0 +1 @@
# -*- coding: utf-8 -*-
@@ -0,0 +1,218 @@
# -*- coding: utf-8 -*-
"""
================================================================================
【总食用】(shiyongfood) 服务 —— 所有成品的"吃"
================================================================================
【入口(由 FeatureDispatcher 统一转发)】
1. handleBlockUse 空手右键 已放置的成品方块 -> 吃一级
- 有 target: 方块转换成下一级(半份/下一份)
- 无 target: 方块完全消耗(消失) + 掉落容器(脏盘子/木碗/玻璃杯/支杆)
2. handleItemUseOn 手持 饭团/水煮蛋/豆腐 右键方块表面 -> 直接吃(消耗1个)
3. handleItemTryUse 手持 饭团/水煮蛋/豆腐 长按右键(空中使用) -> 直接吃(消耗1个)
【数值】
- 饱食度: SetPlayerHunger(0~20), 1点 = 半个鸡腿(原版饥饿值)
- 效果: AddEffectToEntity(effectName, 时长秒, amplifier)
amplifier = 等级-1 (效果I=0, 效果II=1, ...)
- 冷却: 0.4 秒(防长按右键连吃刷屏)
================================================================================
"""
import time
import mod.server.extraServerApi as serverApi
ServerSystem = serverApi.GetServerSystemCls() # 服务端系统基类
comp = serverApi.GetEngineCompFactory() # 组件工厂
from ...BlueFoxTools.SpecialFunciton.BlueFoxSystem import BlueFoxServerSystem
from ...BlueFoxTools.ToolsConfig import LevelId
from ..ShiyongfoodData import EAT_RULE_MAP, TRY_USE_RULES, EFFECT_CN
class ShiyongfoodService(BlueFoxServerSystem):
"""总食用服务: 所有成品右键吃(方块吃 + 手持物品直接吃)"""
def __init__(self, namespace, systemName):
BlueFoxServerSystem.__init__(self, namespace, systemName)
self.eatBlocks = set(EAT_RULE_MAP.keys()) # 可吃的成品方块
self.tryUseItems = set(TRY_USE_RULES.keys()) # 手持直接吃的物品
self.cooldown = {} # 右键冷却
# ---- 注册到统一分发器: 右键方块 + 手持右键表面 + 手持直接吃 ----
from ...service.FeatureDispatcher import FeatureDispatcher
FeatureDispatcher.register(self)
FeatureDispatcher.registerTryUse(self)
# ------------------------------------------------------------------
# 分发器路由表(FeatureDispatcher 调用)
# ------------------------------------------------------------------
def getFeatureBlocks(self):
"""成品方块(空手右键吃)"""
return self.eatBlocks
def getItemUseOnRules(self):
"""手持吃物品也注册进"右键方块表面"路由(点方块表面直接吃)"""
return {item: True for item in self.tryUseItems}
def getTryUseRules(self):
"""手持直接吃(长按右键/空中使用)"""
return {item: True for item in self.tryUseItems}
# ====================================================================
# 入口1: 空手右键 已放置的成品方块 -> 吃一级
# ====================================================================
def handleBlockUse(self, args):
blockName = args.get("blockName")
playerId = args.get("playerId")
x, y, z = args.get("x"), args.get("y"), args.get("z")
pos = (x, y, z)
dim = comp.CreateDimension(playerId).GetEntityDimensionId()
key = (dim, x, y, z)
# 只允许空手右键吃(手持其他物品交给别的服务/原版)
itemDict = self.getCarriedItem(playerId)
itemName = itemDict.get("newItemName") if itemDict else None
if itemName and itemName != "minecraft:air":
return False
rule = EAT_RULE_MAP.get(blockName)
if not rule:
return False
if not self.checkCooldown(key, 0.4):
return True
self._applyFood(playerId, rule.get("hunger", 0), rule.get("effects", []))
target = rule.get("target")
if target:
# 方块转换成下一级(半份/下一份)
self._replaceBlock(playerId, pos, dim, target)
else:
# 完全消耗消失 + 掉落容器
self._clearBlock(playerId, pos, dim)
drop = rule.get("drop")
if drop:
self.dropItem(dim, pos, drop)
self._notify(playerId, rule)
return True
# ====================================================================
# 入口2: 手持 饭团/水煮蛋/豆腐 右键方块表面 -> 直接吃
# ====================================================================
def handleItemUseOn(self, args):
itemName = args.get("itemName")
rule = TRY_USE_RULES.get(itemName)
if not rule:
return False
playerId = args.get("playerId") or args.get("entityId")
return self._eatItemInHand(playerId, itemName, rule)
# ====================================================================
# 入口3: 手持 饭团/水煮蛋/豆腐 长按右键(空中使用) -> 直接吃
# ====================================================================
def handleItemTryUse(self, args):
itemName = args.get("itemName")
rule = TRY_USE_RULES.get(itemName)
if not rule:
return False
playerId = args.get("playerId") or args.get("entityId")
return self._eatItemInHand(playerId, itemName, rule)
# ------------------------------------------------------------------
# 手持吃公共: 消耗1个 + 回复饱食度 + 效果(无容器掉落)
# ------------------------------------------------------------------
def _eatItemInHand(self, playerId, itemName, rule):
if not playerId:
return False
if not self.checkCooldown(("p", playerId), 0.4):
return True
itemDict = self.getCarriedItem(playerId)
if not itemDict or itemDict.get("newItemName") != itemName:
return False
count = itemDict.get("count", 1)
comp.CreateItem(playerId).SetEntityItem(
serverApi.GetMinecraftEnum().ItemPosType.CARRIED,
{"itemName": itemName,
"count": max(count - 1, 0),
"auxValue": itemDict.get("newAuxValue", 0),
"userData": itemDict.get("userData", {})})
self._applyFood(playerId, rule.get("hunger", 0), rule.get("effects", []))
self._notify(playerId, rule)
return True
# ====================================================================
# 工具: 回复饱食度 + 增益效果
# ====================================================================
def _applyFood(self, playerId, hunger, effects):
try:
# 饱食度【在现有值上累加】(不是覆盖): 当前值 + 回复值, 上限20点
attrComp = comp.CreateAttr(playerId)
cur = attrComp.GetPlayerHunger()
if cur is None:
cur = 0
newVal = max(0.0, min(float(cur) + float(hunger), 20.0))
attrComp.SetPlayerHunger(newVal)
except Exception:
pass
if effects:
try:
effectComp = comp.CreateEffect(LevelId)
for name, dur, lvl in effects:
# 效果I -> amplifier 0, 效果II -> amplifier 1 ...
effectComp.AddEffectToEntity(playerId, name, dur, lvl - 1, False)
except Exception:
pass
# ====================================================================
# 工具: 替换/清除方块
# ====================================================================
def _replaceBlock(self, creator, pos, dim, blockName):
comp.CreateBlockInfo(creator).SetBlockNew(
pos, blockDict={"name": blockName, "aux": 0},
oldBlockHandling=0, dimensionId=dim)
def _clearBlock(self, creator, pos, dim):
comp.CreateBlockInfo(creator).SetBlockNew(
pos, blockDict={"name": "minecraft:air", "aux": 0},
oldBlockHandling=0, dimensionId=dim)
# ====================================================================
# 工具: 以掉落物形式生成物品(出现在方块上方)
# ====================================================================
def dropItem(self, dim, pos, itemName, count=1, aux=0):
try:
itemDict = {"itemName": itemName, "count": count, "auxValue": aux}
self.CreateEngineItemEntity(itemDict, dim, (pos[0], pos[1] + 0.5, pos[2]))
except Exception:
pass
# ====================================================================
# 工具: 食用提示
# ====================================================================
def _notify(self, playerId, rule):
try:
hunger = rule.get("hunger", 0)
msg = "\u00a7a回复 %d 点饱食度" % hunger
effects = rule.get("effects", [])
if effects:
parts = []
for name, dur, lvl in effects:
cn = EFFECT_CN.get(name, name)
parts.append("%s%s(%d秒)" % (cn, self._roman(lvl), dur))
msg += ", 获得 " + " ".join(parts)
comp.CreateMsg(playerId).NotifyOneMessage(playerId, msg)
except Exception:
pass
@staticmethod
def _roman(lvl):
return {1: "I", 2: "II", 3: "III", 4: "IV", 5: "V"}.get(lvl, "")
# ====================================================================
# 工具: 冷却检查(0.4秒, 防长按右键连吃)
# ====================================================================
def checkCooldown(self, key, cd=0.4):
now = time.time()
last = self.cooldown.get(key, 0)
if now - last < cd:
return False
self.cooldown[key] = now
return True
@@ -0,0 +1 @@
# -*- coding: utf-8 -*-
@@ -2,7 +2,13 @@
"format_version": "1.10", "format_version": "1.10",
"minecraft:item": { "minecraft:item": {
"components": { "components": {
"minecraft:max_stack_size": 64 "minecraft:max_stack_size": 64,
"minecraft:use_animation": "eat",
"minecraft:use_duration": 1.6,
"minecraft:food": {
"nutrition": 4,
"saturation_modifier": "normal"
}
}, },
"description": { "description": {
"category": "xy_tangguo", "category": "xy_tangguo",
@@ -2,7 +2,13 @@
"format_version": "1.10", "format_version": "1.10",
"minecraft:item": { "minecraft:item": {
"components": { "components": {
"minecraft:max_stack_size": 64 "minecraft:max_stack_size": 64,
"minecraft:use_animation": "eat",
"minecraft:use_duration": 1.6,
"minecraft:food": {
"nutrition": 6,
"saturation_modifier": "normal"
}
}, },
"description": { "description": {
"category": "xy_sushi", "category": "xy_sushi",
+53 -1
View File
@@ -624,7 +624,7 @@ FurnitureData+FurnitureService 实现, 注册到 FeatureDispatcher)
二、饺子组 二、饺子组
- 饺子皮 + 猪肉馅/青菜碎 双向组合 -> 饺子皮(猪肉馅加蔬菜); 捏合 -> 面团消失, 掉落1个生饺子(物品) [已实现] - 饺子皮 + 猪肉馅/青菜碎 双向组合 -> 饺子皮(猪肉馅加蔬菜); 捏合 -> 面团消失, 掉落1个生饺子(物品) [已实现]
- 生饺子 手持右键蒸笼(消耗4个) -> 蒸笼(蒸饺子_生), 60秒 -> 熟 [已实现] - 生饺子 手持右键蒸笼(消耗4个) -> 蒸笼(蒸饺子_生), 60秒 -> 熟 [已实现]
- 手持盘子(plate_0)右键熟 -> 掉落盘装水饺(plate_30) + 蒸笼归位 [已实现] - 手持盘子(plate_0)右键熟 -> 掉落美味饺子(全份)盘装(plate_30a) + 蒸笼归位 [已实现]
三、包子组 三、包子组
- 饺子皮 空手 -> 包子皮; +猪/牛肉馅 -> 包子皮(加肉); 捏合/塑形 -> 面团消失, 掉落1个生肉包子(物品) [已实现] - 饺子皮 空手 -> 包子皮; +猪/牛肉馅 -> 包子皮(加肉); 捏合/塑形 -> 面团消失, 掉落1个生肉包子(物品) [已实现]
@@ -885,3 +885,55 @@ FurnitureData+FurnitureService 实现, 注册到 FeatureDispatcher)
手持方块物品右键炒锅类功能方块取消默认放置(全局) [已实现] 手持方块物品右键炒锅类功能方块取消默认放置(全局) [已实现]
【留后】各盘装成品/盖饭 右键吃(总食用功能后续实现)、半份/部分份变体出锅(见 全部功能没做什么.txt) 【留后】各盘装成品/盖饭 右键吃(总食用功能后续实现)、半份/部分份变体出锅(见 全部功能没做什么.txt)
########################################
【总食用】(shiyongfood) 2026-09-21
########################################
实现于 xiangyemod/shiyongfood (ShiyongfoodData + ShiyongfoodService, 注册到 FeatureDispatcher:
右键方块 blockOwner + 手持右键表面 itemUseOn + 手持直接吃 tryUse[新增路由])
规范: tuilun/总食用转化关系.txt (用户最终稿); 所有数值/效果以该txt为准
机制: 成品放置成方块后 空手右键方块 吃一级(方块转换下一级/完全消耗消失+容器掉落);
例外: 饭团/水煮蛋/豆腐 手持右键直接吃(消耗1个, 无容器)
饱食度: 在现有值上累加(当前+回复, 上限20点); 效果 AddEffectToEntity(amplifier=等级-1); 冷却0.4秒
一、炒锅成品吃 [已实现]
- 盘装菜(plate_1~54系列)全份->半份递减吃(黑椒牛排/清炒猪排/胡萝卜鲑鱼/胡萝卜羊腿/
胡萝卜炒羊里脊/小炒五花肉/胡萝卜炒猪排骨/辣炒兔肉/炒鱿鱼[三分之二/三分之一]/
炒鱿鱼须/小炒鸡肉/麻婆豆腐/炒蟹/牛肉意面/香菇意面/胡萝卜意面/鸡肉番茄意面);
无半份的整盘吃完; 吃完掉落 脏盘子(plate_0a)
- 盖饭: 辣子鸡丁盖饭(全/半份)/香菇滑鸡盖饭(全/半份)/麻婆豆腐盖饭/鳕鱼盖饭 吃完掉 脏盘子
- 蛋炒饭(bowlofriceegg)吃完掉 木碗(bowlasoup)
- 葱油饼/酱香饼 放置成方块吃, 无容器 [已实现]
二、油锅成品吃 [已实现]
- 盘装鸡块/炸猪排/炸薯条/盘装炸鱼/炸饺子 单次吃完掉 脏盘子
- 天妇罗炸虾 整份->半份递减吃(归属油锅), 半份吃完掉 脏盘子
三、汤锅成品吃 [已实现]
- 碗装汤品20种 + 熟面条 + 熟米饭(三形态) + 汤面13种 单次吃完掉 木碗
- 美味饺子(全份plate_30a->半份plate_30)递减吃, 半份吃完掉 脏盘子
四、面食.甜食吃 [已实现]
- 熟肉包子 分食链: 整->半个->1/4个->消失(每级回复1点, 整级带生命恢复I30秒)
- 肉夹馍/煎饼卷牛肉/煎饼卷鳕鱼/熟竹筒饭/馍/煎饼 放置成方块吃, 无容器
- 法棍/吐司/可颂(一份)/甜甜圈(一份) 放置成方块吃, 无容器
- 奶油蛋糕(整块, 无切分变体)/蜂蜜/浆果/巧克力蛋糕小块 放置成方块吃, 无容器
- 焦糖布丁/舒芙蕾 放置成方块吃, 无容器
五、寿司吃 [已实现]
- 鳕鱼/鲑鱼/热带鱼寿司块 + 手握(鳕鱼/鲑鱼/热带鱼/鱿鱼) 三->两->一->空 递减吃, 无容器
- 盘装寿司(plate_27/28/29/42)单次吃完掉 脏盘子
六、烧烤吃 [已实现]
- 烤鸡 整只->3/4->半只->1/4->消失; 烤乳猪 整只->5/6->4/6->3/6->2/6->1/6->消失; 无容器
- 烤鳕鱼(熟)/烤鲑鱼(熟) 吃完掉落 支杆(b_34)1个
- 熟牛肉串/熟羊肉串/熟蔬菜串/熟香菇串 单次吃完, 无容器
七、乡野食物吃 [已实现]
- 章鱼小丸子 完整->半份递减吃, 半份吃完掉 脏盘子
- 原版食物成品盘(plate_16/17/18/20/21/4) 单次吃完掉 脏盘子
八、乡野饮料 [已实现]
- 西瓜汁/橙汁/苹果汁/桃子汁/葡萄汁/豆浆 喝完掉 玻璃杯(fruitjuice_0)
- 冰棍5口味/冰沙5口味 单次吃完, 无容器
九、手持直接吃(不放置) [已实现]
- 饭团(rice_balls)/水煮蛋(boiled_egg)/豆腐(beancurd) 手持右键直接吃, 消耗1个, 无容器
(已给 饭团/水煮蛋 补 use_animation:eat + food 组件, 使其长按右键可触发食用事件;
豆腐原本就有 food 组件)
【提示/体验】每次吃有提示"回复X点饱食度, 获得 XX效果(时长)"; 右键冷却0.4秒;
所有成品方块与手持吃物品经 FeatureDispatcher 统一路由(新增 tryUse 路由表) [已实现]
+17 -5
View File
@@ -277,9 +277,21 @@ todo 需要 对油罐 进行一个 打碎 后 在右键依然是多少的使用
######################################## ########################################
【总食用】(全部吃) 2026-09-18 【总食用】(全部吃) 2026-09-21
######################################## ########################################
- 全部【吃】成品已提取并写好 全份->半份 递减链路 + 参考饱食度/增益效果, - 总食用功能已整体实现于 xiangyemod/shiyongfood (2026-09-21),
规范见新文档 tuilun/总食用转化关系.txt (数值均为草稿, 待用户修改确认后实现) 规范: tuilun/总食用转化关系.txt (用户最终稿), 详见 全部功能做了什么.txt 【总食用】节
- 未做原因: 总食用功能尚未开发, 所有吃统一留待其实现, 避免重复 - 实现方式: 成品放置成方块后 空手右键方块 吃一级(方块转换/消失+容器掉落);
(各分类的吃 见 全部功能没做什么.txt 对应分节 + 总食用转化关系.txt) 例外 饭团/水煮蛋/豆腐 手持右键直接吃(消耗1个, 无容器)
【仍未做/待确认】
一、动物养殖·粪便吃 (未做)
- 粪便(一坨/半坨/仅痕迹) 可食用: 未做, 若要做建议 回复0点, 无效果(或 中毒/饥饿 负面)
负面效果不列入增益表; 是否实现待用户确认
二、半份/部分份变体"出锅递减链路" (不再单做)
- 黑椒牛排(半份)等全部半份/部分份变体 均作为"吃"的递减链路实现(右键方块吃一级),
不再单独做出锅路径 [已按用户确认, 2026-09-21]
三、食用相关细节(可后续调整)
- 烤鸡/烤乳猪"生命提升 10点"按 生命提升III(30秒) 实现(10点≈2.5级取III, 每级+4点血)
- 原版食物成品盘(plate_16/17/18/20/21/4)按 txt 无增益效果
- 饭团/水煮蛋 已补 use_animation:eat+food 组件(长按右键可触发食用事件)
+105 -107
View File
@@ -59,107 +59,105 @@
######################################## ########################################
(成品归 chaoguo_finished, 均【吃】; 操作统一: 放置成方块后 空手右键方块) (成品归 chaoguo_finished, 均【吃】; 操作统一: 放置成方块后 空手右键方块)
【容器】盘装菜与盖饭(plate_*)吃完掉落 脏盘子(plate_0a); 蛋炒饭(碗装, bowlofriceegg) 【容器】盘装菜与盖饭(plate_*)吃完掉落 脏盘子(plate_0a); 蛋炒饭(碗装, bowlofriceegg)
吃完掉落 木碗(bowlasoup); 葱油饼/酱香饼/煎饼/馍(放置成方块吃)无容器不掉落 吃完掉落 木碗(bowlasoup); 葱油饼/酱香饼(放置成方块吃)无容器不掉落
(注: 熟鸡肉盘(plate_4)归 乡野食物·成品盘; 煎饼(cooked_dought)/馍(roujiamo_0)归 面食.甜食,
均不属炒锅, 见对应分类节)
一、黑椒牛排 (全份 plate_2 / 半份 plate_2a) 一、黑椒牛排 (全份 plate_2 / 半份 plate_2a)
步骤1:空手右键 已放置的 黑椒牛排(全份)方块(plate_2) 步骤1:空手右键 已放置的 黑椒牛排(全份)方块(plate_2)
-> 回复 8 点饱食度, 获得 力量I(60秒) -> 方块转换成 黑椒牛排(半份)(plate_2a) -> 回复 4 点饱食度, 获得 力量II(60秒) -> 方块转换成 黑椒牛排(半份)(plate_2a)
步骤2:空手右键 已放置的 黑椒牛排(半份)方块(plate_2a) 步骤2:空手右键 已放置的 黑椒牛排(半份)方块(plate_2a)
-> 回复 4 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 4 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二、清炒猪排 (全份 plate_1 / 半份 plate_1a) 二、清炒猪排 (全份 plate_1 / 半份 plate_1a)
步骤1:空手右键 已放置的 清炒猪排(全份)方块(plate_1) 步骤1:空手右键 已放置的 清炒猪排(全份)方块(plate_1)
-> 回复 7 点饱食度, 获得 力量I(45秒) -> 方块转换成 清炒猪排(半份)(plate_1a) -> 回复 4 点饱食度, 获得 急迫II(30秒)速度I(20秒) -> 方块转换成 清炒猪排(半份)(plate_1a)
步骤2:空手右键 已放置的 清炒猪排(半份)方块(plate_1a) 步骤2:空手右键 已放置的 清炒猪排(半份)方块(plate_1a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
三、清炒羊肉 (plate_3, 无半份) 三、清炒羊肉 (plate_3, 无半份)
步骤1:空手右键 已放置的 清炒羊肉 方块(plate_3) 步骤1:空手右键 已放置的 清炒羊肉 方块(plate_3)
-> 回复 7 点饱食度, 获得 生命提升I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 7 点饱食度, 获得 生命提升II(45秒)抗性提升I(60秒)生命恢复I(15秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
四、熟鸡肉盘 (plate_4, 无半份)
步骤1:空手右键 已放置的 熟鸡肉盘 方块(plate_4)
-> 回复 5 点饱食度, 获得 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
五、胡萝卜鲑鱼 (全份 plate_5 / 半份 plate_5a) 五、胡萝卜鲑鱼 (全份 plate_5 / 半份 plate_5a)
步骤1:空手右键 已放置的 胡萝卜鲑鱼(全份)方块(plate_5) 步骤1:空手右键 已放置的 胡萝卜鲑鱼(全份)方块(plate_5)
-> 回复 7 点饱食度, 获得 幸运I(60秒) -> 方块转换成 胡萝卜鲑鱼(半份)(plate_5a) -> 回复 4 点饱食度, 获得 幸运I(40秒)水下呼吸I(50秒) -> 方块转换成 胡萝卜鲑鱼(半份)(plate_5a)
步骤2:空手右键 已放置的 胡萝卜鲑鱼(半份)方块(plate_5a) 步骤2:空手右键 已放置的 胡萝卜鲑鱼(半份)方块(plate_5a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
六、胡萝卜牛排骨 (plate_6, 无半份) 六、胡萝卜牛排骨 (plate_6, 无半份)
步骤1:空手右键 已放置的 胡萝卜牛排骨 方块(plate_6) 步骤1:空手右键 已放置的 胡萝卜牛排骨 方块(plate_6)
-> 回复 8 点饱食度, 获得 力量I(60秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 7 点饱食度, 获得 力量I(45秒) 抗性提升I(30秒)夜视(60秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
七、黑椒牛腿 (plate_7, 无半份) 七、黑椒牛腿 (plate_7, 无半份)
步骤1:空手右键 已放置的 黑椒牛腿 方块(plate_7) 步骤1:空手右键 已放置的 黑椒牛腿 方块(plate_7)
-> 回复 8 点饱食度, 获得 力量I(60秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 8 点饱食度, 获得 力量I(45秒)速度II(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
八、胡萝卜牛里脊 (plate_8, 无半份) 八、胡萝卜牛里脊 (plate_8, 无半份)
步骤1:空手右键 已放置的 胡萝卜牛里脊 方块(plate_8) 步骤1:空手右键 已放置的 胡萝卜牛里脊 方块(plate_8)
-> 回复 7 点饱食度, 获得 力量I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 7 点饱食度, 获得 力量I(45秒)夜视(60秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
九、胡萝卜羊腿 (全份 plate_9 / 半份 plate_9a) 九、胡萝卜羊腿 (全份 plate_9 / 半份 plate_9a)
步骤1:空手右键 已放置的 胡萝卜羊腿(全份)方块(plate_9) 步骤1:空手右键 已放置的 胡萝卜羊腿(全份)方块(plate_9)
-> 回复 7 点饱食度, 获得 生命提升I(60秒) -> 方块转换成 胡萝卜羊腿(半份)(plate_9a) -> 回复 4 点饱食度, 获得 跳跃提升II(50秒)伤害吸收II(15秒) -> 方块转换成 胡萝卜羊腿(半份)(plate_9a)
步骤2:空手右键 已放置的 胡萝卜羊腿(半份)方块(plate_9a) 步骤2:空手右键 已放置的 胡萝卜羊腿(半份)方块(plate_9a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十、胡萝卜炒羊里脊 (全份 plate_10 / 半份 plate_10a) 十、胡萝卜炒羊里脊 (全份 plate_10 / 半份 plate_10a)
步骤1:空手右键 已放置的 胡萝卜炒羊里脊(全份)方块(plate_10) 步骤1:空手右键 已放置的 胡萝卜炒羊里脊(全份)方块(plate_10)
-> 回复 6 点饱食度, 获得 生命提升I(45秒) -> 方块转换成 胡萝卜炒羊里脊(半份)(plate_10a) -> 回复 4 点饱食度, 获得 生命提升IV(60秒)生命恢复II(20秒) -> 方块转换成 胡萝卜炒羊里脊(半份)(plate_10a)
步骤2:空手右键 已放置的 胡萝卜炒羊里脊(半份)方块(plate_10a) 步骤2:空手右键 已放置的 胡萝卜炒羊里脊(半份)方块(plate_10a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十一、胡萝卜炒羊排 (plate_11, 无半份) 十一、胡萝卜炒羊排 (plate_11, 无半份)
步骤1:空手右键 已放置的 胡萝卜炒羊排 方块(plate_11) 步骤1:空手右键 已放置的 胡萝卜炒羊排 方块(plate_11)
-> 回复 6 点饱食度, 获得 生命提升I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 6 点饱食度, 获得 生命提升II(45秒)生命恢复I(15秒)夜视(40秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十二、小炒五花肉 (全份 plate_12 / 半份 plate_12a) 十二、小炒五花肉 (全份 plate_12 / 半份 plate_12a)
步骤1:空手右键 已放置的 小炒五花肉(全份)方块(plate_12) 步骤1:空手右键 已放置的 小炒五花肉(全份)方块(plate_12)
-> 回复 6 点饱食度, 获得 速度I(45秒) -> 方块转换成 小炒五花肉(半份)(plate_12a) -> 回复 3 点饱食度, 获得 速度I(45秒)急迫I(45秒)力量I(45秒) -> 方块转换成 小炒五花肉(半份)(plate_12a)
步骤2:空手右键 已放置的 小炒五花肉(半份)方块(plate_12a) 步骤2:空手右键 已放置的 小炒五花肉(半份)方块(plate_12a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十三、胡萝卜炒猪排骨 (全份 plate_13 / 半份 plate_13a) 十三、胡萝卜炒猪排骨 (全份 plate_13 / 半份 plate_13a)
步骤1:空手右键 已放置的 胡萝卜炒猪排骨(全份)方块(plate_13) 步骤1:空手右键 已放置的 胡萝卜炒猪排骨(全份)方块(plate_13)
-> 回复 7 点饱食度, 获得 力量I(45秒) -> 方块转换成 胡萝卜炒猪排骨(半份)(plate_13a) -> 回复 4 点饱食度, 获得 力量I(45秒) 跳跃提升I(50秒)伤害吸收II(30秒) -> 方块转换成 胡萝卜炒猪排骨(半份)(plate_13a)
步骤2:空手右键 已放置的 胡萝卜炒猪排骨(半份)方块(plate_13a) 步骤2:空手右键 已放置的 胡萝卜炒猪排骨(半份)方块(plate_13a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十四、炒土豆 (plate_14, 无半份) 十四、炒土豆 (plate_14, 无半份)
步骤1:空手右键 已放置的 炒土豆 方块(plate_14) 步骤1:空手右键 已放置的 炒土豆 方块(plate_14)
-> 回复 4 点饱食度, 获得 饱和I(15秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 4 点饱食度, 获得 饱和I(15秒) 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十五、胡萝卜炒鳕鱼 (plate_15, 无半份) 十五、胡萝卜炒鳕鱼 (plate_15, 无半份)
步骤1:空手右键 已放置的 胡萝卜炒鳕鱼 方块(plate_15) 步骤1:空手右键 已放置的 胡萝卜炒鳕鱼 方块(plate_15)
-> 回复 6 点饱食度, 获得 幸运I(60秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 6 点饱食度, 获得 幸运I(60秒)水下呼吸(60秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十六、辣炒兔肉 (全份 plate_19 / 半份 plate_19a) 十六、辣炒兔肉 (全份 plate_19 / 半份 plate_19a)
步骤1:空手右键 已放置的 辣炒兔肉(全份)方块(plate_19) 步骤1:空手右键 已放置的 辣炒兔肉(全份)方块(plate_19)
-> 回复 6 点饱食度, 获得 抗火I(45秒) -> 方块转换成 辣炒兔肉(半份)(plate_19a) -> 回复 4 点饱食度, 获得 抗火I(60秒)抗性提升I(20秒) 跳跃提升II(50秒) -> 方块转换成 辣炒兔肉(半份)(plate_19a)
步骤2:空手右键 已放置的 辣炒兔肉(半份)方块(plate_19a) 步骤2:空手右键 已放置的 辣炒兔肉(半份)方块(plate_19a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十七、元气煎蛋 (plate_22, 无半份) 十七、元气煎蛋 (plate_22, 无半份)
步骤1:空手右键 已放置的 元气煎蛋 方块(plate_22) 步骤1:空手右键 已放置的 元气煎蛋 方块(plate_22)
-> 回复 4 点饱食度, 获得 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 4 点饱食度, 获得 生命恢复I(30秒) 幸运II(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十八、炒时蔬 (plate_23, 无半份) 十八、炒时蔬 (plate_23, 无半份)
步骤1:空手右键 已放置的 炒时蔬 方块(plate_23) 步骤1:空手右键 已放置的 炒时蔬 方块(plate_23)
-> 回复 4 点饱食度, 获得 速度I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 4 点饱食度, 获得 速度I(30秒) 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
十九、炒碎肉 (plate_24, 无半份) 十九、炒碎肉 (plate_24, 无半份)
步骤1:空手右键 已放置的 炒碎肉 方块(plate_24) 步骤1:空手右键 已放置的 炒碎肉 方块(plate_24)
-> 回复 5 点饱食度, 获得 力量I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 5 点饱食度, 获得 力量I(30秒) 伤害吸收II(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二十、煎鲑鱼 (plate_25, 无半份) 二十、煎鲑鱼 (plate_25, 无半份)
步骤1:空手右键 已放置的 煎鲑鱼 方块(plate_25) 步骤1:空手右键 已放置的 煎鲑鱼 方块(plate_25)
-> 回复 6 点饱食度, 获得 幸运I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 6 点饱食度, 获得 幸运I(40秒)水下呼吸(40秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二十一、炒鱿鱼 (全份 plate_26 / 三分之二份 plate_26a / 三分之一份 plate_26b) 二十一、炒鱿鱼 (全份 plate_26 / 三分之二份 plate_26a / 三分之一份 plate_26b)
步骤1:空手右键 已放置的 炒鱿鱼(全份)方块(plate_26) 步骤1:空手右键 已放置的 炒鱿鱼(全份)方块(plate_26)
-> 回复 6 点饱食度, 获得 速度I(45秒) -> 方块转换成 炒鱿鱼(三分之二份)(plate_26a) -> 回复 4 点饱食度, 获得 潮涌能量II(30秒)水下呼吸(60秒)夜视(30秒)抗性提升I(50秒) -> 方块转换成 炒鱿鱼(三分之二份)(plate_26a)
步骤2:空手右键 已放置的 炒鱿鱼(三分之二份)方块(plate_26a) 步骤2:空手右键 已放置的 炒鱿鱼(三分之二份)方块(plate_26a)
-> 回复 4 点饱食度 -> 方块转换成 炒鱿鱼(三分之一份)(plate_26b) -> 回复 4 点饱食度 -> 方块转换成 炒鱿鱼(三分之一份)(plate_26b)
步骤3:空手右键 已放置的 炒鱿鱼(三分之一份)方块(plate_26b) 步骤3:空手右键 已放置的 炒鱿鱼(三分之一份)方块(plate_26b)
@@ -167,116 +165,108 @@
二十二、炒鱿鱼须 (全份 plate_26d / 半份 plate_26c) 二十二、炒鱿鱼须 (全份 plate_26d / 半份 plate_26c)
步骤1:空手右键 已放置的 炒鱿鱼须(全份)方块(plate_26d) 步骤1:空手右键 已放置的 炒鱿鱼须(全份)方块(plate_26d)
-> 回复 5 点饱食度, 获得 速度I(30秒) -> 方块转换成 炒鱿鱼须(半份)(plate_26c) -> 回复 2 点饱食度, 获得 速度I(30秒)水下呼吸(30秒) -> 方块转换成 炒鱿鱼须(半份)(plate_26c)
步骤2:空手右键 已放置的 炒鱿鱼须(半份)方块(plate_26c) 步骤2:空手右键 已放置的 炒鱿鱼须(半份)方块(plate_26c)
-> 回复 2 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 2 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二十三、小炒鸡肉 (全份 plate_31 / 半份 plate_31a) 二十三、小炒鸡肉 (全份 plate_31 / 半份 plate_31a)
步骤1:空手右键 已放置的 小炒鸡肉(全份)方块(plate_31) 步骤1:空手右键 已放置的 小炒鸡肉(全份)方块(plate_31)
-> 回复 6 点饱食度, 获得 生命提升I(45秒) -> 方块转换成 小炒鸡肉(半份)(plate_31a) -> 回复 4 点饱食度, 获得 饱和I(30秒) 速度II(60秒)急迫I(30秒) -> 方块转换成 小炒鸡肉(半份)(plate_31a)
步骤2:空手右键 已放置的 小炒鸡肉(半份)方块(plate_31a) 步骤2:空手右键 已放置的 小炒鸡肉(半份)方块(plate_31a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二十四、麻婆豆腐 (全份 plate_32 / 半份 plate_32a) 二十四、麻婆豆腐 (全份 plate_32 / 半份 plate_32a)
步骤1:空手右键 已放置的 麻婆豆腐(全份)方块(plate_32) 步骤1:空手右键 已放置的 麻婆豆腐(全份)方块(plate_32)
-> 回复 6 点饱食度, 获得 抗火I(45秒) -> 方块转换成 麻婆豆腐(半份)(plate_32a) -> 回复 4 点饱食度, 获得 抗火I(45秒) 生命恢复II(20秒)生命提升III(60秒) -> 方块转换成 麻婆豆腐(半份)(plate_32a)
步骤2:空手右键 已放置的 麻婆豆腐(半份)方块(plate_32a) 步骤2:空手右键 已放置的 麻婆豆腐(半份)方块(plate_32a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二十五、炒蟹 (全份 plate_33 / 半份 plate_33a) 二十五、炒蟹 (全份 plate_33 / 半份 plate_33a)
步骤1:空手右键 已放置的 炒蟹(全份)方块(plate_33) 步骤1:空手右键 已放置的 炒蟹(全份)方块(plate_33)
-> 回复 7 点饱食度, 获得 幸运I(60秒) -> 方块转换成 炒蟹(半份)(plate_33a) -> 回复 2 点饱食度, 获得 幸运I(60秒) -> 方块转换成 炒蟹(半份)(plate_33a)
步骤2:空手右键 已放置的 炒蟹(半份)方块(plate_33a) 步骤2:空手右键 已放置的 炒蟹(半份)方块(plate_33a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二十六、辣炒鲑鱼 (plate_41, 无半份) 二十六、辣炒鲑鱼 (plate_41, 无半份)
步骤1:空手右键 已放置的 辣炒鲑鱼 方块(plate_41) 步骤1:空手右键 已放置的 辣炒鲑鱼 方块(plate_41)
-> 回复 6 点饱食度, 获得 抗火I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 6 点饱食度, 获得 抗火I(30秒)抗性提升I(20秒) 速度I(50秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二十七、牛肉意面 (全份 plate_43 / 半份 plate_43a) 二十七、牛肉意面 (全份 plate_43 / 半份 plate_43a)
步骤1:空手右键 已放置的 牛肉意面(全份)方块(plate_43) 步骤1:空手右键 已放置的 牛肉意面(全份)方块(plate_43)
-> 回复 7 点饱食度, 获得 饱和I(60秒) -> 方块转换成 牛肉意面(半份)(plate_43a) -> 回复 3 点饱食度, 获得 饱和I(30秒)力量II(30秒)生命恢复I(30秒) -> 方块转换成 牛肉意面(半份)(plate_43a)
步骤2:空手右键 已放置的 牛肉意面(半份)方块(plate_43a) 步骤2:空手右键 已放置的 牛肉意面(半份)方块(plate_43a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 4 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二十八、香菇意面 (全份 plate_44 / 半份 plate_44a) 二十八、香菇意面 (全份 plate_44 / 半份 plate_44a)
步骤1:空手右键 已放置的 香菇意面(全份)方块(plate_44) 步骤1:空手右键 已放置的 香菇意面(全份)方块(plate_44)
-> 回复 6 点饱食度, 获得 饱和I(45秒) -> 方块转换成 香菇意面(半份)(plate_44a) -> 回复 2 点饱食度, 获得 饱和I(45秒)跳跃提升I(30秒)急迫I(30秒) -> 方块转换成 香菇意面(半份)(plate_44a)
步骤2:空手右键 已放置的 香菇意面(半份)方块(plate_44a) 步骤2:空手右键 已放置的 香菇意面(半份)方块(plate_44a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二十九、胡萝卜意面 (全份 plate_45 / 半份 plate_45a) 二十九、胡萝卜意面 (全份 plate_45 / 半份 plate_45a)
步骤1:空手右键 已放置的 胡萝卜意面(全份)方块(plate_45) 步骤1:空手右键 已放置的 胡萝卜意面(全份)方块(plate_45)
-> 回复 6 点饱食度, 获得 饱和I(45秒) -> 方块转换成 胡萝卜意面(半份)(plate_45a) -> 回复 2 点饱食度, 获得 饱和I(25秒)夜视(30秒)伤害吸收II(40秒) -> 方块转换成 胡萝卜意面(半份)(plate_45a)
步骤2:空手右键 已放置的 胡萝卜意面(半份)方块(plate_45a) 步骤2:空手右键 已放置的 胡萝卜意面(半份)方块(plate_45a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
三十、鸡肉番茄意面 (全份 plate_46 / 半份 plate_46a) 三十、鸡肉番茄意面 (全份 plate_46 / 半份 plate_46a)
步骤1:空手右键 已放置的 鸡肉番茄意面(全份)方块(plate_46) 步骤1:空手右键 已放置的 鸡肉番茄意面(全份)方块(plate_46)
-> 回复 6 点饱食度, 获得 生命提升I(45秒) -> 方块转换成 鸡肉番茄意面(半份)(plate_46a) -> 回复 4 点饱食度, 获得 生命提升III(40秒)生命恢复I(15秒)抗性提升I(20秒) -> 方块转换成 鸡肉番茄意面(半份)(plate_46a)
步骤2:空手右键 已放置的 鸡肉番茄意面(半份)方块(plate_46a) 步骤2:空手右键 已放置的 鸡肉番茄意面(半份)方块(plate_46a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
三十一、辣子鸡丁 (plate_47, 无半份) 三十一、辣子鸡丁 (plate_47, 无半份)
步骤1:空手右键 已放置的 辣子鸡丁 方块(plate_47) 步骤1:空手右键 已放置的 辣子鸡丁 方块(plate_47)
-> 回复 6 点饱食度, 获得 抗火I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 6 点饱食度, 获得 抗火I(45秒)力量I(45秒)速度I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
三十二、辣椒炒牛肉 (plate_47a, 无半份) 三十二、辣椒炒牛肉 (plate_47a, 无半份)
步骤1:空手右键 已放置的 辣椒炒牛肉 方块(plate_47a) 步骤1:空手右键 已放置的 辣椒炒牛肉 方块(plate_47a)
-> 回复 6 点饱食度, 获得 力量I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 6 点饱食度, 获得 力量II(40秒)抗性提升II(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
三十三、土豆炒猪肉 (plate_52, 无半份) 三十三、土豆炒猪肉 (plate_52, 无半份)
步骤1:空手右键 已放置的 土豆炒猪肉 方块(plate_52) 步骤1:空手右键 已放置的 土豆炒猪肉 方块(plate_52)
-> 回复 6 点饱食度, 获得 饱和I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 6 点饱食度, 获得 饱和I(20秒)伤害吸收III(40秒)生命恢复I(20秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
三十四、胡萝卜炒猪肉 (plate_53, 无半份) 三十四、胡萝卜炒猪肉 (plate_53, 无半份)
步骤1:空手右键 已放置的 胡萝卜炒猪肉 方块(plate_53) 步骤1:空手右键 已放置的 胡萝卜炒猪肉 方块(plate_53)
-> 回复 6 点饱食度, 获得 饱和I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 6 点饱食度, 获得 伤害吸收III(40秒)生命恢复I(20秒) 急迫I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
三十五、香菇滑鸡 (plate_54, 无半份) 三十五、香菇滑鸡 (plate_54, 无半份)
步骤1:空手右键 已放置的 香菇滑鸡 方块(plate_54) 步骤1:空手右键 已放置的 香菇滑鸡 方块(plate_54)
-> 回复 5 点饱食度, 获得 生命提升I(60秒) —— 【按用户示例】 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 5 点饱食度, 获得 速度II(50秒)跳跃提升II(30秒)缓降I(90秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
三十六、蛋炒饭 (bowlofriceegg, 无半份) 三十六、蛋炒饭 (bowlofriceegg, 无半份)
步骤1:空手右键 已放置的 蛋炒饭 方块(bowlofriceegg) 步骤1:空手右键 已放置的 蛋炒饭 方块(bowlofriceegg)
-> 回复 7 点饱食度, 获得 饱和I(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 -> 回复 7 点饱食度, 获得 幸运II(60秒) 饱和I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
三十七、葱油饼 (scallion_pancake_0, 放置成方块后吃, 无半份) 三十七、葱油饼 (scallion_pancake_0, 放置成方块后吃, 无半份)
步骤1:空手右键 已放置的 葱油饼 方块 步骤1:空手右键 已放置的 葱油饼 方块
-> 回复 4 点饱食度, 获得 饱和I(15秒) -> 方块完全消耗(消失) -> 回复 4 点饱食度, 获得 伤害吸收II(35秒)缓降I(30秒) -> 方块完全消耗(消失)
三十八、酱香饼 (cookedpancake, 放置成方块后吃, 无半份) 三十八、酱香饼 (cookedpancake, 放置成方块后吃, 无半份)
步骤1:空手右键 已放置的 酱香饼 方块 步骤1:空手右键 已放置的 酱香饼 方块
-> 回复 5 点饱食度, 获得 饱和I(30秒) -> 方块完全消耗(消失) -> 回复 5 点饱食度, 获得 饱和I(30秒)抗性提升I(30秒) -> 方块完全消耗(消失)
三十九、煎饼 (cooked_dought, 放置成方块后吃, 无半份)
步骤1:空手右键 已放置的 煎饼 方块
-> 回复 4 点饱食度, 获得 速度I(30秒) -> 方块完全消耗(消失)
四十、馍 (roujiamo_0, 放置成方块后吃, 无半份; 分类归属 面食.甜食, 来源 炒锅煎馍)
步骤1:空手右键 已放置的 馍 方块
-> 回复 4 点饱食度, 获得 饱和I(30秒) -> 方块完全消耗(消失)
【盖饭】(归 food_11_rice_meal, 均【吃】) 【盖饭】(归 food_11_rice_meal, 均【吃】)
四十一、辣子鸡丁盖饭 (全份 plate_48 / 半份 plate_48a) 四十一、辣子鸡丁盖饭 (全份 plate_48 / 半份 plate_48a)
步骤1:空手右键 已放置的 辣子鸡丁盖饭(全份)方块(plate_48) 步骤1:空手右键 已放置的 辣子鸡丁盖饭(全份)方块(plate_48)
-> 回复 9 点饱食度, 获得 饱和I(90秒) -> 方块转换成 辣子鸡丁盖饭(半份)(plate_48a) -> 回复 5 点饱食度, 获得 生命恢复II(20秒)生命提升IV(60秒) -> 方块转换成 辣子鸡丁盖饭(半份)(plate_48a)
步骤2:空手右键 已放置的 辣子鸡丁盖饭(半份)方块(plate_48a) 步骤2:空手右键 已放置的 辣子鸡丁盖饭(半份)方块(plate_48a)
-> 回复 4 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 4 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
四十二、香菇滑鸡盖饭 (全份 plate_55 / 半份 plate_55a) 四十二、香菇滑鸡盖饭 (全份 plate_55 / 半份 plate_55a)
步骤1:空手右键 已放置的 香菇滑鸡盖饭(全份)方块(plate_55) 步骤1:空手右键 已放置的 香菇滑鸡盖饭(全份)方块(plate_55)
-> 回复 9 点饱食度, 获得 生命提升I(90秒) -> 方块转换成 香菇滑鸡盖饭(半份)(plate_55a) -> 回复 5 点饱食度, 获得 跳跃提升II(30秒)力量I(60秒)缓降I(90秒) -> 方块转换成 香菇滑鸡盖饭(半份)(plate_55a)
步骤2:空手右键 已放置的 香菇滑鸡盖饭(半份)方块(plate_55a) 步骤2:空手右键 已放置的 香菇滑鸡盖饭(半份)方块(plate_55a)
-> 回复 4 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 4 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
四十三、麻婆豆腐盖饭 (plate_56, 无半份) 四十三、麻婆豆腐盖饭 (plate_56, 无半份)
步骤1:空手右键 已放置的 麻婆豆腐盖饭 方块(plate_56) 步骤1:空手右键 已放置的 麻婆豆腐盖饭 方块(plate_56)
-> 回复 9 点饱食度, 获得 饱和I(90秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 7 点饱食度, 获得 饱和I(30秒)伤害吸收II(90秒)抗性提升I(60秒)-> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
四十四、鳕鱼盖饭 (plate_50, 无半份) 四十四、鳕鱼盖饭 (plate_50, 无半份)
步骤1:空手右键 已放置的 鳕鱼盖饭 方块(plate_50) 步骤1:空手右键 已放置的 鳕鱼盖饭 方块(plate_50)
-> 回复 9 点饱食度, 获得 幸运I(90秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 7 点饱食度, 获得 饱和I(30秒)幸运I(90秒)夜视(60秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
######################################## ########################################
【油锅】(xy_youguo) 【油锅】(xy_youguo)
@@ -286,29 +276,29 @@
一、盘装鸡块 (plate_38, 无半份) 一、盘装鸡块 (plate_38, 无半份)
步骤1:空手右键 已放置的 盘装鸡块 方块(plate_38) 步骤1:空手右键 已放置的 盘装鸡块 方块(plate_38)
-> 回复 5 点饱食度, 获得 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 5 点饱食度, 获得 生命恢复I(30秒) 跳跃提升I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
二、炸猪排(盘装) (plate_36, 无半份) 二、炸猪排(盘装) (plate_36, 无半份)
步骤1:空手右键 已放置的 炸猪排(盘装) 方块(plate_36) 步骤1:空手右键 已放置的 炸猪排(盘装) 方块(plate_36)
-> 回复 7 点饱食度, 获得 力量I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 7 点饱食度, 获得 力量I(45秒)抗性提升I(45秒)抗火I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
三、炸薯条(盘装) (plate_37, 无半份) 三、炸薯条(盘装) (plate_37, 无半份)
步骤1:空手右键 已放置的 炸薯条(盘装) 方块(plate_37) 步骤1:空手右键 已放置的 炸薯条(盘装) 方块(plate_37)
-> 回复 4 点饱食度, 获得 速度I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 4 点饱食度, 获得 速度I(30秒)伤害吸收I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
四、盘装炸鱼 (plate_39, 无半份) 四、盘装炸鱼 (plate_39, 无半份)
步骤1:空手右键 已放置的 盘装炸鱼 方块(plate_39) 步骤1:空手右键 已放置的 盘装炸鱼 方块(plate_39)
-> 回复 5 点饱食度, 获得 幸运I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 5 点饱食度, 获得 幸运II(45秒) 潮涌能量(60秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
五、天妇罗炸虾 (整份 plate_49 / 半份 plate_49a) [分类归属油锅, 禁止挂炒锅/盖饭] 五、天妇罗炸虾 (整份 plate_49 / 半份 plate_49a) [分类归属油锅, 禁止挂炒锅/盖饭]
步骤1:空手右键 已放置的 天妇罗炸虾(整份)方块(plate_49) 步骤1:空手右键 已放置的 天妇罗炸虾(整份)方块(plate_49)
-> 回复 6 点饱食度, 获得 速度I(45秒) -> 方块转换成 天妇罗炸虾(半份)(plate_49a) -> 回复 3 点饱食度, 获得 速度I(45秒)夜视(60秒)抗性提升I(45秒) -> 方块转换成 天妇罗炸虾(半份)(plate_49a)
步骤2:空手右键 已放置的 天妇罗炸虾(半份)方块(plate_49a) 步骤2:空手右键 已放置的 天妇罗炸虾(半份)方块(plate_49a)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
六、炸饺子(盘装) (plate_51, 无半份) 六、炸饺子(盘装) (plate_51, 无半份)
步骤1:空手右键 已放置的 炸饺子(盘装) 方块(plate_51) 步骤1:空手右键 已放置的 炸饺子(盘装) 方块(plate_51)
-> 回复 5 点饱食度, 获得 饱和I(30秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 5 点饱食度, 获得 伤害吸收II(60秒)生命恢复I(20秒)) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
######################################## ########################################
【汤锅】(xy_tangguo) 【汤锅】(xy_tangguo)
@@ -319,30 +309,33 @@
饭团/水煮蛋/豆腐(放置成方块吃)无容器不掉落 饭团/水煮蛋/豆腐(放置成方块吃)无容器不掉落
一、碗装汤品 (单次吃完) 一、碗装汤品 (单次吃完)
- 胡萝卜牛肉汤(bowlacarrotbeefsoup): 空手右键已放置方块 -> 回复 6 点, 生命恢复I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 胡萝卜牛肉汤(bowlacarrotbeefsoup): 空手右键已放置方块 -> 回复 6 点, 力量I(45秒)生命恢复I(45秒)抗火I(45秒) 夜视(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 胡萝卜羊肉汤(brownlambsoupwithturnipssoup): 空手右键已放置方块 -> 回复 6 点, 生命恢复I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 胡萝卜羊肉汤(brownlambsoupwithturnipssoup): 空手右键已放置方块 -> 回复 6 点, 抗性提升II(45秒)夜视(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 胡萝卜排骨汤(bowlacarrotribs): 空手右键已放置方块 -> 回复 6 点, 力量I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 胡萝卜排骨汤(bowlacarrotribs): 空手右键已放置方块 -> 回复 6 点, 夜视(45秒)速度I(45秒)力量I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 清汤羊肉(bowlavegetablebeefsoup): 空手右键已放置方块 -> 回复 6 点, 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 清汤羊肉(bowlavegetablebeefsoup): 空手右键已放置方块 -> 回复 6 点, 生命恢复I(30秒) 抗性提升I(30秒) 伤害吸收II(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蔬菜牛肉汤(bowlavegetablelambsoup): 空手右键已放置方块 -> 回复 5 点, 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蔬菜牛肉汤(bowlavegetablelambsoup): 空手右键已放置方块 -> 回复 5 点, 力量I(45秒)生命恢复I(20秒) 伤害吸收II(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蔬菜瘦肉汤(bowlavegetableleanbroth): 空手右键已放置方块 -> 回复 5 点, 力量I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蔬菜瘦肉汤(bowlavegetableleanbroth): 空手右键已放置方块 -> 回复 5 点, 急迫I(45秒)生命提升II(45秒) 生命恢复I(20秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蔬菜乱炖(bowlavegetablesstew): 空手右键已放置方块 -> 回复 6 点, 饱和I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蔬菜乱炖(bowlavegetablesstew): 空手右键已放置方块 -> 回复 6 点, 饱和I(30秒)速度I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 胡萝卜土豆牛骨汤(bowlabeefbonebroth): 空手右键已放置方块 -> 回复 7 点, 力量I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 胡萝卜土豆牛骨汤(bowlabeefbonebroth): 空手右键已放置方块 -> 回复 7 点, 力量II(45秒)夜视(45秒) 速度I(45秒)缓降(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 土豆胡萝卜炖羊肉(bowlalambstew): 空手右键已放置方块 -> 回复 7 点, 生命恢复I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 土豆胡萝卜炖羊肉(bowlalambstew): 空手右键已放置方块 -> 回复 7 点, 生命恢复I(45秒)伤害吸收III(60秒) 抗性提升I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 胡萝卜土豆羊排汤(bowla_lambchopsoup): 空手右键已放置方块 -> 回复 7 点, 生命提升I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 胡萝卜土豆羊排汤(bowla_lambchopsoup): 空手右键已放置方块 -> 回复 7 点, 伤害吸收III(60秒) 生命恢复I(10秒)抗性提升II(45秒)-> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 胡萝卜鳕鱼汤(bowlacarrotcodsoup): 空手右键已放置方块 -> 回复 6 点, 幸运I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 胡萝卜鳕鱼汤(bowlacarrotcodsoup): 空手右键已放置方块 -> 回复 6 点, 幸运II(45秒)跳跃提升I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 胡萝卜鲑鱼汤(browncarrotfishsoupsoup): 空手右键已放置方块 -> 回复 6 点, 幸运I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 胡萝卜鲑鱼汤(browncarrotfishsoupsoup): 空手右键已放置方块 -> 回复 6 点, 幸运II(45秒) 速度I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蛋花鳕鱼汤(bowlaeggcodsoup): 空手右键已放置方块 -> 回复 5 点, 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蛋花鳕鱼汤(bowlaeggcodsoup): 空手右键已放置方块 -> 回复 5 点, 生命恢复I(30秒) 幸运I(45秒)生命提升II(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 瘦肉蛋花汤(brown_norieggsoup): 空手右键已放置方块 -> 回复 5 点, 力量I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 瘦肉蛋花汤(brown_norieggsoup): 空手右键已放置方块 -> 回复 5 点, 力量I(30秒)伤害吸收II(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 豆腐鲑鱼汤(bowlatufufish): 空手右键已放置方块 -> 回复 5 点, 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 豆腐鲑鱼汤(bowlatufufish): 空手右键已放置方块 -> 回复 5 点, 幸运I(45秒)水下呼吸(60秒)夜视(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蘑菇炖鸡(bowlofmushroomsoup): 空手右键已放置方块 -> 回复 7 点, 生命恢复I(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蘑菇炖鸡(bowlofmushroomsoup): 空手右键已放置方块 -> 回复 7 点, 速度I(45秒)生命恢复I(60秒)抗火I(45秒)跳跃提升I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 猪蹄汤(brownpigfootsoup): 空手右键已放置方块 -> 回复 6 点, 抗性I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 猪蹄汤(brownpigfootsoup): 空手右键已放置方块 -> 回复 6 点, 力量I(45秒)抗性I(30秒) 速度I(45秒) 急迫II(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 羊肉泡馍汤(bowla_roujiamo): 空手右键已放置方块 -> 回复 7 点, 饱和I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 羊肉泡馍汤(bowla_roujiamo): 空手右键已放置方块 -> 回复 7 点, 饱和I(45秒)抗性提升I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 饺子_碗装(dumplingssoup): 空手右键已放置方块 -> 回复 6 点, 饱和I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 饺子_碗装(dumplingssoup): 空手右键已放置方块 -> 回复 6 点, 饱和I(30秒)伤害吸收II(60秒)生命恢复I(20秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蔬菜鱼片汤(brownvegetablefishsoup): 空手右键已放置方块 -> 回复 5 点, 幸运I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蔬菜鱼片汤(brownvegetablefishsoup): 空手右键已放置方块 -> 回复 5 点, 幸运I(45秒)水下呼吸(120秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
二、美味饺子(全份)盘装 (plate_30a, 无半份) 二、美味饺子 (全份 plate_30a -> 半份 plate_30)
步骤1:空手右键 已放置的 美味饺子(全份)盘装 方块(plate_30a) 步骤1:空手右键 已放置的 美味饺子(全份)盘装 方块(plate_30a)
-> 回复 7 点饱食度, 获得 饱和I(45秒) -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个 -> 回复 4 点饱食度, 获得 饱和I(45秒)伤害吸收III(60秒)生命恢复II(20秒) -> 方块转换成 美味饺子(半份)盘装(plate_30)
步骤2:空手右键 已放置的 美味饺子(半份)盘装 方块(plate_30)
-> 回复 3 点饱食度 -> 方块完全消耗(消失), 掉落 脏盘子(plate_0a)1个
(全份(plate_30a) 也是 蒸笼水饺 出锅所得; 半份(plate_30) 仅由吃一级转换而来)
三、熟面条 (noodle_soup, 无半份) 三、熟面条 (noodle_soup, 无半份)
步骤1:空手右键 已放置的 熟面条 方块(noodle_soup) 步骤1:空手右键 已放置的 熟面条 方块(noodle_soup)
@@ -352,39 +345,36 @@
步骤1:空手右键 已放置的 熟米饭(碗装)方块(任一形态) 步骤1:空手右键 已放置的 熟米饭(碗装)方块(任一形态)
-> 回复 4 点饱食度, 获得 饱和I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 -> 回复 4 点饱食度, 获得 饱和I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
五、饭团 (rice_balls, 放置成方块后吃) 五、饭团 (rice_balls,右键直接吃不放置)
步骤1:空手右键 已放置的 饭团 方块 步骤1:右键 -> 回复 3 点饱食度, 获得 饱和I(15秒)
-> 回复 3 点饱食度, 获得 饱和I(15秒) -> 方块完全消耗(消失)
六、水煮蛋 (boiled_egg, 右键直接吃) 六、水煮蛋 (boiled_egg, 右键直接吃不放置)
步骤1:空手右键 已放置的 水煮蛋 方块 步骤1:右键 -> 回复 2 点饱食度
-> 回复 2 点饱食度 -> 方块完全消耗(消失)
七、豆腐 (beancurd, 放置成方块后吃) 七、豆腐 (beancurd, 右键直接吃不放置)
步骤1:空手右键 已放置的 豆腐 方块 步骤1:右键 -> 回复 2 点饱食度
-> 回复 2 点饱食度 -> 方块完全消耗(消失)
八、汤面 (归 food_02_rice_noodle, 均 空手右键方块 直接吃, 单次吃完) 八、汤面 (归 food_02_rice_noodle, 均 空手右键方块 直接吃, 单次吃完)
- 猪排蔬菜面(noodlesoup_1): 空手右键已放置方块 -> 回复 7 点, 生命提升I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 猪排蔬菜面(noodlesoup_1): 空手右键已放置方块 -> 回复 7 点, 生命提升II(45秒)生命恢复I(10秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 羊排蔬菜面(noodlesoup_2): 空手右键已放置方块 -> 回复 7 点, 生命提升I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 羊排蔬菜面(noodlesoup_2): 空手右键已放置方块 -> 回复 7 点, 生命提升II(45秒)生命恢复I(10秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 牛骨面(noodlesoup_3): 空手右键已放置方块 -> 回复 8 点, 力量I(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 牛骨面(noodlesoup_3): 空手右键已放置方块 -> 回复 8 点, 力量II(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 小鸡炖蘑菇面(noodlesoup_4): 空手右键已放置方块 -> 回复 7 点, 生命恢复I(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 小鸡炖蘑菇面(noodlesoup_4): 空手右键已放置方块 -> 回复 7 点, 生命恢复I(60秒)跳跃提升I(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 胡萝卜蔬菜面(assortedramen): 空手右键已放置方块 -> 回复 6 点, 饱和I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 胡萝卜蔬菜面(assortedramen): 空手右键已放置方块 -> 回复 6 点, 饱和I(30秒)夜视(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 胡萝卜蔬菜牛肉面(braisednoodles): 空手右键已放置方块 -> 回复 7 点, 力量I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 胡萝卜蔬菜牛肉面(braisednoodles): 空手右键已放置方块 -> 回复 7 点, 力量I(45秒) 夜视(60秒)-> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 香菇面(mushroomnoodles): 空手右键已放置方块 -> 回复 6 点, 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 香菇面(mushroomnoodles): 空手右键已放置方块 -> 回复 6 点, 生命恢复I(30秒) 急迫I(30秒)缓降I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蔬菜鱼片面(yushengramen): 空手右键已放置方块 -> 回复 6 点, 幸运I(45秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蔬菜鱼片面(yushengramen): 空手右键已放置方块 -> 回复 6 点, 幸运I(45秒)抗性提升I(30秒)生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蔬菜面(vegetable_noodles): 空手右键已放置方块 -> 回复 5 点, 饱和I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蔬菜面(vegetable_noodles): 空手右键已放置方块 -> 回复 5 点, 饱和I(30秒)抗性提升I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蛋花面(noodles_1): 空手右键已放置方块 -> 回复 5 点, 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蛋花面(noodles_1): 空手右键已放置方块 -> 回复 5 点, 生命恢复I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 蛋花面(加葱花)(noodles_2): 空手右键已放置方块 -> 回复 5 点, 速度I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 蛋花面(加葱花)(noodles_2): 空手右键已放置方块 -> 回复 5 点, 速度I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 鸡蛋面(egg_noodles): 空手右键已放置方块 -> 回复 6 点, 生命提升I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 鸡蛋面(egg_noodles): 空手右键已放置方块 -> 回复 6 点, 生命提升I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
- 猪排蔬菜面加水煮蛋(tonkotsu_ramen): 空手右键已放置方块 -> 回复 9 点, 生命提升I(60秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个 - 猪排蔬菜面加水煮蛋(tonkotsu_ramen): 空手右键已放置方块 -> 回复 9 点, 生命提升IV(120秒)生命恢复II(30秒)速度I(30秒) -> 方块完全消耗(消失), 掉落 木碗(bowlasoup)1个
######################################## ########################################
【面食.甜食】(xy_mianshi) 【面食.甜食】(xy_mianshi)
######################################## ########################################
(均【吃】; 操作统一: 放置成方块后 空手右键方块) (均【吃】; 操作统一: 放置成方块后 空手右键方块)
【容器】盘装水饺(plate_30)吃完掉落 脏盘子(plate_0a); 其余(包子/馍/煎饼卷/竹筒饭/ 【容器】其余(包子/馍/煎饼卷/竹筒饭/面包/蛋糕/布丁/舒芙蕾)无容器不掉落
面包/蛋糕/布丁/舒芙蕾)无容器不掉落 (注: 蒸笼水饺出锅得 美味饺子(全份)(plate_30a), 归属 汤锅·美味饺子链; 馍/煎饼 来源 炒锅出锅)
一、熟肉包子 (放置成方块后吃) 一、熟肉包子 (放置成方块后吃)
步骤1:空手右键 已放置的 熟肉包子(整)方块 步骤1:空手右键 已放置的 熟肉包子(整)方块
@@ -398,7 +388,7 @@
二、肉夹馍 (roujiamo_2, 无半份) 二、肉夹馍 (roujiamo_2, 无半份)
步骤1:空手右键 已放置的 肉夹馍 方块 步骤1:空手右键 已放置的 肉夹馍 方块
-> 回复 6 点饱食度, 获得 力量I(45秒)伤害吸收II(45) -> 方块完全消耗(消失) -> 回复 6 点饱食度, 获得 力量I(45秒)伤害吸收II(45) -> 方块完全消耗(消失)
todo 补充:馍 空手右键 已放置的 馍 方块 回复 2点饱食度 -> 方块完全消耗(消失)
三、煎饼卷牛肉 (cookeddought_6, 无半份) 三、煎饼卷牛肉 (cookeddought_6, 无半份)
步骤1:空手右键 已放置的 煎饼卷牛肉 方块 步骤1:空手右键 已放置的 煎饼卷牛肉 方块
-> 回复 6 点饱食度, 获得 力量I(45秒)伤害吸收II(45) -> 方块完全消耗(消失) -> 回复 6 点饱食度, 获得 力量I(45秒)伤害吸收II(45) -> 方块完全消耗(消失)
@@ -427,8 +417,8 @@ todo 补充:馍 空手右键 已放置的 馍 方块 回复 2点饱食度 -> 方
步骤:空手右键 已放置的 甜甜圈(一份)方块 步骤:空手右键 已放置的 甜甜圈(一份)方块
-> 回复 3 点饱食度 速度I(45秒)抗性提升I(45秒) -> 方块完全消耗(消失) -> 回复 3 点饱食度 速度I(45秒)抗性提升I(45秒) -> 方块完全消耗(消失)
十一、奶油蛋糕 十一、奶油蛋糕 (无切分变体, 整块吃)
步骤:空手右键 已放置的 奶油蛋糕小块 方块 步骤:空手右键 已放置的 奶油蛋糕(整块)方块
-> 回复 3 点饱食度, 获得 饱和I(45秒)急迫I(45秒)伤害吸收I(45) -> 方块完全消耗(消失) -> 回复 3 点饱食度, 获得 饱和I(45秒)急迫I(45秒)伤害吸收I(45) -> 方块完全消耗(消失)
十二、蜂蜜蛋糕 十二、蜂蜜蛋糕
@@ -449,6 +439,14 @@ todo 补充:馍 空手右键 已放置的 馍 方块 回复 2点饱食度 -> 方
步骤1:空手右键 已放置的 舒芙蕾 方块 步骤1:空手右键 已放置的 舒芙蕾 方块
-> 回复 4 点饱食度, 获得 饱和I(30秒)生命提升I(30秒)幸运I(30秒) -> 方块完全消耗(消失) -> 回复 4 点饱食度, 获得 饱和I(30秒)生命提升I(30秒)幸运I(30秒) -> 方块完全消耗(消失)
十七、馍 (roujiamo_0, 放置成方块后吃; 来源: 炒锅煎馍出锅, 归面食分类)
步骤1:空手右键 已放置的 馍 方块
-> 回复 2 点饱食度 -> 方块完全消耗(消失)
十八、煎饼 (cooked_dought, 放置成方块后吃;
步骤1:空手右键 已放置的 煎饼 方块
-> 回复 4 点饱食度, 获得 生命恢复I(10秒) -> 方块完全消耗(消失)
######################################## ########################################
【寿司】(xy_sushi) 【寿司】(xy_sushi)
######################################## ########################################