# -*- coding: utf-8 -*- """ ================================================================================ 油锅(xy_youguo)转化规则数据 ================================================================================ 统一管理"油锅"分类下的转化规则常量。只被 YouguoService / YouguoTimerService 读取, FeatureDispatcher 通过 方块名路由到对应服务。 【实现范围(对应 油锅转化关系.txt 一~三)】 一、油锅基础: 倒油(油罐->玻璃罐)/取油(玻璃罐->油罐) 二、炸物 : 满油锅+裹粉半成品(右键) -> 炸物(生) -> 计时 -> 熟 三、出锅 : 熟炸物+盘子(右键) -> 掉落盘装成品(掉落物形式) 【计时(见 YouguoTimerService)】 炸物(生)->60秒->炸物(半熟)->30秒->炸物(熟); 天妇罗/炸饺子 生->60秒->熟 计时判定: 炸物方块正下方须是 点燃的炉灶(stove_2) 才开始计时, 计时数据在炸物方块本身(炸物方块 tick 判定下方); 炉灶移走/熄灭则暂停 【不实现】: 各盘装成品 右键吃 (吃的操作后续由总食用功能实现) ================================================================================ """ # ============================================================================ # 一、方块/物品(常量) # ============================================================================ OILPOT_0 = "rtdd:oilpot_0" # 油锅(空) OILPOT_1 = "rtdd:oilpot_1" # 油锅(满油) OILCAN = "rtdd:oilcan" # 油罐(厨具) MEDICINE_TANK = "rtdd:medicinetank" # 玻璃罐(厨具) PLATE = "rtdd:plate_0" # 盘子(厨具) LIT_STOVE = "rtdd:stove_2" # 点燃的炉灶(厨具) # 裹粉半成品(物品, 乡野食材) BREADED_CHICKEN = "rtdd:oil_chickennuggets" # 裹粉鸡块 BREADED_PORK = "rtdd:oilpork" # 裹粉猪肉 BREADED_FRIES = "rtdd:oilfrenchfries" # 裹粉薯条 BREADED_FISH = "rtdd:oilfish_0" # 裹粉鱼 BREADED_TEMPURA = "rtdd:oiltempura" # 裹粉天妇罗 DUMPLINGS = "rtdd:dumplings_4" # 生饺子(面食.甜食) # 炸物方块(生/半熟/熟) CHICKEN_0 = "rtdd:oilchickennuggets_0" # 炸鸡块(生) CHICKEN_1 = "rtdd:oilchickennuggets_1" # 炸鸡块(半熟) CHICKEN_2 = "rtdd:oilchickennuggets_2" # 炸鸡块(熟) PORK_0 = "rtdd:oilpotporkchop_0" # 炸猪排(生) PORK_1 = "rtdd:oilpotporkchop_1" # 炸猪排(半熟) PORK_2 = "rtdd:oilpotporkchop_2" # 炸猪排(熟) FRIES_0 = "rtdd:oilfrenchfries_0" # 炸薯条(生) FRIES_1 = "rtdd:oilfrenchfries_1" # 炸薯条(半熟) FRIES_2 = "rtdd:oilfrenchfries_2" # 炸薯条(熟) FISH_0 = "rtdd:oilpotfish_0" # 炸鱼块(生) FISH_1 = "rtdd:oilpotfish_1" # 炸鱼块(半熟) FISH_2 = "rtdd:oilpotfish_2" # 炸鱼块(熟) TEMPURA_1 = "rtdd:oiltempura_1" # 炸天妇罗(生) TEMPURA_2 = "rtdd:oiltempura_2" # 炸天妇罗(熟) DUMPLING_1 = "rtdd:oil_frieddumplings_1" # 炸饺子(生, 油锅+饺子合体) DUMPLING_2 = "rtdd:oil_frieddumplings_2" # 炸饺子(熟) # 盘装成品(掉落物形式, 归 youguo_finished) PLATE_CHICKEN = "rtdd:plate_38" # 盘装鸡块 PLATE_PORK = "rtdd:plate_36" # 炸猪排(盘装) PLATE_FRIES = "rtdd:plate_37" # 炸薯条(盘装) PLATE_FISH = "rtdd:plate_39" # 盘装炸鱼 PLATE_TEMPURA = "rtdd:plate_49" # 天妇罗炸虾 PLATE_DUMPLINGS = "rtdd:plate_51" # 炸饺子(盘装) # ============================================================================ # 二、右键规则 (方块, 手持物品) -> 规则 # target=替换方块; consume=消耗手持; give=给背包; startTimer=转换后启动计时; # action=take_out(出锅: 清方块+掉落盘装成品) # ============================================================================ SWITCH_RULES = [ # ---- 一、油锅基础 ---- {"block": OILPOT_0, "item": OILCAN, "target": OILPOT_1, "consume": 1, "give": MEDICINE_TANK, "tip": None}, {"block": OILPOT_1, "item": MEDICINE_TANK, "target": OILPOT_0, "consume": 1, "give": OILCAN, "tip": None}, # ---- 二、放料(满油锅 + 裹粉半成品 -> 炸物(生), 开始计时炸制) ---- # 油锅下须是 点燃的炉灶(stove_2) 才允许放料(否则不炸制) {"block": OILPOT_1, "item": BREADED_CHICKEN, "target": CHICKEN_0, "consume": 1, "startTimer": CHICKEN_0, "needBelow": LIT_STOVE, "belowTip": "§c油锅需要放在点燃的炉灶上", "tip": None}, {"block": OILPOT_1, "item": BREADED_PORK, "target": PORK_0, "consume": 1, "startTimer": PORK_0, "needBelow": LIT_STOVE, "belowTip": "§c油锅需要放在点燃的炉灶上", "tip": None}, {"block": OILPOT_1, "item": BREADED_FRIES, "target": FRIES_0, "consume": 3, "startTimer": FRIES_0, "needBelow": LIT_STOVE, "belowTip": "§c油锅需要放在点燃的炉灶上", "tip": None}, {"block": OILPOT_1, "item": BREADED_FISH, "target": FISH_0, "consume": 1, "startTimer": FISH_0, "needBelow": LIT_STOVE, "belowTip": "§c油锅需要放在点燃的炉灶上", "tip": None}, {"block": OILPOT_1, "item": BREADED_TEMPURA, "target": TEMPURA_1, "consume": 4, "startTimer": TEMPURA_1, "needBelow": LIT_STOVE, "belowTip": "§c油锅需要放在点燃的炉灶上", "tip": None}, {"block": OILPOT_1, "item": DUMPLINGS, "target": DUMPLING_1, "consume": 3, "startTimer": DUMPLING_1, "needBelow": LIT_STOVE, "belowTip": "§c油锅需要放在点燃的炉灶上", "tip": None}, # ---- 三、出锅(熟炸物 + 盘子 -> 掉落盘装成品) ---- {"block": CHICKEN_2, "item": PLATE, "action": "take_out", "dropItem": PLATE_CHICKEN, "consume": 1, "tip": None}, {"block": PORK_2, "item": PLATE, "action": "take_out", "dropItem": PLATE_PORK, "consume": 1, "tip": None}, {"block": FRIES_2, "item": PLATE, "action": "take_out", "dropItem": PLATE_FRIES, "consume": 1, "tip": None}, {"block": FISH_2, "item": PLATE, "action": "take_out", "dropItem": PLATE_FISH, "consume": 1, "tip": None}, {"block": TEMPURA_2, "item": PLATE, "action": "take_out", "dropItem": PLATE_TEMPURA, "consume": 1, "tip": None}, {"block": DUMPLING_2, "item": PLATE, "action": "take_out", "dropItem": PLATE_DUMPLINGS, "consume": 1, "tip": None}, ] # ============================================================================ # 三、计时规则(供 YouguoTimerService) # below: 炸物方块正下方须是 点燃的炉灶(stove_2) 才计时 # ============================================================================ TIMER_RULES = [ # 炸鸡块: 生->半熟60秒, 半熟->熟30秒 {"source": CHICKEN_0, "target": CHICKEN_1, "time": 2, "below": [LIT_STOVE], "autoStart": True}, {"source": CHICKEN_1, "target": CHICKEN_2, "time": 2, "below": [LIT_STOVE], "autoStart": True}, # 炸猪排 {"source": PORK_0, "target": PORK_1, "time": 2, "below": [LIT_STOVE], "autoStart": True}, {"source": PORK_1, "target": PORK_2, "time": 2, "below": [LIT_STOVE], "autoStart": True}, # 炸薯条 {"source": FRIES_0, "target": FRIES_1, "time": 2, "below": [LIT_STOVE], "autoStart": True}, {"source": FRIES_1, "target": FRIES_2, "time": 2, "below": [LIT_STOVE], "autoStart": True}, # 炸鱼块 {"source": FISH_0, "target": FISH_1, "time": 2, "below": [LIT_STOVE], "autoStart": True}, {"source": FISH_1, "target": FISH_2, "time": 2, "below": [LIT_STOVE], "autoStart": True}, # 炸天妇罗(单级: 生->熟60秒) {"source": TEMPURA_1, "target": TEMPURA_2, "time": 2, "below": [LIT_STOVE], "autoStart": True}, # 炸饺子(单级: 生->熟60秒, 油锅+饺子合体) {"source": DUMPLING_1, "target": DUMPLING_2, "time": 2, "below": [LIT_STOVE], "autoStart": True}, ] # ============================================================================ # 四、中文名映射(提示用) # ============================================================================ NAME_MAP = { OILPOT_0: "油锅(空)", OILPOT_1: "油锅(满油)", OILCAN: "油罐", MEDICINE_TANK: "玻璃罐", PLATE: "盘子", LIT_STOVE: "点燃的炉灶", BREADED_CHICKEN: "裹粉鸡块", BREADED_PORK: "裹粉猪肉", BREADED_FRIES: "裹粉薯条", BREADED_FISH: "裹粉鱼", BREADED_TEMPURA: "裹粉天妇罗", DUMPLINGS: "生饺子", CHICKEN_0: "炸鸡块(生)", CHICKEN_1: "炸鸡块(半熟)", CHICKEN_2: "炸鸡块(熟)", PORK_0: "炸猪排(生)", PORK_1: "炸猪排(半熟)", PORK_2: "炸猪排(熟)", FRIES_0: "炸薯条(生)", FRIES_1: "炸薯条(半熟)", FRIES_2: "炸薯条(熟)", FISH_0: "炸鱼块(生)", FISH_1: "炸鱼块(半熟)", FISH_2: "炸鱼块(熟)", TEMPURA_1: "炸天妇罗(生)", TEMPURA_2: "炸天妇罗(熟)", DUMPLING_1: "炸饺子(生)", DUMPLING_2: "炸饺子(熟)", PLATE_CHICKEN: "盘装鸡块", PLATE_PORK: "炸猪排(盘装)", PLATE_FRIES: "炸薯条(盘装)", PLATE_FISH: "盘装炸鱼", PLATE_TEMPURA: "天妇罗炸虾", PLATE_DUMPLINGS: "炸饺子(盘装)", }