黄豆 饮料 冰棍 实现

This commit is contained in:
wenhe committed 2026-09-04 11:59:53 +08:00
1 parent 38f2ff2b33
commit f89b95fb99
23 files changed
+1773 -88

No files matched your search

@@ -28,3 +28,5 @@
- 面包盘 plate_20: 手持 原版面包 minecraft:bread
- 曲奇盘 plate_21: 手持 原版曲奇 minecraft:cookie
- 熟鸡肉盘 plate_4: 手持 原版熟鸡肉 minecraft:cooked_chicken
todo 转换后也都可以吃 (后续实现)
+73 -73
View File
@@ -3,105 +3,105 @@
========================================
说明:
- 分为3个分组: 果汁·榨汁饮品 / 冰棍 / 冰棍盒·炒冰盒
- 榨汁为逐级操作,冰棍/冰沙为放入水果+冷冻
- 榨汁为逐级右键操作; 冰棍/冰沙为放入水果+计时冷冻
- 【待确认】表示该步骤所需的具体操作尚未最终确定
========================================
一、果汁·榨汁饮品(榨汁机系列)
一、果汁·榨汁饮品(榨汁机系列) —— 全流程右键转换, 果汁由第一步放入的水果决定
========================================
机制说明(按批注重写):
不再用"玻璃杯+水果右键=对应果汁"。
榨汁机 空 → 放入水果 → 榨汁中1 → 榨汁中2 → 榨汁中3 → 完成 全程右键转换;
第一步放什么水果, 榨汁完成取出对应的果汁。
todo 功能实现的时候需要考虑 玩家退出游戏后 我的步骤已经到了 榨汁2->榨汁3 的过程中 那么我重新进入游戏后 我获得的果汁 还是 之前第一步 空 到放入水果这一步 记录的水果类型
1. 榨汁机(空) -> 榨汁机(放入水果)
转换条件:[手持 水果(食材分类) 右键 进行转换,消耗1个]
机制: 手持水果右键空榨汁机,消耗1个,放入水果
转换条件:[手持 水果(食材分类) 右键 进行转换, 消耗1个]
机制: 手持水果右键空榨汁机, 消耗1个, 放入水果并记录水果类型(决定最终果汁)
2. 榨汁机(放入水果) -> 榨汁机(榨汁中1) -> 榨汁机(榨汁中2) -> 榨汁机(榨汁中3)
转换条件:[右键/操作依次转换]
机制: 右键启动榨汁,逐级运转
2. 榨汁机(放入水果) -> 榨汁机(榨汁中1)
转换条件:[右键 进行转换]
机制: 右键启动榨汁, 进入榨汁中1
3. 榨汁机(榨汁中3) -> 榨汁机(完成)
转换条件:[计时自动转换]
机制: 计时约60秒榨汁完成
3. 榨汁机(榨汁中1) -> 榨汁机(榨汁中2)
转换条件:[右键 进行转换]
机制: 右键继续榨汁, 进入榨汁中2
4. 榨汁机(完成) -> 玻璃杯
转换条件:[右键 进行转换,取出果汁]
机制: 空手右键,获得玻璃杯(果汁)
4. 榨汁机(榨汁中2) -> 榨汁机(榨汁中3)
转换条件:[右键 进行转换]
机制: 右键继续榨汁, 进入榨汁中3
5. 玻璃杯 + 西瓜 -> 西瓜汁
转换条件:[手持 西瓜 右键 进行转换,消耗1个]
机制: 手持西瓜右键玻璃杯,榨成西瓜汁
5. 榨汁机(榨汁中3) -> 榨汁机(完成)
转换条件:[右键 进行转换]
机制: 右键榨汁完成
6. 玻璃杯 + 橙子 -> 橙汁
转换条件:[手持 橙子 右键 进行转换,消耗1个]
机制: 手持橙子右键玻璃杯,榨成橙汁
7. 玻璃杯 + 苹果 -> 苹果汁
转换条件:[手持 苹果 右键 进行转换,消耗1个]
机制: 手持苹果右键玻璃杯,榨成苹果汁
8. 玻璃杯 + 桃子 -> 桃子汁
转换条件:[手持 桃子 右键 进行转换,消耗1个]
机制: 手持桃子右键玻璃杯,榨成桃子汁
9. 玻璃杯 + 葡萄 -> 葡萄汁
转换条件:[手持 葡萄 右键 进行转换,消耗1个]
机制: 手持葡萄右键玻璃杯,榨成葡萄汁
10. 玻璃杯 + 黄豆 -> 豆浆
转换条件:[手持 黄豆 右键 进行转换,消耗1个]
机制: 手持黄豆右键玻璃杯,磨成豆浆
6. 榨汁机(完成) -> 对应果汁
转换条件:[右键 进行转换, 取出果汁]
机制: 空手右键, 获得 第一步放入水果 对应的果汁(按记录的水果类型)
- 西瓜 -> 西瓜汁 fruitjuice_1
- 橙子 -> 橙汁 fruitjuice_2
- 苹果 -> 苹果汁 fruitjuice_3
- 桃子 -> 桃子汁 fruitjuice_4
- 葡萄 -> 葡萄汁 fruitjuice_6
- 黄豆 -> 豆浆 fruitjuice_7
(玻璃杯 fruitjuice_0 仅为成品容器, 不再作为"玻璃杯+水果"的中转)
========================================
二、冰棍(冰棍盒/炒冰盒系列)
二、冰棍(冰棍盒系列)
========================================
11. 冰棍盒(冰棍未定型) -> 冰棍盒(冰棍定型)
转换条件:[放入冰柜/炒冰盒,计时冷冻]
机制: 放入冰柜冷冻,计时约60秒定型
7. 冰棍盒(冰棍未定型) -> 冰棍盒(冰棍定型)
转换条件:[手持 原版冰块[广义的冰] 右键 进行转换, 消耗1个]
机制: 手持冰块右键冰棍盒(未定型), 消耗1个, 计时约30秒定型
12. 冰棍盒(冰棍定型) -> 冰棍盒(苹果冰棍) / 冰棍盒(桃子冰棍) / 冰棍盒(橙子冰棍) / 冰棍盒(葡萄冰棍) / 冰棍盒(西瓜冰棍)
转换条件:[放入对应水果 右键 进行转换,消耗1个]
机制: 手持对应水果右键冰棍盒,消耗1个,制成该口味冰棍
8. 冰棍盒(冰棍定型) -> 冰棍盒(苹果/桃子/橙子/葡萄/西瓜冰棍)
转换条件:[手持 对应水果 右键 进行转换, 消耗2个]
机制: 手持对应水果右键冰棍盒(定型), 消耗2个, 制成该口味冰棍
13. 冰棍盒(各水果) -> 对应冰棍(苹果/葡萄/西瓜/橙子/桃子冰棍)
转换条件:[右键 进行转换,取出冰棍]
机制: 空手右键,取出冰棍
9. 冰棍盒(各水果) -> 对应冰棍 + 还原 冰棍盒(未定型)
转换条件:[右键 进行转换, 取出冰棍]
机制: 空手右键, 取出2根对应水果冰棍(苹果/桃子/橙子/葡萄/西瓜冰棍),
冰棍盒还原为 冰棍盒(未定型)
(按批注: 各水果冰棍盒取完冰棍后应还原成未定型)
14. 冰棍堆(橙子+西瓜) -> 冰棍堆2(橙子+西瓜+苹果)
转换条件:[手持 冰棍 右键 进行堆叠]
机制: 手持冰棍右键,堆叠加入苹果冰棍
15. 冰棍堆2(橙子+西瓜+苹果) -> 冰棍堆(橙子+西瓜)
转换条件:[右键 进行转换,取走苹果冰棍]
机制: 空手右键,取走1根苹果冰棍(数量递减 3->2)
10. 冰棍堆 组合逻辑(同厨具架: 与放入顺序无关, 后放先取)
转换条件:[手持 冰棍 右键 冰棍堆 进行堆叠, 消耗1根]
机制: 手持冰棍右键冰棍堆, 消耗1根, 按组合成型(先放A再放B == 先放B再放A)
- 橙子+西瓜 -> 冰棍堆(橙子+西瓜) popsiclepile_2
- 橙子+西瓜+苹果 -> 冰棍堆2(橙子+西瓜+苹果) popsiclepile_3
取回: 空手右键, 后放先取(LIFO), 取走最后放入的那根冰棍, 形态退回剩余组合
(其他口味组合暂无对应堆方块, 不支持堆叠)
========================================
三、炒冰盒·冰沙
========================================
15. 炒冰盒(空) -> 炒冰盒(放冰)
转换条件:[手持 冰块 右键 进行转换,消耗1个]
机制: 手持冰块右键,消耗1个,放入冰块
11. 炒冰盒(空) -> 炒冰盒(放冰)
转换条件:[手持 原版冰块[广义的冰] 右键 进行转换, 消耗1个]
机制: 手持冰块右键炒冰盒(空), 消耗1个, 放入冰块
16. 炒冰盒(放冰) + 苹果 -> 炒冰盒_1(苹果炒冰盒)
转换条件:[手持 苹果 右键 进行转换,消耗1个]
机制: 手持苹果右键,消耗1个,制成苹果炒冰
12. 炒冰盒(放冰) + 苹果 -> 苹果炒冰盒
转换条件:[手持 苹果 右键 进行转换, 消耗1个]
机制: 手持苹果右键炒冰盒(放冰), 消耗1个, 制成苹果炒冰
17. 炒冰盒(放冰) + 葡萄 -> 炒冰盒_3(葡萄炒冰盒)
转换条件:[手持 葡萄 右键 进行转换,消耗1个]
机制: 手持葡萄右键,消耗1个,制成葡萄炒冰
13. 炒冰盒(放冰) + 葡萄 -> 葡萄炒冰盒
转换条件:[手持 葡萄 右键 进行转换, 消耗1个]
机制: 手持葡萄右键, 消耗1个, 制成葡萄炒冰
18. 炒冰盒(放冰) + 西瓜 -> 炒冰盒_4(西瓜炒冰盒)
转换条件:[手持 西瓜 右键 进行转换,消耗1个]
机制: 手持西瓜右键,消耗1个,制成西瓜炒冰
14. 炒冰盒(放冰) + 西瓜 -> 西瓜炒冰盒
转换条件:[手持 西瓜 右键 进行转换, 消耗1个]
机制: 手持西瓜右键, 消耗1个, 制成西瓜炒冰
19. 炒冰盒(放冰) + 橘子 -> 炒冰盒_5(橘子炒冰盒)
转换条件:[手持 橘子 右键 进行转换,消耗1个]
机制: 手持橘子右键,消耗1个,制成橘子炒冰
15. 炒冰盒(放冰) + 橘子 -> 橘子炒冰盒
转换条件:[手持 橘子 右键 进行转换, 消耗1个]
机制: 手持橘子右键, 消耗1个, 制成橘子炒冰
20. 炒冰盒(放冰) + 桃子 -> 炒冰盒_4(桃子炒冰盒)
转换条件:[手持 桃子 右键 进行转换,消耗1个]
机制: 手持桃子右键,消耗1个,制成桃子炒冰
16. 炒冰盒(放冰) + 桃子 -> 桃子炒冰盒
转换条件:[手持 桃子 右键 进行转换, 消耗1个]
机制: 手持桃子右键, 消耗1个, 制成桃子炒冰
21. 炒冰盒(各水果) -> 对应冰沙(苹果/葡萄/橘子/桃子冰沙)
转换条件:[右键 进行转换,取出冰沙]
机制: 空手右键,取出冰沙
17. 炒冰盒(各水果) -> 对应冰沙 + 还原 炒冰盒(空)
转换条件:[右键 进行转换, 取出冰沙]
机制: 空手右键, 取出1个对应冰沙(苹果/葡萄/橘子/桃子冰沙),
炒冰盒还原为 炒冰盒(空)
(按批注: 各水果炒冰盒取完冰沙后应还原成空)
========================================
四、成品方块清单
+38
View File
@@ -253,3 +253,41 @@ FurnitureData+FurnitureService 实现, 注册到 FeatureDispatcher)
- 附魔书/药水效果在掉落物中保留(取回时重建, 词条/效果不丢) [已实现]
- 与售卖盒区分: 售卖盒破坏重放仍可右键取物; 书柜这类破坏后记录随方块消失, 重放取不到 [已实现]
########################################
【乡野饮料】(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) 空手右键 → 掉落对应果汁 + 还原空(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根对应冰棍 + 还原未定型 [已实现]
- 定型计时用绝对时间戳写方块实体数据, 退出重进继续计时 [已实现]
三、冰棍堆 (组合, popsiclepile_2/3)
- 冰棍堆(橙子+西瓜 popsiclepile_2) + 苹果冰棍(消耗1) → 冰棍堆2(橙子+西瓜+苹果 popsiclepile_3) [已实现]
- 冰棍堆2 空手右键 → 掉落苹果冰棍(后放先取 LIFO) + 退回冰棍堆 [已实现]
四、炒冰盒 (冰棍盒·炒冰盒, frytheicebox 系列)
- 空(frytheicebox) + 冰块(消耗1) → 放冰(frytheicebox_1) [已实现]
- 放冰 + 对应水果(消耗1) → 各口味炒冰盒(苹果/葡萄/西瓜/橘子/桃子) [已实现]
- 各口味炒冰盒 空手右键 → 掉落1个对应冰沙 + 还原空 [已实现]
- 五种口味冰沙齐全: 西瓜冰沙(melonicecreamplace) 已从禁用移回乡野饮料, 正常取出 [已实现]
五、分类/分组调整
- 西瓜冰沙(melonicecreamplace): 分类 禁用(xy_jinyong) → 乡野饮料(xy_drink),
名称 西瓜冰棍_2(西瓜冰棍)禁用 → 西瓜冰沙, 放入 冰棍(drink_03_popsicle) 分组 [已调整]
- 黄豆(rtdd:soybean): 归乡野食材(xy_ingredients), 放入 谷物·米面(ingr_08_grain) 分组 [已调整]
+25
View File
@@ -106,3 +106,28 @@
(乡野食物转化关系.txt 一、章鱼小丸子 todo 已标注)
(原版食物-成品盘转换 已实现于 xiangyemod/yuanbanfangzhi, 见 全部功能做了什么.txt)
二、原版食物-成品盘可食用
- 方块: plate_16(南瓜派盘)/plate_17(生鱼片)/plate_18(西瓜盘)/plate_20(面包盘)/
plate_21(曲奇盘)/plate_4(熟鸡肉盘)
- 设想: 盘子转换(装盘)后的成品盘 都可以直接右键食用
- 未做原因: 属于吃的东西, 食用部分由统一的"总食用功能"后续实现
(乡野食物转化关系.txt 末尾 todo 已标注 "转换后也都可以吃")
########################################
【乡野饮料】(xy_drink)
########################################
(主要转换已实现于 xiangyemod/yinliao, 见 全部功能做了什么.txt)
一、果汁/豆浆/冰棍/冰沙 的食用功能
- 成品: fruitjuice_1~7(西瓜汁/橙汁/苹果汁/桃子汁/葡萄汁/豆浆)、各 popsicleplace(冰棍)、
各 icecreamplace(冰沙, 含西瓜冰沙)
- 设想: 这些饮料成品都可以直接右键食用
- 未做原因: 属于吃的东西, 食用部分由统一的"总食用功能"后续实现
(乡野饮料转化关系.txt 未标注具体食用规则)
二、冰棍堆 其他口味组合
- 方块: popsiclepile_2/3(冰棍堆)
- 说明: 目前只支持 橙子+西瓜(堆) → 橙子+西瓜+苹果(堆2), 即只有"插苹果冰棍"一种组合
- 未做原因: 其他口味组合暂无对应堆方块, 不支持堆叠 (转化文档已注明)