右键 改2
This commit is contained in:
1 parent
e118892a1d
commit
45d328b339
19 files changed
+826
-7
No files matched your search
@@ -956,3 +956,19 @@ FurnitureData+FurnitureService 实现, 注册到 FeatureDispatcher)
|
||||
面食补 蒸牛奶鸡蛋(steamermilkandegg); 死亡生物修正 挂鱼晾干钩(meathookcoddry)
|
||||
为"空手右键取鱼干"并补挂肉架_3/4 [已实现]
|
||||
|
||||
|
||||
########################################
|
||||
【右键拦截白名单化 + 客户端拦截】2026-09-22
|
||||
########################################
|
||||
- 问题: 原 OnItemUseOn 有宽泛兜底"手持方块物品右键任意功能方块且无 itemUseOn
|
||||
服务就 ret=True 取消默认放置", 导致正常放置失效。
|
||||
- 修复: ①删除该宽泛兜底, 服务端只处理真正注册了 itemUseOn 的组合, 其余放行 → 放置恢复
|
||||
②新增共享白名单 InterceptData.py(客户端/服务端同一份): PLATE_CANCEL装盘/
|
||||
MIANSHI_CANCEL面食/ TANGGUO_CANCEL汤锅/ CHAOGUO_CANCEL盖饭双向/
|
||||
CHUJU_CANCEL锅铲油罐炒锅/ SUSHI_CANCEL寿司堆叠/ COATING_CANCEL裹粉/
|
||||
PLACE_ITEMS原版相邻放置/ EAT_ITEMS手持直接吃/ BLOCK_USE_CANCEL右键功能方块
|
||||
③新增 ClientFeatureDispatcher.py(继承 BlueFoxClientSystem): 监听
|
||||
ClientBlockUseEvent(cancel功能方块)/ ClientItemUseOnEvent(ret白名单组合)/
|
||||
ClientItemTryUseEvent(cancel手持吃物品), 客户端提前拦截消除"闪一下"
|
||||
④modMain.py 客户端分支导入 ClientFeatureDispatcher, 由 BlueFox 框架自动注册 [已实现]
|
||||
|
||||
@@ -0,0 +1,138 @@
|
||||
========================================
|
||||
右键拦截白名单清单(手持 item 右键 功能方块)
|
||||
(供"客户端拦截 + 白名单精确化"改造参考,审核稿)
|
||||
========================================
|
||||
说明:
|
||||
- 本清单列出所有"手持物品右键某个功能方块"时, 需要【取消该物品默认行为
|
||||
(右键吃/放置)】、改由模组处理的 精确 (手持item, 被点block) 组合。
|
||||
- 目标是"精确白名单, 不误伤": 只有以下组合会在客户端提前 cancel/ret,
|
||||
其余手持物品右键任何方块一律放行, 正常放置回归。
|
||||
- 来源: 逐服务从代码中已注册的 itemUseOnRules 自动提取。
|
||||
|
||||
【分类】
|
||||
一、原版放置(相邻空格放置, 手持原版物品右键任意表面 -> 放置到相邻格)
|
||||
- 这类其实不强依赖"被点方块", 但右键时会触发原版"放置前摇";
|
||||
客户端拦截 key = 手持item(不做被点block限制), 取消后由服务端放块。
|
||||
二、盘子装盘(手持原版食物右键 空盘子 plate_0 -> 盘子变换)
|
||||
三、面食.甜食 手持转换(右键 烤炉/木碗/蒸笼)
|
||||
四、汤锅 手持转换(右键 熟面条碗)
|
||||
五、炒锅 盖饭转换(手持成品菜右键 米饭/米饭右键 成品菜)
|
||||
六、乡野食材 裹粉(手持生食材右键 面粉块)
|
||||
七、厨具 锅铲/带油锅铲(右键 油罐/炒锅)
|
||||
八、乡野自然 水稻种植(手持稻谷右键地面/水)
|
||||
九、寿司 手持方块物品右键自家寿司方块(取消默认放置)
|
||||
十、总食用 手持直接吃物品(饭团/水煮蛋/豆腐)
|
||||
|
||||
|
||||
========================================
|
||||
一、原版放置 (YuanbanService ITEM_USE_ON_RULES)
|
||||
========================================
|
||||
右键场景: 手持原版/自定义生食材 右键 任意方块表面 -> 在相邻空格放置切配块/生肉。
|
||||
取消key: 手持item (客户端不限制被点block, 仅知道要取消放置, 由服务端落块)
|
||||
- minecraft:chicken -> 放置 生鸡肉(放置后) roastchickenplace_0
|
||||
- minecraft:salmon -> 放置 死鲑鱼 killfish_0
|
||||
- minecraft:cod -> 放置 死鳕鱼 killcod_0
|
||||
- minecraft:fish(网易兼容) -> 放置 死鳕鱼 killcod_0
|
||||
- minecraft:carrot -> 放置 切胡萝卜 cutcarrot_0
|
||||
- minecraft:potato -> 放置 切土豆 cutpotato_0
|
||||
- rtdd:qingcai(青菜) -> 放置 切青菜 cutvegetable_0
|
||||
- rtdd:scallions(葱) -> 放置 葱花_1 cutscallions_1
|
||||
|
||||
|
||||
========================================
|
||||
二、盘子装盘 (YuanbanService PLATE_RULES)
|
||||
========================================
|
||||
右键场景: 手持原版食物 右键 空盘子(rtdd:plate_0) -> 盘子变为对应成品盘。
|
||||
取消key: (手持item, 被点block=rtdd:plate_0)
|
||||
- minecraft:pumpkin_pie + plate_0 -> plate_16 (南瓜派盘)
|
||||
- minecraft:cod + plate_0 -> plate_17 (生鱼片盘)
|
||||
- minecraft:salmon + plate_0 -> plate_17
|
||||
- minecraft:tropical_fish + plate_0 -> plate_17
|
||||
- minecraft:fish(网易) + plate_0 -> plate_17
|
||||
- minecraft:melon_slice + plate_0 -> plate_18 (西瓜盘)
|
||||
- minecraft:bread + plate_0 -> plate_20 (面包盘)
|
||||
- minecraft:cookie + plate_0 -> plate_21 (曲奇盘)
|
||||
- minecraft:cooked_chicken + plate_0 -> plate_4 (熟鸡肉盘)
|
||||
|
||||
|
||||
========================================
|
||||
三、面食.甜食 (Mianshi ITEM_USE_ON_RULES)
|
||||
========================================
|
||||
右键场景: 手持半成品 右键 烤炉/木碗/蒸笼。
|
||||
取消key: (手持item, 被点block)
|
||||
- rtdd:dought_7(生面饼) + OVEN(rtdd:oven) -> 烤炉上方放置 馍 roujiamo_0
|
||||
- rtdd:farineblock_1(面粉加鸡蛋) + BOWL(rtdd:bowlasoup木碗)
|
||||
-> 木碗变 蛋糕面糊(生) cakebatterblock_0
|
||||
- rtdd:dumplings_4(生饺子) + STEAMER(rtdd:steamer) -> 蒸笼变 蒸饺子(生) steamerdumplings_0, 计时
|
||||
- rtdd:roubaozi_3(生肉包子) + STEAMER -> 蒸笼变 蒸包子(生) baozilong_1, 计时
|
||||
- rtdd:bamboo_4(竹筒加肉) + STEAMER -> 蒸笼变 竹筒饭(生) bamboo_6, 计时
|
||||
- rtdd:plate_34(蛋液半成品) + STEAMER -> 蒸笼变 蒸牛奶鸡蛋 steamermilkandegg, 计时
|
||||
|
||||
|
||||
========================================
|
||||
四、汤锅 (Tangguo ITEM_USE_ON_RULES)
|
||||
========================================
|
||||
右键场景: 手持锅态汤方块 右键 熟面条碗(noodle_soup) -> 面条碗变对应汤面。
|
||||
取消key: (手持item, 被点block=rtdd:noodle_soup)
|
||||
- 蘑菇汤(rtdd:mushroomsoup) -> mushroomnoodles(香菇面)
|
||||
- 蔬菜汤(rtdd:vegetablesoup) -> vegetable_noodles(蔬菜面)
|
||||
- 蛋花汤(rtdd:eggsoup) -> noodles_1(蛋花面)
|
||||
- (该表还被组装成 胡萝卜牛肉汤等 熟品 -> 各汤面, 见 ITEM_USE_ON_RULES)
|
||||
|
||||
|
||||
========================================
|
||||
五、炒锅 盖饭 (Chaoguo ITEM_USE_ON_RULES)
|
||||
========================================
|
||||
右键场景: 双向转换(手持成品菜右键米饭 / 手持米饭右键成品菜)。
|
||||
取消key: 手持item + 被点block 双向都要取消默认放置。
|
||||
正向(手持成品菜 -> 右键 米饭 bowlofrice/2/3):
|
||||
- 辣子鸡丁(plate_47) -> 辣子鸡丁盖饭(全份) plate_48
|
||||
- 香菇滑鸡(plate_54) -> 香菇滑鸡盖饭(全份) plate_55
|
||||
- 麻婆豆腐(plate_32) -> 麻婆豆腐盖饭 plate_56
|
||||
- 胡萝卜炒鳕鱼(plate_15) -> 鳕鱼盖饭 plate_50
|
||||
反向(手持米饭 bowlofrice/2/3 -> 右键上述成品菜方块):
|
||||
- 米饭三形态 右键 辣子鸡丁plate_47/香菇滑鸡plate_54/麻婆豆腐plate_32/胡萝卜炒鳕鱼plate_15
|
||||
被点方块原地变对应盖饭
|
||||
|
||||
|
||||
========================================
|
||||
六、乡野食材 裹粉 (Shicai COATING_RULES)
|
||||
========================================
|
||||
右键场景: 手持生食材 右键 面粉块(farineblock_3) -> 裹粉。
|
||||
取消key: 手持item + 被点block=rtdd:farineblock_3
|
||||
- rtdd:sashimi(生鱼片) 等裹粉食材(具体清单见 ShicaiData.COATING_RULES)
|
||||
|
||||
|
||||
========================================
|
||||
七、厨具 (Chuju 锅铲/带油锅铲)
|
||||
========================================
|
||||
右键场景: 手持锅铲 右键 油罐/炒锅。
|
||||
取消key:
|
||||
- rtdd:spatula(锅铲) + rtdd:oilcan(油罐) -> 锅铲变带油锅铲, 油罐次数-1
|
||||
- rtdd:spatula_oil(带油锅铲) + rtdd:oilcan -> 变回锅铲, 油罐次数+1
|
||||
- rtdd:spatula_oil(带油锅铲) + rtdd:wok(炒锅) -> 炒锅变炒锅(添油), 油铲变回锅铲
|
||||
|
||||
|
||||
========================================
|
||||
八、乡野自然 水稻 (Natural RICE_PLANT)
|
||||
========================================
|
||||
右键场景: 手持稻谷 右键 水面/地面 -> 种植水稻。
|
||||
取消key: 手持item=rtdd:rice_seeds(稻谷)
|
||||
|
||||
|
||||
========================================
|
||||
九、寿司 (Shousi)
|
||||
========================================
|
||||
右键场景: 手持寿司方块物品 右键 自家寿司方块 -> 取消默认放置(意图是堆叠/转换)。
|
||||
取消key: 手持item=全部寿司方块物品 + 被点block=自家寿司方块
|
||||
- 卷寿司/手握/寿司堆 等全部 sushiBlockItems 右键 自家方块
|
||||
|
||||
|
||||
========================================
|
||||
十、总食用 手持直接吃 (Shiyongfood TRY_USE_RULES)
|
||||
========================================
|
||||
右键场景: 手持物品 右键空中/方块 -> 直接吃(不放置)。
|
||||
取消key: 手持item (ClientItemTryUseEvent cancel)
|
||||
- rtdd:rice_balls(饭团) -> 直接吃
|
||||
- rtdd:boiled_egg(水煮蛋) -> 直接吃
|
||||
- rtdd:beancurd(豆腐) -> 直接吃
|
||||
Reference in new issue
Block a user