原版食材迁移 关联性强的文档 重写

This commit is contained in:
wenhe committed 2026-09-04 18:47:10 +08:00
1 parent bae1755069
commit f55386659b
46 files changed
+2478 -1309

No files matched your search

+60 -4
View File
@@ -2,15 +2,18 @@
【家具家私】(xy_furniture) 转化关系
========================================
说明:
- 家具家私分类方块: 箭桶、水槽、盘子架、书柜、药水架、厨具架、唱片机、垃圾桶 系列
- 家具家私分类方块: 箭桶、水槽、盘子架、碗柜、书柜、药水架、厨具架、唱片机、
垃圾桶、壁炉 系列
- 有交互转换的: 箭桶(存/取箭)、水槽(加水/取水/放洗脏盘/取脏盘)、
盘子架(放/取盘)、书柜(放/取书)、药水架(放/取药水)、厨具架(放/取厨具)
盘子架(放/取盘)、碗柜(放/取木碗)、书柜(放/取书)、药水架(放/取药水)、
厨具架(放/取厨具)、壁炉(加柴/点燃)
- 【方块存储物品实现】(FurnitureService 两种记录, 写入方块实体数据, 退出重进不丢):
① count记录(箭桶): 记录一种物品+数量, 字段 rtdd_swt=count / rtdd_swc=数量 /
rtdd_swi=物品名 / rtdd_swa=aux值
② stack记录(书柜/药水架): 后放先取堆栈, 记录物品名+aux(药水)或附魔ench(书),
字段 rtdd_swt=stack / rtdd_sws=堆栈(原始扁平列表, 不存引擎NBT编码的userData)
- 【实现状态】: 箭桶/水槽/盘子架/书柜/药水架/厨具架/古式唱片机/垃圾桶 全部已实现
- 【实现状态】: 箭桶/水槽/盘子架/碗柜/书柜/药水架/厨具架/古式唱片机/垃圾桶/壁炉
全部已实现
(统一由 xiangyemod/jiaju/FurnitureService 处理, 注册到 FeatureDispatcher;
旧 BlockSwitchService 已废弃); 唱片播放曲目 待后续实现
- 【左键破坏掉落】: 书柜/药水架/厨具架这类"存了东西"的方块被打碎时, 掉 空方块本体
@@ -127,6 +130,44 @@
转换条件:[右键 进行转换, 获得盘子]
机制: 空手右键, 取回最后1个盘子
========================================
三b、碗柜(放木碗/取木碗, 至多3个)【已实现】
========================================
- 可放物品: 木碗(rtdd:bowlasoup)
- 放碗: 手持木碗右键 碗柜(空/未满) → 消耗1个, 逐个放入, 最多3个
- 取碗: 空手右键 → 逐个取回(掉落物形式), 取回最后1个回到空碗柜
- 满柜: 手持木碗右键三个碗的碗柜 → 提示"碗柜已满", 拦截默认行为
- 方块链: 碗柜_空=cupboard_0, 碗柜_一个碗=cupboard_1,
碗柜_两个碗=cupboard_2, 碗柜_三个碗=cupboard_3
23. 碗柜_0(空) -> 碗柜_1(一个碗)
转换条件:[手持 木碗 右键 进行转换, 木碗数量减少]
机制: 手持木碗右键, 消耗1个, 放入1个木碗
24. 碗柜_1(一个碗) -> 碗柜_2(两个碗)
转换条件:[手持 木碗 右键 进行转换, 木碗数量减少]
机制: 手持木碗右键, 消耗1个, 放入第二个
25. 碗柜_2(两个碗) -> 碗柜_3(三个碗)
转换条件:[手持 木碗 右键 进行转换, 木碗数量减少]
机制: 手持木碗右键, 消耗1个, 放入第三个
26. 碗柜_3(三个碗) 手持木碗右键
转换条件:[手持 木碗 右键]
机制: 提示"碗柜已满", 不消耗, 拦截默认行为
27. 碗柜_3(三个碗) -> 碗柜_2(两个碗)
转换条件:[右键 进行转换, 获得木碗]
机制: 空手右键, 取回1个木碗(掉落物)
28. 碗柜_2(两个碗) -> 碗柜_1(一个碗)
转换条件:[右键 进行转换, 获得木碗]
机制: 空手右键, 取回1个木碗(掉落物)
29. 碗柜_1(一个碗) -> 碗柜_0(空)
转换条件:[右键 进行转换, 获得木碗]
机制: 空手右键, 取回最后1个木碗(掉落物)
========================================
四、书柜(放书/取书, 后放先取, 至多13本)
存储实现: stack记录(rtdd_swt=stack), 后放先取堆栈, 保留完整物品信息(含附魔userData)
@@ -207,11 +248,26 @@ todo 转换: 垃圾桶(关闭) -> 垃圾桶(打开) -> 垃圾桶(有垃圾) ->
右键转换
功能: 打开时 主手拿任何东西右键 都会变成 垃圾桶(有垃圾) 状态 同时清空主手物品 以达到垃圾桶效果
========================================
七b、壁炉(加柴/点燃)【已实现】
========================================
- 壁炉(空) b_88 / 壁炉(加柴火) b_89 / 壁炉(点燃) b_90
- 加柴: 手持 木条(rtdd:b_15) 右键空壁炉 → 加柴火, 消耗4个木条
- 点燃: 手持 打火石(不消耗)/烈焰弹(消耗1) 右键加柴火 → 点燃
30. 壁炉(空) -> 壁炉(加柴火)
转换条件:[手持 木条 右键 进行转换, 木条数量减少]
机制: 手持木条右键, 消耗4个, 壁炉加好柴火
31. 壁炉(加柴火) -> 壁炉(点燃)
转换条件:[手持 打火石/烈焰弹 右键 进行转换]
机制: 手持打火石(不消耗)或烈焰弹(消耗1)右键, 壁炉点燃
========================================
八、静态家具方块(无转换)
========================================
b_102(烟囱)、b_103(烟道)、b_111(吧台)、b_112(台柜)、b_124(格子架)、b_125(格子窗)、
b_127(地图台)、b_15(木条)、b_35(双人床)、b_88(壁炉)、b_196~b_201(书本系列)、
b_127(地图台)、b_15(木条)、b_35(双人床)、b_196~b_201(书本系列)、
bamboomeshfence(竹栏)、cabinet(橱柜(盘子+调料瓶))、cabinet_1(橱柜(仅调料瓶))、
seasoningrack(调料架)、shelving(置物架)、statueofadeity(神像)、stool(桌凳)