Files
rtdd/tuilun/全部功能做了什么.txt
T
2026-09-11 12:09:01 +08:00

639 lines
43 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
========================================
全部功能 - 已实现功能记录
(汇总所有功能分类的"做了什么",按分类分节)
========================================
说明:
- 本文件汇总全部功能分类的已实现内容
- 每节对应一个功能分类(如 动物养殖 / 烧烤),后续新分类在此追加
- 各分类的详细转换流程见 tuilun 下对应的《XX转化关系.txt》
########################################
【动物养殖】(xy_animal)
########################################
一、鸡窝(产蛋) —— 低级机制
- 放蛋: 手持鸡蛋右键鸡窝逐级放置递增 (0蛋→1蛋→…→5蛋), 每次消耗1个鸡蛋,
提示 "鸡蛋已放入鸡窝 (N/5)" [已实现]
- 取蛋: 空手右键取走对应数量鸡蛋, 以掉落物形式获得, 回到0蛋形态,
提示 "取走了 N 个鸡蛋" (5/4/3/2/1蛋均可取) [已实现]
二、鸡饲料盆 (chickenmanger_0/1)
- 填充: 手持种子右键, 消耗16个种子 → 满, 提示 "鸡饲料已加满" [已实现]
- 计时变空: 满盆计时60秒 → 自动变空, 开始提示 "鸡饲料已加满,鸡正在进食…",
完成提示 "鸡饲料已吃完" [已实现]
三、饲料槽-小麦 (manger_0/3/2/1)
- 填充: 手持小麦右键, 消耗32个小麦 → 满, 提示 "小麦饲料已加满" [已实现]
- 计时逐级变空: 满→半量→少量→空, 每级计时60秒, 吃完提示 "小麦饲料已吃完" [已实现]
四、饲料槽-水 (manger_0/mangerwater)
- 加水: 手持水桶右键 → 水槽, 消耗水桶返还空桶, 提示 "已给饲料槽加水" [已实现]
五、饲料槽-胡萝卜 (manger_0/pigmanger_1/2)
- 填充: 手持胡萝卜右键, 消耗32个胡萝卜 → 满, 提示 "胡萝卜饲料已加满" [已实现]
- 计时逐级变空: 满→半量→空, 每级计时60秒, 吃完提示 "胡萝卜饲料已吃完" [已实现]
六、粪便 (feces_3/2/1)
- 清理: 空手右键逐级清理 (一坨→半坨→仅痕迹→消失), 提示 "清理了粪便" [已实现]
########################################
【烧烤】(xy_barbecue)
########################################
一、烧烤架 (barbecuegrill_0/1)
- 点火: 无火烧烤架_1 + 打火石 → 点燃烧烤架_2 (打火石不消耗) [已实现]
- 点火: 无火烧烤架_1 + 烈焰弹 → 点燃烧烤架_2 (消耗1个烈焰弹) [已实现]
- 灭火: 点燃烧烤架_2 + 水桶 → 无火烧烤架_1 (消耗水桶,返还空桶) [已实现]
二、烤串 (放烧烤架上,右键2次转换,不计时,需下方点燃烧烤炉)
- 牛肉串: beefkebabs_1(生) → beefkebabs_0(半熟) → beefkebabs_3(熟) [已实现]
- 羊肉串: lambkebabs_1(生) → lambkebabs_0(半熟) → lambkebabs_3(熟) [已实现]
- 烤蔬菜串: roasted_vegetables_0(生) → _1(半熟) → _3(熟) [已实现]
- 烤香菇串: roastedmushrooms_0(生) → _1(半熟) → _3(熟) [已实现]
- 失败提示: 下方不是点燃的烧烤炉 → "§c下方不是点燃的烧烤炉,无法翻烤!" [已实现]
三、上杆 (手持生食材右键 支杆b_34)
- 生鸡肉(放置后) roastchickenplace_0 → 烤鸡(上烤架_生) roastchicken_0 [已实现]
- 死猪 dead_pig → 烤乳猪(生) roastpig_0 [已实现]
- 鳕鱼 minecraft:cod → 烤鳕鱼(生) grilledcod_0 [已实现]
- 鲑鱼 minecraft:salmon → 烤鲑鱼(生) grilled_fish [已实现]
四、计时烤制 (支杆下方篝火 campfire,约60秒,右键激活 autoStart=False)
- 烤鸡: roastchicken_0(生) → roastchicken_1(熟) [已实现]
- 烤乳猪: roastpig_0(生) → roastpig_1(熟) [已实现]
- 烤鳕鱼: grilledcod_0(生) → grilledcod_1(熟) [已实现]
- 烤鲑鱼: grilled_fish(生) → grilled_salmon(熟) [已实现]
- 开始提示 "§e开始烤制烤X,约60秒…" / 完成提示 "§e烤X烤熟了!" [已实现]
- 下方无篝火: 拒绝开始 "§c支杆下方需要放一个篝火(营火)才能烤制!" [已实现]
- 烤制中拿走篝火: 暂停,篝火放回继续 (保持原时间戳) [已实现]
- 退出/重启游戏: 继续计时 (绝对时间戳写入方块实体数据持久化) [已实现]
五、取下 (空手右键烤熟方块,以掉落物形式获得整只)
- 烤鸡(熟) roastchicken_1 → b_34 + 掉落 烤鸡整只 roast_chickenplace_1,
提示 "§a取下了烤鸡(整只)" [已实现]
- 烤乳猪(熟) roastpig_1 → b_34 + 掉落 烤乳猪整只 roastpignew_1,
提示 "§a取下了烤乳猪(整只)" [已实现]
六、手持物品右键方块表面 (ServerItemUseOnEvent)
- 手持原版生鸡肉 minecraft:chicken 右键任意方块表面 → 生成 生鸡肉(放置后)
roastchickenplace_0, 消耗1个, 提示 "已放置生鸡肉,可右键支杆上杆烤制" [已实现]
########################################
【通用架构】
########################################
- 右键转换与计时转换已拆分为两个独立类 (XxxService / XxxTimerService), 解耦 [已实现]
- 事件由 FeatureDispatcher 统一监听路由 (blockOwner/itemUseOnOwner/timerOwner) [已实现]
- 右键服务通过 FeatureDispatcher.startTimerFor 把计时启动转发给计时服务 [已实现]
- 计时用绝对时间戳写入方块实体数据, 支持退出/重启后继续计时 [已实现]
- 原版放置(手持原版生鸡肉/鲑鱼/鳕鱼右键方块表面放置对应方块)已拆到独立目录
xiangyemod/yuanbanfangzhi (YuanbanData/YuanbanService), 从烧烤/死亡生物中剔除 [已重构]
- 原版食物成品盘转换(乡野食物·原版食物): 手持原版食物右键 空盘子(rtdd:plate_0) →
盘子本身变为对应成品盘, 消耗1个食物; 生鱼片(plate_17)可用 鳕鱼/鲑鱼/热带鱼
(含网易端鳕鱼报 minecraft:fish 兼容) [已实现]
南瓜派→plate_16 / 西瓜片→plate_18 / 面包→plate_20 / 曲奇→plate_21 / 熟鸡肉→plate_4
(实现于 xiangyemod/yuanbanfangzhi/YuanbanData.py PLATE_RULES + YuanbanService, 替换模式)
########################################
【食材补齐】(2026-09-02 第二批)
########################################
- 大米(brownrice): 从Java版迁入, 归乡野食材/谷物·米面组, 用于生米锅/米饭/竹筒饭/蛋炒饭 [已迁移]
- 生面(noodles): 从Java版迁入, 归面食.甜食/面粉·面团组, 用于汤锅生面汤/炒锅意面 [已迁移]
- 牛肋(costillavacaes): 从Java版迁入, 归乡野食材/肉类·肉馅组, 用于胡萝卜牛排骨(菜名保留"牛排骨") [已迁移]
- 葱(scallions): 从Java版迁入, 归乡野食材/蔬菜·切配组, 用于炒锅加葱/葱花锅底 [已迁移]
- 香菜锅底 → 改名"葱花锅底"(食材用葱): Java版无香菜, 触发食材已从青菜改为葱 [已改]
########################################
【死亡生物】(xy_deadmob) 2026-09-02
########################################
一、挂肉钩-挂放 (手持尸体/原版鱼右键空钩 meathook, 消耗1)
- 死牛→整只牛(cow_0)、死猪→整只猪(pig_0)、死羊→整只羊(sheep) [已实现]
- 原版鲑鱼(salmon)→鲑鱼挂一条→两条(hang_meat_hooks_1/2) [已实现]
- 原版鳕鱼(cod)→鳕鱼挂一条→两条(meathookcod_1/2) [已实现]
二、挂肉钩-切肉 (手持 菜刀cleaver, 不可逆, 掉落物随机数量)
- 牛: 去头掉牛头骨1+原版牛肉4~5 → 去四肢掉牛腿肉4 → 去肉掉牛肋2~3+牛里脊2~3+牛肉4~5 → 空钩掉碎肉2~3+牛肉4~5 [已实现]
- 猪: 去皮掉五花肉2~3+生猪排4~5 → 去四肢掉猪蹄4 → 去肉掉猪肋排2~3+生猪排4~5 → 空钩掉碎肉2~3+生猪排4~5 [已实现]
- 羊: 去皮掉羊小排2~3+生羊肉4~5 → 去四肢掉羊腿4 → 去肉掉羊里脊2~3+生羊肉4~5 → 空钩掉碎肉2~3+生羊肉4~5 [已实现]
三、挂肉钩-取下退回 (切前空手右键, 掉落回尸体)
- 整只牛/猪/羊 → 空钩 + 掉落回 死牛/死猪/死羊 [已实现]
四、鱼晾干 (计时300秒, 挂上自动开始 autoStart=True)
- 鲑鱼挂一条→干一条、两条→干两条; 鳕鱼挂两条→干两条 [已实现]
五、取鱼干 (空手右键干钩, 掉落物)
- 干鲑鱼/干鳕鱼钩 → 掉落 鱼干(thedriedfish) [已实现]
六、死鱼/死鱿鱼切块 (手持菜刀)
- 死鲑鱼: 4刀每刀掉1份生鱼片, 共4份 → 消失 [已实现]
- 死鳕鱼: 3刀每刀掉1份生鱼片, 共3份 → 消失 [已实现]
- 死鱿鱼: 切须掉5~6个鱿鱼须 → 变死鱿鱼(切掉鱿鱼须) [已实现]
七、手持原版鱼右键方块表面放置死鱼 (ServerItemUseOnEvent)
- 原版生鲑鱼(salmon) 右键方块表面 → 在其表面放置 死鲑鱼(killfish_0), 消耗1条 [已实现]
- 原版鳕鱼(cod) 右键方块表面 → 在其表面放置 死鳕鱼(killcod_0), 消耗1条 [已实现]
- 注意: 网易端 ItemUseOn 事件对生鳕鱼报的 itemName 是 minecraft:fish, 已额外注册, 否则放置不了 [已实现]
- 被点方块是挂肉钩/挂鱼钩/尸体等死亡生物方块时跳过, 交还挂鱼逻辑 [已实现]
七之补、拆方块掉回原版生食材 (ServerPlayerTryDestroyBlockEvent)
- 破坏 死鲑鱼(killfish_0) → 掉落 原版生鲑鱼 1条 [已实现]
- 破坏 死鳕鱼(killcod_0) → 掉落 原版生鳕鱼 1条 [已实现]
- 破坏 生鸡肉(放置后 roastchickenplace_0) → 掉落 原版生鸡肉 1个 [已实现]
- 取消默认掉落, 不把方块本身掉出来
八、去皮额外掉落原版皮革
- 牛/猪/羊 去皮步骤额外掉落 原版皮革(minecraft:leather) 4~6个 [已实现]
【未做】尸体生成机制(玩家杀死生物生成尸体) 按txt标注暂时不搞
########################################
【手办】(xy_shouban) 2026-09-02
########################################
一、盲盒开盒 (空手右键 盲盒_未开 jewelrybox_0)
- 换为 盲盒_开过 jewelrybox_1, 随机开出 1 个手办(掉落物形式), 提示 "盲盒开出了XX!" [已实现]
- 开出范围: 猫手办_0(cat_0)、狐狸手办_0(fox_0)、赞助者手办_1~6(figurines~5) 共8种均等概率 [已实现]
- 注意: 只开猫/狐狸转换链【第一个】, cat_1~3、fox_1~3 无法从盲盒开出 [已实现]
二、猫/狐狸手办循环切换 (空手右键逐级切换)
- 猫: cat_0 → cat_1 → cat_2 → cat_3 → cat_0 (循环) [已实现]
- 狐狸: fox_0 → fox_1 → fox_2 → fox_3 → fox_0 (循环) [已实现]
- 说明: cat_1~3、fox_1~3 只能通过循环转换获得
三、静态手办 (无转换)
- 赞助者手办_1~6(figurines~5) 仅由盲盒开出, 无右键转换 [已实现]
########################################
【市场贸易】(xy_market) 2026-09-03
########################################
一、条箱 放入/取出 (woodenbox_0~7)
- 放入: 手持对应物品右键 空条箱 → 消耗32个 → 变为对应条箱(苹果/胡萝卜/土豆/桃子/橘子/鳕鱼/鲑鱼) [已实现]
- 取出: 空手右键装满条箱 → 空条箱 + 掉落32个对应物品 [已实现]
二、货桶 放入/取出 (fishbucket_0 等)
- 放入: 手持对应物品右键 空货桶 → 消耗32个 → 变为对应货桶(鳕鱼/鲑鱼/胡萝卜/土豆/桃子/橘子/苹果) [已实现]
- 取出: 空手右键装满货桶 → 空货桶 + 掉落32个对应物品 [已实现]
三、售卖盒 放入/取出 (sellingboxes 等)
- 放入: 手持对应物品右键 空售卖盒 → 除南瓜/西瓜消耗1个原版方块外, 其余消耗32个 → 变为对应售卖盒(含 售卖盒(鲑鱼) b_30) [已实现]
- 取出: 空手右键装满售卖盒 → 空售卖盒 + 取回(南瓜/西瓜1个原版方块, 其余32个) [已实现]
四、悬赏纸循环 (空手右键逐级切换)
- bountypaper → bountypaper_1 → bountypaper_2 → bountypaper [已实现]
五、布料已按标注禁用 [已处理]
- 售卖盒(黄绿布料 clothbox_1)、售卖盒(棕色布料 clothbox_2): 名字带"禁用", 已调去 禁用(xy_jinyong) 标签, 移出市场分组, 旧切换规则已移除
########################################
【家具家私】(xy_furniture) 2026-09-03
########################################
(旧 BlockSwitchService 已废弃, 全部 7 个功能统一由 xiangyemod/jiaju 的
FurnitureData+FurnitureService 实现, 注册到 FeatureDispatcher)
一、箭桶 (arrowbarrel_0 无箭 / arrowbarrel_1 有箭)
- 存箭: 手持箭(普通箭/药水箭)右键, 批量存入手中所有箭, 至多32只, count记录
(类型/药水效果aux不符不能混存, 记录写方块实体数据 rtdd_swt=count, 退出重进不丢) [已实现]
- 取箭: 空手右键, 一次性取回方块记录的全部箭(数量+类型+药水效果aux) [已实现]
二、水槽 (flume_0~5)
- 加水: 空手右键空槽 → 满水 [已实现]
- 取水: 手持空水桶右键满水 → 空槽 + 返还装满水的水桶 [已实现]
- 放水: 空手右键满水 → 直接把水放掉回到空槽(不放水桶取水) [已实现]
- 放脏盘子: 满水起手持脏盘子(rtdd:plate_0a)逐个放入(最多4个), 消耗1个 [已实现]
- 取盘子: 空手右键逐个取回, 取回的是洗好的 盘子(rtdd:plate_0); 取完最后一个 → 空槽 [已实现]
三、盘子架 (trayracks_1 空 ~ trayracks_6 五个)
- 放盘子: 手持盘子逐个放入(最多5个), 消耗1个 [已实现]
- 取盘子: 空手右键逐个取回 [已实现]
三b、碗柜 (cupboard_0 空 ~ cupboard_3 三个碗)
- 放碗: 手持木碗(rtdd:bowlasoup)右键逐个放入(最多3个), 消耗1个 [已实现]
- 取碗: 空手右键逐个取回(掉落物形式) [已实现]
- 满柜: 手持木碗右键三个碗的碗柜 → 提示"碗柜已满", 拦截默认行为 [已实现]
四、书柜 (bookcase 系列, 后放先取, 至多13本)
- 放书: 手持书/附魔书右键逐个放入, 消耗1本; 堆栈"替换方块前从旧方块读出→替换后写回新方块",
多本连续放入不会丢 [已实现]
- 取书: 空手右键后放先取(LIFO), 取回的书以掉落物形式掉在书柜前(不进背包) [已实现]
- 附魔书: 附魔以扁平ench字段([[附魔ID,等级],...])存方块实体(rtdd_swt=stack/rtdd_sws),
取回时重建userData; 不存含__type__/__value__的userData(引擎写不进方块实体),
退出重进词条不丢(掉落保护仍是掉落保护) [已实现]
- 健壮性: 方块实体里损坏/为None的旧堆栈数据按空堆栈处理, 不再报错(TypeError) [已实现]
四b、药水架 (lotion 系列, 后放先取, 至多3瓶)
- 从药物系统(xy_medicine)移至家具分类(xy_furniture) [已实现]
- 放药水: 手持任意药水(普通/喷溅/滞留)右键逐个放入, 消耗1瓶, 记录药水名+aux(aux决定效果) [已实现]
- 取药水: 空手右键后放先取(LIFO), 取回的药水以掉落物形式掉在架前(原样返还, 含aux效果) [已实现]
- 满架: 手持药水右键三瓶满的药水架 → 提示"已满", 拦截默认行为(防止误喝药水) [已实现]
- 方块链: 药水架_1(空)=lotion_0, 药水架_2(一瓶)=lotion_1, 药水架_3(两瓶)=lotion_2,
药水架_4(三瓶)=lotion_3 [已实现]
五、厨具架 (kitchenwarerack 系列, 组合顺序无关, 后放先取, 至多2件)
- 放入: 手持 锅铲/锅勺/菜刀/炒锅 右键空架/未满架 → 消耗1个 → 按组合成型 [已实现]
(组合与顺序无关: 先放锅再放刀 == 先放刀再放锅, 都是 炒锅+菜刀;
空+锅铲→单锅铲, 空+锅勺→单锅勺, 空+菜刀→单菜刀, 空+炒锅→单炒锅;
双锅铲/锅铲+锅勺/双锅勺/炒锅+菜刀/菜刀+锅铲/双菜刀/菜刀+锅勺)
- 取回: 空手右键 → 后放先取(LIFO), 取回最后放入的厨具, 形态退回剩余单件/空 [已实现]
六、古式唱片机 (b_108 无碟 / b_109 有碟)
- 放入: 手持任意原版唱片(minecraft:music_disc_*)右键无碟 → 有碟, 消耗1个, 记录唱片 [已实现]
- 取回: 空手右键 → 无碟 + 掉落该唱片(原样返还, 记录在方块实体数据, 退出重进不丢) [已实现]
- 注: 放入后播放对应唱片曲目 待后续实现 【未做】
七、垃圾桶 (storage_buckets 关闭 / rubbish_bin_2 打开 / b_160 有垃圾)
- 打开: 右键垃圾桶(空手/手持均可) → 打开桶盖(不消耗物品) [已实现]
- 扔垃圾: 打开时手持任意物品右键 → 变为 有垃圾 状态 + 清空主手物品 [已实现]
- 关闭: 右键(空手/手持均可) 打开/有垃圾 → 关闭桶盖 [已实现]
七b、壁炉 (b_88 壁炉 / b_89 壁炉(加柴火) / b_90 壁炉(点燃))
- 加柴: 手持木条(rtdd:b_15)右键空壁炉 → 加柴火, 消耗4个木条 [已实现]
- 点燃: 手持打火石(不消耗)/烈焰弹(消耗1)右键加柴火 → 点燃 [已实现]
八、左键破坏存物方块掉落 (书柜/药水架/厨具架)
- 存了东西的家具方块被左键打碎时: 取消默认掉落 → 掉 空方块本体(保留朝向) + 全部存储物品 [已实现]
(书柜掉空书柜bookcase+里面的书; 药水架掉空药水架lotion_0+里面的药水; 厨具架掉空架+厨具)
- 附魔书/药水效果在掉落物中保留(取回时重建, 词条/效果不丢) [已实现]
- 与售卖盒区分: 售卖盒破坏重放仍可右键取物; 书柜这类破坏后记录随方块消失, 重放取不到 [已实现]
########################################
【乡野饮料】(xy_drink) 2026-09-04
########################################
实现于 xiangyemod/yinliao (YinliaoData + YinliaoService + YinliaoTimerService, 注册到 FeatureDispatcher)
一、榨汁机 (果汁·榨汁饮品, juicer 系列, 全流程右键)
- 空(juicer) + 水果(消耗1) → 放入水果(juicer_0), 并把水果类型写入方块实体数据(rtdd_jf) [已实现]
- 放入水果 → 榨汁中1 → 榨汁中2 → 榨汁中3 → 完成: 右键逐级推进(每级0.5s冷却) [已实现]
- 完成(juicer_4) 手持玻璃杯(fruitjuice_0)右键(消耗1玻璃杯) → 掉落对应果汁 + 还原空(juicer) [已实现]
- 果汁由第一步放入的水果决定: 西瓜片→西瓜汁(fruitjuice_1)/橙子→橙汁(_2)/苹果→苹果汁(_3)/
桃子→桃子汁(_4)/葡萄→葡萄汁(_6)/黄豆→豆浆(_7) [已实现]
- 持久化: 每次换态 SetBlockNew 会清空方块实体, 都"先读旧→替换→写回新", 玩家在 榨汁2→榨汁3
过程中退出游戏, 重进后取出的果汁仍是第一步放入的水果类型 [已实现]
- 黄豆(rtdd:soybean) 物品已从Java版迁入(物品/纹理/名称齐全) [已实现]
二、冰棍盒 (冰棍, icelollybox 系列)
- 未定型(icelollybox_1) + 冰块(消耗1, 原版冰/冰砖/蓝冰/霜冰) → 启动30秒定型计时
(autoStart=False, 右键激活; 已在定型中不重复消耗) → 定型(icelollybox_2) [已实现]
- 定型 + 对应水果(消耗2) → 各口味冰棍盒(icelollyboxb 橙子/c 苹果/d 桃子/e 葡萄/f 西瓜) [已实现]
- 各口味冰棍盒 空手右键 → 掉落2根对应冰棍 + 还原未定型 [已实现]
- 定型计时用绝对时间戳写方块实体数据, 退出重进继续计时 [已实现]
三、冰棍堆 (组合, 顺序无关, 空手取回按方块状态固定, 不存数据)
- 单根 橙子冰棍/西瓜冰棍 放地上 + 手持另一根右键(消耗1) → 冰棍堆(橙子+西瓜 popsiclepile_2)
(先放橙子再放西瓜 == 先放西瓜再放橙子, 都会变成 冰棍堆) [已实现]
- 冰棍堆 + 苹果冰棍(消耗1) → 冰棍堆2(橙子+西瓜+苹果 popsiclepile_3) [已实现]
- 空手右键: 冰棍堆2 取出 苹果冰棍 → 退回 冰棍堆; 冰棍堆 取出 西瓜冰棍 → 变回 单根橙子冰棍 [已实现]
四、炒冰盒 (冰棍盒·炒冰盒, frytheicebox 系列)
- 空(frytheicebox) + 冰块(消耗1) → 放冰(frytheicebox_1) [已实现]
- 放冰 + 对应水果(消耗1) → 各口味炒冰盒(苹果/葡萄/西瓜/橘子/桃子) [已实现]
- 各口味炒冰盒 空手右键 → 掉落1个对应冰沙 + 还原空 [已实现]
- 五种口味冰沙齐全: 西瓜冰沙(melonicecreamplace) 已从禁用移回乡野饮料, 正常取出 [已实现]
五、分类/分组调整
- 西瓜冰沙(melonicecreamplace): 分类 禁用(xy_jinyong) → 乡野饮料(xy_drink),
名称 西瓜冰棍_2(西瓜冰棍)禁用 → 西瓜冰沙, 放入 冰棍(drink_03_popsicle) 分组 [已调整]
- 黄豆(rtdd:soybean): 归乡野食材(xy_ingredients), 放入 谷物·米面(ingr_08_grain) 分组 [已调整]
- 玻璃罐(rtdd:medicinetank): 分类 药物系统(xy_medicine) → 厨具(xy_kitchenware) [已调整]
(药罐_1~4 medicinetank_1~4 仍留在药物系统分类)
########################################
【文档重写】(2026-09-04 关联整理)
########################################
- 厨具转化关系.txt: 重写, 把已写好的 todo 转正为正式规则:
搅拌器(肉馅取出/牛奶蛋互通到鸡蛋牛奶/盘子取蛋液半成品)、蒸笼(反向开盖)、
带油锅铲(上油后变回锅铲)、锅勺(汤锅翻煮)、新增 石磨(磨黄豆->玻璃罐->油罐)、
擀面杖(加工中消耗, 最后一步掉落返还) [已整理]
- 乡野食材转化关系.txt: 重写, 分组调整为8组, 各类"XX堆"集中到新组【食材堆】;
新增【原版放置】说明(原版胡萝卜/土豆/青菜右键放置成切配方块);
标注缺失 青菜原版态(plantvegetables/vegetable) 需从Java版迁入 [已整理]
- 寿司转化关系.txt: 重写, "干海带+大米"改为"干海带+米饭"(米饭=汤锅煮米木碗盛出),
逻辑严谨区分 竹筒饭用生大米 [已整理]
- 面食.甜食转化关系.txt: 重写, 补 擀面杖消耗/蛋液半成品来源(搅拌器)/米饭vs大米区分 [已整理]
- 乡野自然转化关系.txt: 重写, 柴火堆放/取用转正, 关联水果/大米到食材分类 [已整理]
- 汤锅/炒锅/油锅: 补关联, 米饭来源(汤锅盛出供寿司/蛋炒饭)、油罐来源(石磨制) [已整理]
【缺失食材·已创建】(对比Java版, 已迁入基岩版行为包)
- 物品类(8个, 均归乡野食材/成品分类, 贴图/JSON/item_texture/lang 齐全):
胡萝卜碎(crushed_carrots)、葱花碎(crushed_scallions)、土豆块(potato_wedges)、
奶油(cream_0)、稻谷(rice_seeds)、青菜(qingcai)、青菜碎(vegetable)、
饭团(rice_balls,乡野食物)、水煮蛋(boiled_egg,乡野食物)
- 青菜物品(qingcai): 整颗未切青菜, 贴图 meiqiedeqingcai.png, 与原版放置衔接
(手持青菜物品右键放置→切青菜摆放地上); 原 vegetable 物品改名"青菜碎" [已调整]
- 青菜方块(plantvegetables): 已删除(不再使用原版态放置方块) [已删除]
【已放弃·不创建】(用户确认不迁入)
- 鸡腿(raw_chicken_thighs)、鸡翅(raw_chicken_wings)、大饼(bannock) —— 已删除已建文件
- 调料瓶(spicebottle)、香菇串(shiitake_mushroom_skewers)、烤白菜串(cabbage_skewers)、
蒜苗(a_14/a_16/a_17/a_21)、黑胡椒(blackpepper) —— 未创建, 不再迁入
【食材分组·已落地】(ingredients_groups.json / xy_Ingredients.json / lang 三处同步)
- 新建"食材堆"分组(ingr_09_pile): 土豆堆/胡萝卜堆/桃子堆/橙子堆/苹果堆/鸡蛋堆/鲑鱼堆/鳕鱼堆/面包堆 集中
- 原"蔬果·堆类"(ingr_04_crop) 改名"蔬果·水果": 只留 葡萄/桃子/橙子(单个水果)
- 新食材归组: 胡萝卜碎/葱花碎/土豆块/青菜/青菜碎→蔬菜·切配; 稻谷→谷物·米面; 奶油→调味·佐料 [已调整]
- 乡野食材转化关系.txt 重写纳入新食材(8分组+新食材+稻谷/奶油/切配半成品) [已整理]
- 关联补充: 稻谷→水稻种植(乡野自然)、土豆块→裹粉薯条(油锅) [已整理]
【全局重写·基于行为包实际方块清单】(2026-09-04 第二轮)
- 8个转化关系txt 全部按行为包 netease_blocks/netease_items_beh 实际方块名重写,
不再沿用旧文档的"翻译名", 并串联分类间关联:
- 厨具: stove/beater/meatballmaker/steamer/stonemill/oilcan/medicinetank 等工具层
- 炒锅: wok/coverthepan/oilpan + carrotpotbase/vegetablespotbase/cooking_pepper 锅底 + 各菜谱方块
- 汤锅: stewedsoup/stewedsoupwater/coverthepot + 各汤底/汤羹 + rawricepot/ricepot 米饭流程
- 油锅: oilpot_0/1 + 各炸物方块 + plate_* 成品
- 面食: farineblcok/rawdough/dough 面团链 + dumplings/baozipi/bamboo/bread/cake 各系列
- 寿司: sushi_0/1 + codsushi/salmonsushi/fishsushi/nigirisushi/sushipile/plate 系列
- 乡野食材: 8分组(含食材堆/蔬果·水果) + 新食材 + 切配半成品
- 乡野自然: apple_leaves/tangerine/grapebushes/firewood/riceseedlings + 稻谷种植 [已重写]
########################################
【厨具】(xy_kitchenware) 2026-09-07
########################################
实现于 xiangyemod/chuju (ChujuData + ChujuService + ChujuTimerService, 注册到 FeatureDispatcher)
一、炉灶 (stove -> stove_1 -> stove_2)
- 加柴: 手持木条(b_15)右键空炉灶 → 加木条(stove_1), 消耗4个木条 [已实现]
- 点燃: 手持打火石(不消耗)/烈焰弹(消耗1)右键加木条 → 点燃(stove_2) [已实现]
二、丸子机 (meatballmaker_0~5, 章鱼小丸子)
- 放面团: 手持面团(dough_0)右键空丸子机 → 加入面团(meatballmaker_1), 消耗1个 [已实现]
- 放鱿鱼须: 手持鱿鱼须(rawsquidwhiskersr)右键 → 加入鱿鱼(meatballmaker_2), 消耗4个 [已实现]
- 放配料: 手持任意物品右键 → 加入配料(meatballmaker_3), 消耗1个;
需下方是点燃的炉灶(stove_2), 否则提示拒绝 [已实现]
- 计时熟化: 加料完成(_3) 计时30秒 → 半熟(_4) 计时30秒 → 熟(_5)
(autoStart 自动启动, 绝对时间戳写方块实体数据, 退出重进继续计时;
全程需下方持续存在 stove_2, 中途拿走则暂停, 放回继续) [已实现]
- 取成品: 手持盘子(plate_0)右键熟 → 掉落 章鱼小丸子_完整(plate_40) + 还原空 [已实现]
三、搅拌器 (beater 系列)
- 搅肉: 空+肉(一次性消耗2个) → 肉_1, 空手右键搅打 → 肉_2; 空手取 生猪肉馅(rawmeatball_0)/
生牛肉馅(rawmeatball_1), 按放入肉的种类决定 [已实现]
- 搅奶: 空+牛奶桶(消耗1个, 返还空桶) → 牛奶_1, 空手右键搅打 → 牛奶_2 → 牛奶_3 [已实现]
- 搅蛋: 空+鸡蛋(一次性消耗3个) → 蛋_1, 空手右键搅打 → 蛋_2 → 蛋_3 [已实现]
- 取奶油: 蛋完成态(beater_custard_2) + 木碗(消耗1) → 掉落 奶油(cream_0) + 还原空 [已实现]
- 鸡蛋牛奶: 牛奶_3+蛋 或 蛋_3+牛奶桶(返空桶) → 鸡蛋牛奶_1; 空手搅打 → 鸡蛋牛奶_3 [已实现]
- 取蛋液: 鸡蛋牛奶_3 + 盘子(消耗1) → 掉落 蛋液半成品(plate_34) + 还原空 [已实现]
四、石磨 (stonemill)
- 加黄豆: 手持黄豆(soybean)右键石磨 → 加入黄豆, 消耗16个 [已实现]
- 研磨: 空手右键旋转(每次90度), 4次回归完成; 进度存方块实体数据 rtdd_mill(退出重进不丢) [已实现]
- 取油罐: 研磨完成 + 玻璃罐(medicinetank, 消耗1) → 掉落 油罐(oilcan) + 石磨回空 [已实现]
五、蒸笼 (steamer <-> steamercover)
- 盖盖/掀盖: 空手右键双向切换 [已实现]
【留后】见 全部功能没做什么.txt 厨具节 (盘子→脏盘子、油罐⇄油锅/锅铲上油、蒸笼蒸熟、锅铲/锅勺/菜刀/擀面杖具体用法)
########################################
【乡野自然·稻谷移动】(2026-09-07)
########################################
- 稻谷(rice_seeds): 分类 xy_ingredients → xy_natural, 从 乡野食材/谷物·米面(ingr_08_grain)
移入 乡野自然/水稻·作物(nat_03_crop) [已调整]
- 乡野自然转化关系.txt: 把新加的 todo 全部转正为正式规则并标【待实现】:
果树"树苗成长"机制、葡萄藤取葡萄(4a)、柴火分解9木条(5b)、水稻成熟取16大米(7a) [已整理]
- 乡野食材转化关系.txt: 移除 稻谷 条目(谷物·米面 只留 大米/生面) [已整理]
- 上述待实现功能已记录到 全部功能没做什么.txt 乡野自然 节
########################################
【乡野自然】(xy_natural) 2026-09-07
########################################
实现于 xiangyemod/ziran (NaturalData + NaturalService + NaturalTimerService, 注册到 FeatureDispatcher)
一、果树结果 (计时, 苹果/桃/橘三条链, autoStart 自动结果)
- 苹果: apple_leaves 计时60秒 -> apple_fruit_1 计时60秒 -> apple_fruit_3 [已实现]
- 桃子: peach_leaves -> b_173(一个) -> b_176(两个) [已实现]
- 橘子: orange_leaves -> tangerine_0 -> tangerine_1 -> tangerine_2 [已实现]
二、葡萄藤 (计时生长 + 取葡萄)
- 生长: grapebushes_1 计时180秒 -> grapebushes_2 [已实现]
- 取葡萄: grapebushes_2 空手右键 -> 掉落3个葡萄(grape) + 变回 grapebushes_1 [已实现]
三、柴火 (堆叠/取用 + 工作台分解)
- 堆叠: firewood_2(柴火_2) + 手持柴火右键 -> firewood(柴火_1 堆放, 消耗1) [已实现]
- 取用: firewood(堆放) 空手右键 -> firewood_2 + 返还1柴火 [已实现]
- 分解: firewood 工作台 -> 9个木条(b_15) (配方 xy_firewood_plank) [已实现]
四、水稻 (种植 + 生长 + 收获)
- 种植: 手持稻谷(rice_seeds) 右键原版耕地(farmland) -> 耕地上方放置 水稻刚种下(riceseedlingsb) [已实现]
- 生长: riceseedlingsb 计时120秒 -> riceseedlingsc 计时120秒 -> riceseedlingsd [已实现]
- 收获(左键破坏): 破坏 刚种下/生长中 -> 掉1稻谷(rice_seeds); 破坏成熟(riceseedlingsd) -> 掉1稻谷 + 16大米(brownrice) [已实现]
【留后】果树"树苗成长"机制 见 全部功能没做什么.txt 乡野自然节
########################################
【乡野食材·切配与裹粉】(xy_ingredients) 2026-09-08
########################################
实现于 xiangyemod/shicai (ShicaiData + ShicaiService, 注册到 FeatureDispatcher)
+ 原版放置扩展 (yuanbanfangzhi/YuanbanData)
一、原版放置(手持原版食材右键方块表面, 放置成"摆放地上"切配方块)
- 胡萝卜(minecraft:carrot) -> 切胡萝卜(摆放地上 cutcarrot_0) [已实现]
- 土豆(minecraft:potato) -> 切土豆(摆放地上 cutpotato_0) [已实现]
- 青菜(rtdd:qingcai) -> 切青菜(摆放地上 cutvegetable_0) [已实现]
- 葱(rtdd:scallions) -> 葱花_1(cutscallions_1) [已实现]
二、菜刀切分(手持 菜刀cleaver 右键, 逐级切, 最后一级再切掉碎)
- 切胡萝卜: cutcarrot_0 -> _1 -> _2 -> _3 -> _4, 再切 -> 掉3胡萝卜碎 + 变空气 [已实现]
- 切土豆: cutpotato_0 -> _1 -> _2 -> _3 -> _4, 再切 -> 掉3土豆块 + 变空气 [已实现]
- 切青菜: cutvegetable_0 -> _1 -> _2 -> _3, 再切 -> 掉3青菜碎(vegetable) + 变空气 [已实现]
- 葱花: cutscallions_1 -> _2 -> _3 -> _4, 再切 -> 掉3葱花碎 + 变空气 [已实现]
三、左键打碎切配方块 -> 掉原版食材(ShicaiService.handleDestroy)
- cutcarrot_0~4 -> 原版胡萝卜; cutpotato_0~4 -> 原版土豆 [已实现]
- cutvegetable_0~3 -> 青菜(qingcai); cutscallions_1~4 -> 葱(scallions) [已实现]
四、蒜末(手持 菜刀 右键 大蒜cutgarlic, 3次)
- 大蒜 -> 掉16蒜末(crushedgarlic) + 变空气 [已实现]
五、裹粉半成品(手持生食材右键 面粉块farineblock_3 表面, 消耗面粉块变空气 + 掉落产物)
- 只认"面粉块"farineblock_3 这一个方块(用户指定) [已实现]
- 事件路径: 裹粉是"手持物品右键方块表面"场景, 走 OnItemUseOn(ServerItemUseOnEvent);
因此 ShicaiService 注册裹粉食材到 itemUseOnOwner, FeatureDispatcher 改造成
多服务 fallback(itemUseOnAll), 与原版放置(YuanbanService) 共享 土豆/鸡肉/猪肉
的注册: 右键面粉块→裹粉先命中; 右键地面→裹粉返回False后交给原版放置 [已实现]
- 生鱼片(sashimi) x6 -> 裹粉的鱼(oilfish_0) x1 [已实现]
- 龙虾(lobster) x2 -> 裹粉的天妇罗(oiltempura) x1 [已实现]
- 原版猪肉 x1 -> 裹粉的猪肉(oilpork) x1 [已实现]
- 原版生鸡肉 x1 -> 裹粉的鸡块(oil_chickennuggets) x6 [已实现]
- 原版土豆 x1 -> 裹粉的薯条(oilfrenchfries) x10 [已实现]
七、肉馅按压(空手右键, ShicaiService._handleMeatPress) [已实现]
- 生猪肉馅(rawmeatball_0) 空手右键 -> 生猪肉馅(按压 rawmeatball_2) [已实现]
- 生牛肉馅(rawmeatball_1) 空手右键 -> 生牛肉馅(按压 rawmeatball_3) [已实现]
八、工作台配方(netease_recipes)
- 大蒜串: 大蒜x7 + 支杆(b_34)x2 -> garlicskewers (xy_garlicskewers) [已实现]
- 辣椒串: 辣椒(pepper)x7 + 支杆x2 -> chiliskewer (xy_chiliskewer) [已实现]
- 食材堆合成(9满格): 苹果/面包/胡萝卜/鳕鱼/土豆/鲑鱼堆 由原 8合1(中间空) 统一改 9满格 [已实现]
- 桃子堆/橙子堆: 9满格 (xy_peachpile_0 / xy_orangepile_0) [已实现]
- 食材堆分解(堆放工作台): 9个堆均新增分解配方 xy_*_pile_unpack -> 对应食材x9 [已实现]
########################################
【寿司】(xy_sushi) 2026-09-09
########################################
实现于 xiangyemod/shousi (ShousiData + ShousiService, 注册到 FeatureDispatcher)
+ 盘装寿司 工作台配方 (netease_recipes/xy_plate_27/28/29/42)
(对应 寿司转化关系.txt 一~七组; 方块中文名/英文id 见该 txt 文末【方块清单】)
一、寿司·基础组
- 干海带 -> 干海带(加饭团) [手持 饭团 右键, 消耗4个饭团] [已实现]
机制: 海苔上铺饭团
二、鳕鱼寿司组
- 干海带(加饭团) + 鳕鱼 -> 鳕鱼寿司(加鳕鱼) [手持 鳕鱼 右键, 消耗1个] [已实现]
- 鳕鱼寿司(加鳕鱼) -> 鳕鱼寿司(卷_1) -> 鳕鱼寿司(卷_2) -> 鳕鱼寿司(卷_3) -> 鳕鱼寿司(卷_4)
[空手右键, 逐级卷制, 每卷一级共四级] [已实现]
- 鳕鱼寿司(卷_4) -> 鳕鱼寿司块(三个) [手持 菜刀 右键, 两次] [已实现]
机制: 第一刀"切寿司中…", 第二刀切好, 得 鳕鱼寿司块(三个)
三、鲑鱼寿司组
- 干海带(加饭团) + 鲑鱼 -> 鲑鱼寿司(加鲑鱼) [手持 鲑鱼 右键, 消耗1个] [已实现]
- 鲑鱼寿司(加鲑鱼) -> 鲑鱼寿司(卷_1) -> 鲑鱼寿司(卷_2) -> 鲑鱼寿司(卷_4) -> 鲑鱼寿司(成品卷)
[空手右键, 逐级卷制, 每卷一级共四级] [已实现]
(注: 鲑鱼卷的游戏内卷序命名不整齐, 无"卷_3"标注; 链顺序以转化关系 txt 为准)
- 鲑鱼寿司(成品卷) -> 鲑鱼寿司块(三个) [手持 菜刀 右键, 两次] [已实现]
四、热带鱼寿司组
- 干海带(加饭团) + 热带鱼 -> 热带鱼寿司(加热带鱼) [手持 热带鱼 右键, 消耗1个] [已实现]
- 热带鱼寿司(加热带鱼) -> 热带鱼寿司(卷_1) -> 热带鱼寿司(卷_2) -> 热带鱼寿司(卷_3) -> 热带鱼寿司(卷_4)
[空手右键, 逐级卷制, 每卷一级共四级] [已实现]
- 热带鱼寿司(卷_4) -> 热带鱼寿司块(三个) [手持 菜刀 右键, 两次] [已实现]
五、手握寿司组
- 手握普通寿司来源: 饭团 右键 任意非寿司方块表面 -> 表面上方放置 手握普通寿司, 消耗1个饭团
(txt 第18条 todo, 一并实现, 否则手握组无起点) [已实现]
- 手握普通寿司 + 鳕鱼 -> 手握鳕鱼寿司(一个) [手持 鳕鱼 右键, 消耗1个] [已实现]
- 手握鳕鱼寿司(一个) -> 手握鳕鱼寿司(两个) -> 手握鳕鱼寿司(三个)
[手持 手握鳕鱼寿司(一个) 右键, 逐级堆叠, 每级消耗1个] [已实现]
- 手握普通寿司 + 鲑鱼 -> 手握鲑鱼寿司(一个) [手持 鲑鱼 右键, 消耗1个] [已实现]
- 手握鲑鱼寿司(一个) -> 手握鲑鱼寿司(两个) -> 手握鲑鱼寿司(三个)
[手持 手握鲑鱼寿司(一个) 右键, 逐级堆叠, 每级消耗1个] [已实现]
- 手握普通寿司 + 热带鱼 -> 手握热带鱼寿司(一个) [手持 热带鱼 右键, 消耗1个] [已实现]
- 手握热带鱼寿司(一个) -> 手握热带鱼寿司(两个) -> 手握热带鱼寿司(三个)
[手持 手握热带鱼寿司(一个) 右键, 逐级堆叠, 每级消耗1个] [已实现]
- 手握普通寿司 + 鱿鱼须 -> 手握鱿鱼寿司(一个) [手持 鱿鱼须 右键, 消耗1个] [已实现]
- 手握鱿鱼寿司(一个) -> 手握鱿鱼寿司(两个) -> 手握鱿鱼寿司(三个)
[手持 手握鱿鱼寿司(一个) 右键, 逐级堆叠, 每级消耗1个] [已实现]
六、寿司堆组
- 鳕鱼寿司(卷_4) -> 寿司堆(鳕鱼_两个) -> 寿司堆(鳕鱼_三个)
[手持 鳕鱼寿司(卷_4) 右键, 逐级堆叠, 每级消耗1个] [已实现]
- 鲑鱼寿司(成品卷) -> 寿司堆(鲑鱼_两个) -> 寿司堆(鲑鱼_三个)
[手持 鲑鱼寿司(成品卷) 右键, 逐级堆叠, 每级消耗1个] [已实现]
- 热带鱼寿司(卷_4) -> 寿司堆(热带鱼_两个) -> 寿司堆(热带鱼_三个)
[手持 热带鱼寿司(卷_4) 右键, 逐级堆叠, 每级消耗1个] [已实现]
- 递减: 寿司堆(X_三个) -> 寿司堆(X_两个) -> 卷寿司 [空手右键, 逐级取走]
机制: 每级取走一个并以掉落物形式返还1个卷寿司; 鳕鱼/鲑鱼/热带鱼 同规则 [已实现]
七、盘装寿司组 (工作台合成)
- 盘子 + 手握热带鱼寿司(三个) + 热带鱼寿司(卷_4) -> 盘装寿司(手握热带鱼三份+热带鱼寿司) (plate_27) [已实现]
- 盘子 + 手握鳕鱼寿司(三个) + 鳕鱼寿司(卷_4) -> 盘装寿司(手握鳕鱼三份+鳕鱼寿司) (plate_28) [已实现]
- 盘子 + 手握鲑鱼寿司(三个) + 鲑鱼寿司(成品卷) -> 盘装寿司(手握鲑鱼三份+鲑鱼寿司) (plate_29) [已实现]
- 盘子 + 手握鱿鱼寿司(三个) + 热带鱼寿司(卷_4) -> 盘装寿司(手握鱿鱼三份+热带鱼寿司) (plate_42) [已实现]
(盘子 = 盘子方块 plate_0, 厨具分类可工作台合成)
【留后】吃(寿司块/手握 递减 空手右键吃)、饭团来源(汤锅熟米饭捏饭团, 属汤锅分类)
见 全部功能没做什么.txt 寿司节
########################################
【面食·整理】(xy_mianshi) 2026-09-10
########################################
- 工具·擀面杖组(rollingpin_1/2/3) 整个移入禁用分类(xy_jinyong):
三个方块 category 由 xy_mianshi 改为 xy_jinyong, 并从 面食 分组(mianshi_01_tool)移除 [已调整]
- 面食.甜食转化关系.txt 重写: 10组改9组(去掉 工具·擀面杖组),
擀面/和面统一用 厨具擀面杖(rollingpin, 加工中消耗最后一步掉落返还),
已归入禁用清单补 rollingpin_1/2/3 [已整理]
- 面食.甜食转化关系.txt 中文名规范: 正文全部改用中文方块名, 英文id集中文末【方块清单】,
与 寿司转化关系.txt 一致 [已整理]
- 厨具转化关系.txt: 擀面杖条目同步去掉"面食分类还有 rollingpin_1/2/3"提及, 注明已禁用 [已整理]
- 吐司面胚(面包面团_4)(breaddough_4) 移入禁用分类(xy_jinyong):
category 由 xy_mianshi 改为 xy_jinyong, 从 面团·胚料(food_04_dough) 分组移除,
面食txt 已归入禁用清单补记 (吐司面胚现仅 breaddough_2) [已调整]
########################################
【面食.甜食】(xy_mianshi) 2026-09-10 实现
########################################
实现于 xiangyemod/mianshi (MianshiData + MianshiService + MianshiTimerService, 注册到 FeatureDispatcher)
+ FeatureDispatcher 升级: 方块路由 blockOwner 改为多服务 fallback(blockOwnerAll),
与物品路由 itemUseOnAll 一致 (面粉块: 食材裹粉去重 + 面食和面 共管) [已实现]
+ 16个计时源方块 netease:block_entity tick 改为 true (发酵/蒸/烤炉)
一、面粉·面团组
- 面粉+鸡蛋x3 -> 面粉(加鸡蛋); +水桶(水桶变空桶) -> 面粉(加水) [已实现]
- 揉面(空手x2) -> 面粉块; 和面(空手x3) -> 生面团; 空手和面四级(和面_1~4) [已实现]
- 和面_4 计时60秒 -> 发酵后; 和面_4 + 菜刀 -> 掉落8个小面团 [已实现]
- 擀面链: 发酵后 手持擀面杖(消耗1根) -> 擀面_1, 空手逐级 -> 擀面_6 -> 生面饼(返还擀面杖) [已实现]
- 生面饼+菜刀 -> 面饼切开; 面饼切开 空手 -> 可颂胚 / +菜刀 -> 掉落生面 [已实现]
- 小面团链: 手持擀面杖(消耗1根) -> 擀面_1, 空手 -> 擀面_3 -> 面团消失, 掉落1个饺子皮(物品) + 返还擀面杖 [已实现]
二、饺子组
- 饺子皮 + 猪肉馅/青菜碎 双向组合 -> 饺子皮(猪肉馅加蔬菜); 捏合 -> 面团消失, 掉落1个生饺子(物品) [已实现]
- 生饺子 手持右键蒸笼(消耗4个) -> 蒸笼(蒸饺子_生), 60秒 -> 熟 [已实现]
- 手持盘子(plate_0)右键熟 -> 掉落盘装水饺(plate_30) + 蒸笼归位 [已实现]
三、包子组
- 饺子皮 空手 -> 包子皮; +猪/牛肉馅 -> 包子皮(加肉); 捏合/塑形 -> 面团消失, 掉落1个生肉包子(物品) [已实现]
- 生肉包子 手持右键蒸笼(消耗3个) -> 蒸笼(包子_生), 60秒 -> 熟;
空手取出 掉落3个熟肉包子 + 蒸笼归位 [已实现]
- 熟肉包子+菜刀 -> 半个 -> 1/4个; 手持熟肉包子堆叠(两个/三个); 空手递减取走(掉落1个) [已实现]
四、馍·肉夹馍组
- 生面饼 右键 烤炉(表面) -> 烤炉上方放置 馍 [已实现]
- 馍+菜刀 -> 馍(切开); +熟牛肉/熟猪肉(消耗2个) -> 肉夹馍 [已实现]
五、煎饼卷组
- 煎饼+青菜碎(消耗1个) -> 煎饼(加蔬菜); +熟牛肉(消耗1个)/熟土豆(消耗1个) -> 煎饼卷牛肉(卷制3级);
+熟鳕鱼/熟土豆(消耗1个) -> 煎饼卷鳕鱼 [已实现]
六、竹筒饭组
- 竹筒+菜刀 -> 竹筒(切开); +大米x32 -> 竹筒(加入米); +肉类 -> 竹筒(加入肉) [已实现]
- 竹筒(加入肉) 手持右键蒸笼 -> 蒸笼(竹筒饭_生), 60秒 -> 熟; 空手取出 熟竹筒饭 + 蒸笼归位 [已实现]
七、面包·烘焙组
- 法棍/吐司/可颂/甜甜圈: 手持整份右键堆叠(2份/3份); 空手递减取走(掉落1个) [已实现]
- 甜甜圈胚(烤熟)+奶油 -> 甜甜圈(成品1个) [已实现]
八、面团·胚料组
- 发酵后/法棍面胚_1/吐司面胚/甜甜圈胚(生) 空手右键循环转换 [已实现]
- 法棍面胚_1 60秒发酵 -> 发面; 发面/吐司面胚/甜甜圈胚(生)/可颂面胚 放烤炉上 60秒烘焙 -> 成品 [已实现]
- 胚/面糊等放到烤炉上后固定(右键不再循环转换), 自动开始计时烤制, 右键提示"开始烤制(60秒)"
(含 蛋糕面糊/可颂胚/舒芙蕾半成品/发面 等不在右键规则里的烤炉源) [已实现]
九、甜点·蛋糕组
- 面粉(加鸡蛋) 右键 木碗 -> 蛋糕面糊(生); 放烤炉 60秒 -> 烤熟; 脱模 -> 蛋糕胚 + 掉落木碗 [已实现]
- 蛋糕胚+奶油 -> 奶油蛋糕; 蛋糕胚+蜂蜜 -> 蜂蜜蛋糕; 奶油蛋糕+浆果 -> 浆果蛋糕;
菜刀切分(整块->3/4块->半块, 每次掉落小块) [已实现]
- 半块 菜刀拆分: 半块消失 + 掉落 2个 对应小块蛋糕 (蜂蜜cake_1b->2个cake_1d, 浆果cake_2b->2个cake_2d) [已实现]
- 蛋液半成品: 放烤炉 60秒 -> 布丁半成品; +糖x16 -> 焦糖布丁; +奶油 -> 舒芙蕾半成品;
舒芙蕾半成品 放烤炉 60秒 -> 舒芙蕾 [已实现]
- 蛋液半成品 手持右键蒸笼 -> 蒸笼(蒸牛奶鸡蛋_生), 60秒 -> 熟 [已实现]
【烤炉机制】下方判定为烤炉才对该方块计时(烤炉只做判断); 计时中烤炉被打碎 ->
终止计时 + 烤炉上方方块变掉落物 + 提示 [已实现]
【蒸笼机制】手持生食右键蒸笼 -> 蒸笼变蒸X_生(蒸笼原位); 蒸X_生下方是
点燃的炉灶(stove_2)才计时60秒 -> 熟; 取出时蒸笼归位 [已实现]
【信息提示】所有转换有成功提示(含消耗数量); 计时开始提示(和面完成开始发酵/
转法棍胚开始发酵/烤制60秒/蒸制); 计时完成提示发给发起玩家; 烤炉被打碎/
蒸笼下炉灶移走有中断/暂停提示 [已实现]
【右键体验】右键转换/放入/取出均有0.4秒冷却(长按不会疯狂弹提示); 手持方块物品
右键"功能方块"时若无非处理服务, 直接取消默认放置, 不会"先放一个方块再消失" [已实现]
【留后】吃(熟肉包子/馍/煎饼卷/熟竹筒饭/蛋糕小块 右键吃)、巧克力蛋糕系列
见 全部功能没做什么.txt 面食节