Files
rtdd/behavior_pack_v8jz0zSR/Script_NeteaseModousIY5aSF/xiangyemod/BlockSwitchData.py
T
2026-09-03 14:09:44 +08:00

1392 lines
38 KiB
Python
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.
# -*- coding: utf-8 -*-
"""
工具方块切换规则数据
====================
所有"右键方块→消耗物品→替换方块"的工具切换规则都在这里。
与 RecipeData.py 的关系:
RecipeData.py = 做菜配方(食材+锅 → 菜)
BlockSwitchData.py = 工具切换(箭桶、挂肉钩、水槽、盘子架、药水架、书柜等)
CookingService 启动时会自动把两边的数据合并成一份字典,O(1) 查找。
字段说明:
source: 被右键的方块ID(必填)
item: 玩家手里必须拿的物品,None=空手也行
target: 替换成什么方块
consume: 消耗物品数量,0=不消耗(默认1)
giveItem: 额外给玩家什么物品,None=取回记录的物品
type: "switch"=工具切换, "timer"=计时自动转换
record: True=需要记录放入的物品,取回时原样返还
recordType: "count"=记录一种物品+数量, "stack"=后放先取堆栈
maxCount: 记录型最多存多少(箭桶32只、盘子架5个等)
time: 计时型转换需要多少秒
tool: 特定工具要求(如"剑")
arrowMode: 箭桶专用,"store"=存箭模式,"retrieve"=取箭模式
存箭:批量存入手中所有箭(至多maxCount),支持普通箭+药水箭
取箭:一次性取回方块记录的所有箭
"""
BLOCK_SWITCHES = [
# 一、箭桶
# ============================================================
# 【存箭】箭桶_0 → 箭桶_1
# 支持所有箭类型:minecraft:arrow(普通箭)、minecraft:tipped_arrow(药水箭)
# 批量存入手中所有箭(至多 maxCount 只),记录箭类型(itemName + auxValue)
# 例如:手持 64 只中毒之箭右键 → 存 32 只,手上剩 32 只
# 手持 31 只中毒之箭右键 → 存 31 只,手上清空
{
"source": "rtdd:arrowbarrel_0",
"item": None,
"target": "rtdd:arrowbarrel_1",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "count",
"maxCount": 32,
"giveItem": None,
"arrowMode": "store",
},
# 【取箭】箭桶_1 → 箭桶_0
# 一次性取回方块内记录的所有箭(数量、类型按记录来)
{
"source": "rtdd:arrowbarrel_1",
"item": None,
"target": "rtdd:arrowbarrel_0",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "count",
"giveItem": None,
"arrowMode": "retrieve",
},
# 二、纺纱机
# ============================================================
{
"source": "rtdd:b_110",
"item": None,
"target": "rtdd:spinner",
"consume": 0,
"type": "switch",
"giveItem": None,
},
# 三、售卖盒(鲑鱼)
# ============================================================
# 旧"售卖箱↔鲑鱼箱"规则已移除: clothbox_1/2 已禁用, b_30(售卖盒(鲑鱼))
# 归 市场贸易 MarketService 处理(空售卖盒+32条鲑鱼放入 / 空手右键取出)。
# 四、烧烤架
# ============================================================
# 【点火-打火石】烧烤架_0 → 烧烤架_1
{
"source": "rtdd:barbecuegrill_0",
"item": "minecraft:flint_and_steel",
"target": "rtdd:barbecuegrill_1",
"consume": 0,
"type": "switch",
"giveItem": None,
},
# 【点火-烈焰弹】烧烤架_0 → 烧烤架_1
{
"source": "rtdd:barbecuegrill_0",
"item": "minecraft:fire_charge",
"target": "rtdd:barbecuegrill_1",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【灭火】烧烤架_1 → 烧烤架_0(消耗水桶,获得空桶)
{
"source": "rtdd:barbecuegrill_1",
"item": "minecraft:water_bucket",
"target": "rtdd:barbecuegrill_0",
"consume": 1,
"type": "switch",
"giveItem": "minecraft:bucket",
},
# 五、炉灶
# ============================================================
# 【加柴-木条】炉灶_1 → 炉灶_2
{
"source": "rtdd:stove",
"item": "rtdd:barwood",
"target": "rtdd:stove_1",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【加柴-木块】炉灶_1 → 炉灶_2
{
"source": "rtdd:stove",
"item": "rtdd:b_15",
"target": "rtdd:stove_1",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【点火-打火石】炉灶_2 → 炉灶_3
{
"source": "rtdd:stove_1",
"item": "minecraft:flint_and_steel",
"target": "rtdd:stove_2",
"consume": 0,
"type": "switch",
"giveItem": None,
},
# 【点火-烈焰弹】炉灶_2 → 炉灶_3
{
"source": "rtdd:stove_1",
"item": "minecraft:fire_charge",
"target": "rtdd:stove_2",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 六、挂肉钩 - 牛
# ============================================================
# 正向:挂死牛 → 拿剑切肉 → 切完回空钩(掉落牛肉)
# 逆向:空手右键退回死牛
# ============================================================
# 【挂牛】空钩 → 牛_0
{
"source": "rtdd:meathook",
"item": "rtdd:dead_cow",
"target": "rtdd:cow_0",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【切肉-第一刀】牛_0 → 牛_1
{
"source": "rtdd:cow_0",
"item": "minecraft:iron_sword",
"target": "rtdd:cow_1",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:beef",
"tool": "sword",
},
# 【切肉-第二刀】牛_1 → 牛_2
{
"source": "rtdd:cow_1",
"item": "minecraft:iron_sword",
"target": "rtdd:cow_2",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:beef",
"tool": "sword",
},
# 【切肉-第三刀】牛_2 → 牛_3
{
"source": "rtdd:cow_2",
"item": "minecraft:iron_sword",
"target": "rtdd:cow_3",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:beef",
"tool": "sword",
},
# 【切肉-最后一刀】牛_3 → 空钩
{
"source": "rtdd:cow_3",
"item": "minecraft:iron_sword",
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:beef",
"tool": "sword",
},
# ---- 逆向退回 ----
# 【退回】牛_3 → 牛_2
{
"source": "rtdd:cow_3",
"item": None,
"target": "rtdd:cow_2",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_cow",
},
# 【退回】牛_2 → 牛_1
{
"source": "rtdd:cow_2",
"item": None,
"target": "rtdd:cow_1",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_cow",
},
# 【退回】牛_1 → 牛_0
{
"source": "rtdd:cow_1",
"item": None,
"target": "rtdd:cow_0",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_cow",
},
# 【退回】牛_0 → 空钩
{
"source": "rtdd:cow_0",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_cow",
},
# 七、晾干架
# ============================================================
{
"source": "rtdd:dryingrack",
"item": None,
"target": "rtdd:dryingrack_1",
"consume": 0,
"type": "switch",
"giveItem": None,
},
{
"source": "rtdd:dryingrack_1",
"item": None,
"target": "rtdd:dryingrack_2",
"consume": 0,
"type": "switch",
"giveItem": None,
},
{
"source": "rtdd:dryingrack_2",
"item": None,
"target": "rtdd:dryingrack",
"consume": 0,
"type": "switch",
"giveItem": None,
},
# 八、挂肉钩 - 鱼(生鱼晾干)
# ============================================================
# 正向:挂生鱼 → 计时晾干 → 熟鱼
# 逆向:空手退回生鱼
# ============================================================
# 【挂鱼】空钩 → 鱼_1
{
"source": "rtdd:meathook",
"item": "minecraft:fish",
"target": "rtdd:fish_1",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【挂第二条】鱼_1 → 鱼_2
{
"source": "rtdd:fish_1",
"item": "minecraft:fish",
"target": "rtdd:fish_2",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【晾干】鱼_2 → 空钩(计时自动,右键获得熟鱼)
{
"source": "rtdd:fish_2",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "timer",
"time": 300,
"giveItem": "minecraft:cooked_fish",
},
# ---- 逆向退回 ----
# 【退鱼】鱼_2 → 鱼_1
{
"source": "rtdd:fish_2",
"item": None,
"target": "rtdd:fish_1",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:fish",
},
# 【退鱼】鱼_1 → 空钩
{
"source": "rtdd:fish_1",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:fish",
},
# 九、挂肉钩 - 鳕鱼
# ============================================================
# 正向:挂鳕鱼 → 计时晾干 → 熟鳕鱼
# 逆向:空手退回鳕鱼
# ============================================================
# 【挂鳕鱼】空钩 → 鳕鱼_1
{
"source": "rtdd:meathook",
"item": "minecraft:cod",
"target": "rtdd:meathookcod_1",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【挂第二条】鳕鱼_1 → 鳕鱼_2
{
"source": "rtdd:meathookcod_1",
"item": "minecraft:cod",
"target": "rtdd:meathookcod_2",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【晾干】鳕鱼_2 → 干鳕鱼钩(计时自动)
{
"source": "rtdd:meathookcod_2",
"item": None,
"target": "rtdd:meathookcoddry",
"consume": 0,
"type": "timer",
"time": 300,
"giveItem": None,
},
# 【取熟鳕鱼】干鳕鱼钩 → 空钩
{
"source": "rtdd:meathookcoddry",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:cooked_cod",
},
# ---- 逆向退回 ----
# 【退鳕鱼】鳕鱼_2 → 鳕鱼_1
{
"source": "rtdd:meathookcod_2",
"item": None,
"target": "rtdd:meathookcod_1",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:cod",
},
# 【退鳕鱼】鳕鱼_1 → 空钩
{
"source": "rtdd:meathookcod_1",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:cod",
},
# 十、挂肉钩 - 猪
# ============================================================
# 正向:挂死猪 → 拿剑切肉 → 切完回空钩(掉落生猪排)
# 逆向:空手退回死猪
# ============================================================
# 【挂猪】空钩 → 猪_0
{
"source": "rtdd:meathook",
"item": "rtdd:dead_pig",
"target": "rtdd:pig_0",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【切肉-第一刀】猪_0 → 猪_1
{
"source": "rtdd:pig_0",
"item": "minecraft:iron_sword",
"target": "rtdd:pig_1",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:porkchop",
"tool": "sword",
},
# 【切肉-第二刀】猪_1 → 猪_2
{
"source": "rtdd:pig_1",
"item": "minecraft:iron_sword",
"target": "rtdd:pig_2",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:porkchop",
"tool": "sword",
},
# 【切肉-第三刀】猪_2 → 猪_3
{
"source": "rtdd:pig_2",
"item": "minecraft:iron_sword",
"target": "rtdd:pig_3",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:porkchop",
"tool": "sword",
},
# 【切肉-最后一刀】猪_3 → 空钩
{
"source": "rtdd:pig_3",
"item": "minecraft:iron_sword",
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:porkchop",
"tool": "sword",
},
# ---- 逆向退回 ----
# 【退回】猪_3 → 猪_2
{
"source": "rtdd:pig_3",
"item": None,
"target": "rtdd:pig_2",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_pig",
},
# 【退回】猪_2 → 猪_1
{
"source": "rtdd:pig_2",
"item": None,
"target": "rtdd:pig_1",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_pig",
},
# 【退回】猪_1 → 猪_0
{
"source": "rtdd:pig_1",
"item": None,
"target": "rtdd:pig_0",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_pig",
},
# 【退回】猪_0 → 空钩
{
"source": "rtdd:pig_0",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_pig",
},
# 十一、挂肉钩 - 羊
# ============================================================
# 正向:挂死羊 → 拿剑切肉 → 切完回空钩(掉落生羊肉)
# 逆向:空手退回死羊
# ============================================================
# 【挂羊】空钩 → 羊_0
{
"source": "rtdd:meathook",
"item": "rtdd:dead_sheep",
"target": "rtdd:sheep",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【切肉-第一刀】羊_0 → 羊_1
{
"source": "rtdd:sheep",
"item": "minecraft:iron_sword",
"target": "rtdd:sheep_1",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:mutton",
"tool": "sword",
},
# 【切肉-第二刀】羊_1 → 羊_2
{
"source": "rtdd:sheep_1",
"item": "minecraft:iron_sword",
"target": "rtdd:sheep_2",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:mutton",
"tool": "sword",
},
# 【切肉-第三刀】羊_2 → 羊_3
{
"source": "rtdd:sheep_2",
"item": "minecraft:iron_sword",
"target": "rtdd:sheep_3",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:mutton",
"tool": "sword",
},
# 【切肉-最后一刀】羊_3 → 空钩
{
"source": "rtdd:sheep_3",
"item": "minecraft:iron_sword",
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "minecraft:mutton",
"tool": "sword",
},
# ---- 逆向退回 ----
# 【退回】羊_3 → 羊_2
{
"source": "rtdd:sheep_3",
"item": None,
"target": "rtdd:sheep_2",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_sheep",
},
# 【退回】羊_2 → 羊_1
{
"source": "rtdd:sheep_2",
"item": None,
"target": "rtdd:sheep_1",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_sheep",
},
# 【退回】羊_1 → 羊_0
{
"source": "rtdd:sheep_1",
"item": None,
"target": "rtdd:sheep",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_sheep",
},
# 【退回】羊_0 → 空钩
{
"source": "rtdd:sheep",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dead_sheep",
},
# 十二、挂肉钩 - 鲑鱼晾晒系统
# ============================================================
# 路线A(只挂1条): 空钩 → 鲜鲑鱼_1 → 干鲑鱼_1 → 空钩
# 路线B(挂2条): 空钩 → 鲜鲑鱼_1 → 鲜鲑鱼_2 → 干鲑鱼_2 → 干鲑鱼_1 → 空钩
# ============================================================
# 【挂鱼】空钩 → 鲜鲑鱼_1(手持死鲑鱼)
{
"source": "rtdd:meathook",
"item": "rtdd:killfish_0",
"target": "rtdd:hang_meat_hooks_1",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【挂第二条】鲜鲑鱼_1 → 鲜鲑鱼_2
{
"source": "rtdd:hang_meat_hooks_1",
"item": "rtdd:killfish_0",
"target": "rtdd:hang_meat_hooks_2",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【单条晾干】鲜鲑鱼_1 → 干鲑鱼_1(计时自动)
{
"source": "rtdd:hang_meat_hooks_1",
"item": None,
"target": "rtdd:hang_meat_hooks_3",
"consume": 0,
"type": "timer",
"time": 300,
"giveItem": None,
},
# 【两条晾干】鲜鲑鱼_2 → 干鲑鱼_2(计时自动)
{
"source": "rtdd:hang_meat_hooks_2",
"item": None,
"target": "rtdd:hang_meat_hooks_4",
"consume": 0,
"type": "timer",
"time": 300,
"giveItem": None,
},
# 【取走单条干】干鲑鱼_1 → 空钩
{
"source": "rtdd:hang_meat_hooks_3",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dried_salmon",
},
# 【取走第一条干】干鲑鱼_2 → 干鲑鱼_1
{
"source": "rtdd:hang_meat_hooks_4",
"item": None,
"target": "rtdd:hang_meat_hooks_3",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:dried_salmon",
},
# ---- 逆向退回 ----
# 【退单条鲜】鲜鲑鱼_1 → 空钩
{
"source": "rtdd:hang_meat_hooks_1",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:killfish_0",
},
# 【退一条鲜】鲜鲑鱼_2 → 鲜鲑鱼_1
{
"source": "rtdd:hang_meat_hooks_2",
"item": None,
"target": "rtdd:hang_meat_hooks_1",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:killfish_0",
},
# 【退单条干】干鲑鱼_1 → 空钩
{
"source": "rtdd:hang_meat_hooks_3",
"item": None,
"target": "rtdd:meathook",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:killfish_0",
},
# 【退一条干】干鲑鱼_2 → 干鲑鱼_1
{
"source": "rtdd:hang_meat_hooks_4",
"item": None,
"target": "rtdd:hang_meat_hooks_3",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:killfish_0",
},
# 十三、水槽系统
# ============================================================
# ---- 加水 / 取水 ----
# 【加水】水槽_0 → 水槽_1
{
"source": "rtdd:flume_0",
"item": None,
"target": "rtdd:flume_1",
"consume": 0,
"type": "switch",
"giveItem": None,
},
# 【取水】水槽_1 → 水槽_0(手持空桶,消耗空桶获得装满水的水桶)
{
"source": "rtdd:flume_1",
"item": "minecraft:bucket",
"target": "rtdd:flume_0",
"consume": 1,
"type": "switch",
"giveItem": "minecraft:water_bucket",
},
# 【放第一个脏盘子 有水放盘子】水槽_1 → 水槽_2
{
"source": "rtdd:flume_1",
"item": "rtdd:plate_0a",
"target": "rtdd:flume_2",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【放第二个脏盘子】水槽_2 → 水槽_3
{
"source": "rtdd:flume_2",
"item": "rtdd:plate_0a",
"target": "rtdd:flume_3",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【放第三个脏盘子】水槽_3 → 水槽_4
{
"source": "rtdd:flume_3",
"item": "rtdd:plate_0a",
"target": "rtdd:flume_4",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【放第四个脏盘子】水槽_4 → 水槽_5
{
"source": "rtdd:flume_4",
"item": "rtdd:plate_0a",
"target": "rtdd:flume_5",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# ---- 取回脏盘子 ----
# 【取走一个脏盘子】水槽_5 → 水槽_4
{
"source": "rtdd:flume_5",
"item": None,
"target": "rtdd:flume_4",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:plate_0a",
},
# 【取走一个脏盘子】水槽_4 → 水槽_3
{
"source": "rtdd:flume_4",
"item": None,
"target": "rtdd:flume_3",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:plate_0a",
},
# 【取走一个脏盘子】水槽_3 → 水槽_2
{
"source": "rtdd:flume_3",
"item": None,
"target": "rtdd:flume_2",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:plate_0a",
},
# 【取走最后一个脏盘子】水槽_2 → 水槽_1
{
"source": "rtdd:flume_2",
"item": None,
"target": "rtdd:flume_1",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:plate_0a",
},
# 十四、盘子架系统
# ============================================================
# ---- 放盘子 ----
# 【放第一个盘子】盘子架_1 → 盘子架_2
{
"source": "rtdd:trayracks_1",
"item": "rtdd:plate_0",
"target": "rtdd:trayracks_2",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【放第二个盘子】盘子架_2 → 盘子架_3
{
"source": "rtdd:trayracks_2",
"item": "rtdd:plate_0",
"target": "rtdd:trayracks_3",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【放第三个盘子】盘子架_3 → 盘子架_4
{
"source": "rtdd:trayracks_3",
"item": "rtdd:plate_0",
"target": "rtdd:trayracks_4",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【放第四个盘子】盘子架_4 → 盘子架_5
{
"source": "rtdd:trayracks_4",
"item": "rtdd:plate_0",
"target": "rtdd:trayracks_5",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# 【放第五个盘子】盘子架_5 → 盘子架_6
{
"source": "rtdd:trayracks_5",
"item": "rtdd:plate_0",
"target": "rtdd:trayracks_6",
"consume": 1,
"type": "switch",
"giveItem": None,
},
# ---- 取回盘子 ----
# 【取走一个盘子】盘子架_6 → 盘子架_5
{
"source": "rtdd:trayracks_6",
"item": None,
"target": "rtdd:trayracks_5",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:plate_0",
},
# 【取走一个盘子】盘子架_5 → 盘子架_4
{
"source": "rtdd:trayracks_5",
"item": None,
"target": "rtdd:trayracks_4",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:plate_0",
},
# 【取走一个盘子】盘子架_4 → 盘子架_3
{
"source": "rtdd:trayracks_4",
"item": None,
"target": "rtdd:trayracks_3",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:plate_0",
},
# 【取走一个盘子】盘子架_3 → 盘子架_2
{
"source": "rtdd:trayracks_3",
"item": None,
"target": "rtdd:trayracks_2",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:plate_0",
},
# 【取走最后一个盘子】盘子架_2 → 盘子架_1
{
"source": "rtdd:trayracks_2",
"item": None,
"target": "rtdd:trayracks_1",
"consume": 0,
"type": "switch",
"giveItem": "rtdd:plate_0",
},
# 十五、药水架系统(后放先取)
# ============================================================
# ---- 放药水 ----
# 【放第一瓶】药水架_0 → 药水架_1
{
"source": "rtdd:lotion_0",
"item": "minecraft:potion",
"target": "rtdd:lotion_1",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 3,
"giveItem": None,
},
# 【放第二瓶】药水架_1 → 药水架_2
{
"source": "rtdd:lotion_1",
"item": "minecraft:potion",
"target": "rtdd:lotion_2",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 3,
"giveItem": None,
},
# 【放第三瓶】药水架_2 → 药水架_3
{
"source": "rtdd:lotion_2",
"item": "minecraft:potion",
"target": "rtdd:lotion_3",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 3,
"giveItem": None,
},
# ---- 取回(后放先取) ----
# 【取回第三瓶】药水架_3 → 药水架_2
{
"source": "rtdd:lotion_3",
"item": None,
"target": "rtdd:lotion_2",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第二瓶】药水架_2 → 药水架_1
{
"source": "rtdd:lotion_2",
"item": None,
"target": "rtdd:lotion_1",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第一瓶】药水架_1 → 药水架_0
{
"source": "rtdd:lotion_1",
"item": None,
"target": "rtdd:lotion_0",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 十六、书柜系统(后放先取,13级)
# ============================================================
# ---- 放书 ----
# 【放第1本】空书柜 → 书柜_12
{
"source": "rtdd:bookcase",
"item": "minecraft:book",
"target": "rtdd:bookcase_12",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_12",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第2本】书柜_12 → 书柜_11
{
"source": "rtdd:bookcase_12",
"item": "minecraft:book",
"target": "rtdd:bookcase_11",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_12",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_11",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第3本】书柜_11 → 书柜_10
{
"source": "rtdd:bookcase_11",
"item": "minecraft:book",
"target": "rtdd:bookcase_10",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_11",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_10",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第4本】书柜_10 → 书柜_9
{
"source": "rtdd:bookcase_10",
"item": "minecraft:book",
"target": "rtdd:bookcase_9",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_10",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_9",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第5本】书柜_9 → 书柜_8
{
"source": "rtdd:bookcase_9",
"item": "minecraft:book",
"target": "rtdd:bookcase_8",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_9",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_8",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第6本】书柜_8 → 书柜_7
{
"source": "rtdd:bookcase_8",
"item": "minecraft:book",
"target": "rtdd:bookcase_7",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_8",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_7",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第7本】书柜_7 → 书柜_6
{
"source": "rtdd:bookcase_7",
"item": "minecraft:book",
"target": "rtdd:bookcase_6",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_7",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_6",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第8本】书柜_6 → 书柜_5
{
"source": "rtdd:bookcase_6",
"item": "minecraft:book",
"target": "rtdd:bookcase_5",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_6",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_5",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第9本】书柜_5 → 书柜_4
{
"source": "rtdd:bookcase_5",
"item": "minecraft:book",
"target": "rtdd:bookcase_4",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_5",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_4",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第10本】书柜_4 → 书柜_3(B_196)
{
"source": "rtdd:bookcase_4",
"item": "minecraft:book",
"target": "rtdd:b_196",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_4",
"item": "minecraft:enchanted_book",
"target": "rtdd:b_196",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第11本】书柜_3(B_196) → 书柜_3
{
"source": "rtdd:b_196",
"item": "minecraft:book",
"target": "rtdd:bookcase_3",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:b_196",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_3",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第12本】书柜_3 → 书柜_2
{
"source": "rtdd:bookcase_3",
"item": "minecraft:book",
"target": "rtdd:bookcase_2",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_3",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_2",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# 【放第13本】书柜_2 → 书柜_1
{
"source": "rtdd:bookcase_2",
"item": "minecraft:book",
"target": "rtdd:bookcase_1",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
{
"source": "rtdd:bookcase_2",
"item": "minecraft:enchanted_book",
"target": "rtdd:bookcase_1",
"consume": 1,
"type": "switch",
"record": True,
"recordType": "stack",
"maxCount": 13,
"giveItem": None,
},
# ---- 取回(后放先取) ----
# 【取回第13本】书柜_1 → 书柜_2
{
"source": "rtdd:bookcase_1",
"item": None,
"target": "rtdd:bookcase_2",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第12本】书柜_2 → 书柜_3
{
"source": "rtdd:bookcase_2",
"item": None,
"target": "rtdd:bookcase_3",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第11本】书柜_3 → 书柜_3(B_196)
{
"source": "rtdd:bookcase_3",
"item": None,
"target": "rtdd:b_196",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第10本】书柜_3(B_196) → 书柜_4
{
"source": "rtdd:b_196",
"item": None,
"target": "rtdd:bookcase_4",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第9本】书柜_4 → 书柜_5
{
"source": "rtdd:bookcase_4",
"item": None,
"target": "rtdd:bookcase_5",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第8本】书柜_5 → 书柜_6
{
"source": "rtdd:bookcase_5",
"item": None,
"target": "rtdd:bookcase_6",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第7本】书柜_6 → 书柜_7
{
"source": "rtdd:bookcase_6",
"item": None,
"target": "rtdd:bookcase_7",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第6本】书柜_7 → 书柜_8
{
"source": "rtdd:bookcase_7",
"item": None,
"target": "rtdd:bookcase_8",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第5本】书柜_8 → 书柜_9
{
"source": "rtdd:bookcase_8",
"item": None,
"target": "rtdd:bookcase_9",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第4本】书柜_9 → 书柜_10
{
"source": "rtdd:bookcase_9",
"item": None,
"target": "rtdd:bookcase_10",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第3本】书柜_10 → 书柜_11
{
"source": "rtdd:bookcase_10",
"item": None,
"target": "rtdd:bookcase_11",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第2本】书柜_11 → 书柜_12
{
"source": "rtdd:bookcase_11",
"item": None,
"target": "rtdd:bookcase_12",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
# 【取回第1本】书柜_12 → 空书柜
{
"source": "rtdd:bookcase_12",
"item": None,
"target": "rtdd:bookcase",
"consume": 0,
"type": "switch",
"record": True,
"recordType": "stack",
"giveItem": None,
},
]