ceshi 1
This commit is contained in:
1 parent
9eb9edbb8a
commit
b768ff1555
10 files changed
+618
-15
No files matched your search
@@ -705,6 +705,10 @@ FurnitureData+FurnitureService 实现, 注册到 FeatureDispatcher)
|
||||
|
||||
【提示/体验】倒油/取油/放料/出锅均有提示(含消耗数量与计时时长); 数量不足/油锅下无点燃炉灶
|
||||
有提示并拦截; 右键冷却0.4秒; 手持方块物品右键油锅类功能方块取消默认放置(全局) [已实现]
|
||||
【盛出消闪 2026-09-23】手持盘子右键熟炸物(盘子 take_out, 6条), 改走客户端拦截+显式触发
|
||||
(同汤锅): 客户端 ClientItemUseOnEvent ret=True 消闪 + NotifyToServer('TakeoutRequest')
|
||||
-> YouguoService.handleTakeoutRequest(校验落点仍是成品防重复). 由 InterceptData.TAKEOUT_CANCEL
|
||||
自动派生 [已实现]
|
||||
【留后】各盘装成品 右键吃(总食用功能后续实现)、天妇罗炸虾递减吃(整份->半份 plate_49a)、
|
||||
盘子用后变脏
|
||||
|
||||
@@ -787,6 +791,14 @@ FurnitureData+FurnitureService 实现, 注册到 FeatureDispatcher)
|
||||
【提示/体验】所有转换有提示(含消耗数量与下一步指引: "可继续加料 或 等计时结束变成X,
|
||||
手持木碗出锅"); 数量不足/下方无点燃炉灶有提示并拦截; 右键冷却0.4秒; 手持方块物品右键
|
||||
汤锅类功能方块取消默认放置(全局) [已实现]
|
||||
【盛出消闪 2026-09-23】手持木碗/盘子右键成品汤方块(碗/盘 take_out), 改走客户端拦截+
|
||||
显式触发: 客户端 ClientItemUseOnEvent 对该组合 ret=True(取消放置前摇, 消除"闪一下"),
|
||||
再 NotifyToServer('TakeoutRequest') 显式通知服务端执行盛出(FeatureDispatcher.OnTakeoutRequest
|
||||
-> TangguoService.handleTakeoutRequest, 校验落点仍是成品防重复). 空手取出/菜刀切豆腐不走此路,
|
||||
照旧 ServerBlockUseEvent. 由 InterceptData.TAKEOUT_CANCEL 自动派生 [已实现]
|
||||
- 后续修复: 客户端新增 1.5 秒放置冷却(_afterCd): 盛出/出锅后, 同一坐标短时间内再被引擎
|
||||
当作"放置"直接 ret 吞掉, 消除"变锅后多放置一次碗/盘"的闪烁 (2026-09-23 修) [已实现]
|
||||
- 服务端 OnTakeoutRequest 不再设 _cancelItemUse(避免标记残留吞后续 itemUseOn), 由客户端 CD 兜 [已实现]
|
||||
【留后】各碗装成品/汤面 右键吃(总食用功能后续实现)
|
||||
|
||||
|
||||
@@ -881,10 +893,18 @@ FurnitureData+FurnitureService 实现, 注册到 FeatureDispatcher)
|
||||
- 反向: 手持 米饭(形态1/2/3任一) 右键 上述成品菜方块, 消耗1个米饭, 菜品原地变对应盖饭 [已实现]
|
||||
- 蛋炒饭加米饭: 手持米饭(任一形态)右键 炒锅_86(蛋炒饭_加胡萝卜_熟) -> 炒锅_87(蛋炒饭_加米饭_熟) [已实现]
|
||||
- 手持成品菜/米饭 右键 本分类功能方块 无对应转换时直接取消默认放置(不"先放再消失") [已实现]
|
||||
- 修复: 盖饭被客户端白名单吞掉而"点无反应"(成品菜/米饭组合在 ITEM_USE_ON_CANCEL,
|
||||
客户端 ret=True 吞掉服务端 ServerItemUseOnEvent) -> 改走客户端拦放置预览(消闪)
|
||||
+ 显式 NotifyToServer('GaifanRequest') -> FeatureDispatcher.OnGaifanRequest
|
||||
-> ChaoguoService.handleItemUseOn(构造 itemUseOn args), 同盛出机制 (2026-09-23 修) [已实现]
|
||||
|
||||
【提示/体验】所有转换有提示(含消耗数量与下一步指引); 数量不足/翻炒无下方点燃炉灶/
|
||||
出锅门控未达成(煎蛋未熟/酱香饼未翻炒) 有提示并拦截; 翻炒冷却0.3秒, 其余右键冷却0.4秒;
|
||||
手持方块物品右键炒锅类功能方块取消默认放置(全局) [已实现]
|
||||
【盛出消闪 2026-09-23】手持盘子右键炒锅熟成品(盘子 take_out, 38条), 改走客户端拦截+
|
||||
显式触发(同汤锅): 客户端 ClientItemUseOnEvent ret=True 消闪 + NotifyToServer('TakeoutRequest')
|
||||
-> ChaoguoService.handleTakeoutRequest(校验落点仍是成品防重复). 空手出锅(煎饼/馍等 item=None)
|
||||
不走此路, 照旧 ServerBlockUseEvent. 由 InterceptData.TAKEOUT_CANCEL 自动派生 [已实现]
|
||||
【留后】各盘装成品/盖饭 右键吃(总食用功能后续实现)、半份/部分份变体出锅(见 全部功能没做什么.txt)
|
||||
|
||||
|
||||
@@ -982,3 +1002,29 @@ FurnitureData+FurnitureService 实现, 注册到 FeatureDispatcher)
|
||||
成品菜/米饭右键炒锅中间态方块→取消放置"的服务端兜底, 因要使客户端白名单宁少勿多
|
||||
(避免误拦正常放置), 该边缘防误触仍只服务端处理(功能正确, 仅轻微闪烁), 暂不搬客户端 [已复查]
|
||||
|
||||
########################################
|
||||
【统一 itemUseOn 转换 消闪修复】(2026-09-23)
|
||||
########################################
|
||||
背景: [总食用转化关系.txt] 中"盖饭/盛出"等走 handleItemUseOn / handleBlockUse 的转换
|
||||
被客户端纯 ret=True 吞掉服务端 ServerItemUseOnEvent / ServerBlockUseEvent, 导致"点无反应"
|
||||
(盖饭此前已用 GAI_FAN_CANCEL + GaifanRequest 修复)。
|
||||
本轮审计其余所有"走 handleItemUseOn 的 itemUseOn 转换", 发现同款风险, 统一修复:
|
||||
- 覆盖: 原版相邻放置 / 盘子装盘 / 面食手持转换(烤炉/木碗/蒸笼) / 汤锅手持转换(熟面条碗)
|
||||
/ 裹粉(面粉块) / 厨具锅铲蘸油(油罐/炒锅) / 种水稻 / 寿司堆叠 / 手持直接吃(右键表面)
|
||||
- 方案:
|
||||
①新增 FeatureDispatcher.OnItemUseOnRequest(服务端), 按 itemName 路由 itemUseOnAll
|
||||
各服务 handleItemUseOn(与 OnGaifanRequest 同机制, 逐个 fallback)
|
||||
②客户端 ClientFeatureDispatcher.OnItemUseOn 将这些纯 ret 分支统一改为
|
||||
ret=True(消闪) + NotifyToServer('ItemUseOnRequest') 显式触发
|
||||
③去重: 各服务 handleItemUseOn 自带 checkCooldown(同坐标/同物品), 重复触发被冷却拦截
|
||||
- 细节:
|
||||
①"相邻放置/装盘"(ITEM_USE_ON_CANCEL_BY_ITEM) 分支【不设 _afterCd】, 因被点表面坐标
|
||||
不变, 设了会误吞同一表面 1.5s 内连续放置(如连摆多个切配块); 去重靠服务端冷却
|
||||
②"盖饭/蛋炒饭"(GAI_FAN_CANCEL)、"盛出/出锅"(TAKEOUT_CANCEL) 仍用各自专用事件, 不变
|
||||
- 文件:
|
||||
①FeatureDispatcher.py: 新增 ITEM_USE_ON_REQUEST 常量 / ListenEvent / UnListenEvent /
|
||||
OnItemUseOnRequest
|
||||
②ClientFeatureDispatcher.py: 导入 SUSHI_CANCEL, 新增 ITEM_USE_ON_REQUEST 常量,
|
||||
OnItemUseOn 的 BY_ITEM / ITEM_USE_ON_CANCEL / SUSHI / COATING 分支全部改为 ret+显式事件
|
||||
③白名单清单: 新增"十三、其余 itemUseOn 转换 统一显式事件修复" [已实现]
|
||||
|
||||
Reference in new issue
Block a user