炒冰盒问题
This commit is contained in:
1 parent
14e5057d58
commit
6e46eb5d34
3 files changed
+54
-1
No files matched your search
@@ -180,6 +180,17 @@ try:
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
# 饮料·冰棍盒/炒冰盒 整条"放料"链(放冰 + 放水果): YinliaoData.LOLLY_FRYICE_BLOCKUSE。
|
||||
# 冰块是可放置方块物品 -> 原版先播"放置"前摇(闪一下);
|
||||
# 水果多为可食用(苹果/西瓜片/葡萄/桃子/橙子) -> 原版当"吃"吞掉(一边吃一边放)。
|
||||
# 两处均为内联转换, 故需在此罗列组合 -> 纳入 BLOCKUSE_CANCEL, 客户端提前 ret 并走
|
||||
# BlockUseRequest 到 YinliaoService.handleBlockUse(放冰/放水果换态)。
|
||||
try:
|
||||
from ..yinliao.YinliaoData import LOLLY_FRYICE_BLOCKUSE as YINLIAO_LOLLY_BLOCKUSE
|
||||
_BLOCK_USE_TABLES.append(YINLIAO_LOLLY_BLOCKUSE)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
# ---- 乡野自然(种葡萄: 手持葡萄右键支杆): NaturalData.GRAPE_PLANT ----
|
||||
# 葡萄是食物(eat 动画), 右键支杆会被原版当"吃/使用"前摇, 需纳入 BLOCKUse 取消消闪,
|
||||
# 机制与烧烤上杆(cod/salmon 同为食物右键支杆)完全一致。
|
||||
|
||||
@@ -136,3 +136,26 @@ FRYICE_FRUITS = {
|
||||
|
||||
# 炒冰盒方块 → (水果物品名, 冰沙方块, 口味名) 反向表(取冰沙用)
|
||||
FRYICE_BOX_INFO = {v[0]: (k, v[1], v[2]) for k, v in FRYICE_FRUITS.items()}
|
||||
|
||||
# ============================================================================
|
||||
# 冰棍盒/炒冰盒·客户端消闪拦截(BlockUse)
|
||||
# 这两套"放料"链是内联转换(见 YinliaoService._handleLollyBox / _handleFryIceBox),
|
||||
# 不在 Data 规则表 -> 在此罗列组合, 注册进 InterceptData._BLOCK_USE_TABLES 后自动
|
||||
# 进入 BLOCKUSE_CANCEL, 由客户端提前 ret + BlockUseRequest 消闪并禁止原版默认行为。
|
||||
# 为什么必须先拦:
|
||||
# 冰块是可放置方块物品 -> 原版先播"放置"前摇(闪一下);
|
||||
# 水果多为可食用(苹果/西瓜片/rtdd 葡萄/桃子/橙子) -> 原版当"吃"吞掉(一边吃一边放)。
|
||||
# 组合:
|
||||
# 放冰: 各冰块 × icelollybox_1(冰棍盒未定型) / frytheicebox(炒冰盒空)
|
||||
# 放水果: POPSICLE_FRUITS 各水果 × icelollybox_2(冰棍盒定型)
|
||||
# FRYICE_FRUITS 各水果 × frytheicebox_1(炒冰盒已放冰)
|
||||
# 实际行为仍由服务端 handleBlockUse 决定(消耗1冰/放水果换态)。
|
||||
# ============================================================================
|
||||
LOLLY_FRYICE_BLOCKUSE = []
|
||||
for _ice in ICE_ITEMS:
|
||||
LOLLY_FRYICE_BLOCKUSE.append({"item": _ice, "block": ICE_LOLLY_FREEZE["source"]})
|
||||
LOLLY_FRYICE_BLOCKUSE.append({"item": _ice, "block": "rtdd:frytheicebox"})
|
||||
for _fr in POPSICLE_FRUITS:
|
||||
LOLLY_FRYICE_BLOCKUSE.append({"item": _fr, "block": ICE_LOLLY_FREEZE["target"]})
|
||||
for _fr in FRYICE_FRUITS:
|
||||
LOLLY_FRYICE_BLOCKUSE.append({"item": _fr, "block": "rtdd:frytheicebox_1"})
|
||||
Reference in new issue
Block a user