This commit is contained in:
wenhe committed 2026-09-11 11:51:23 +08:00
1 parent a4c5ad43e4
commit ad48047f4a
3 files changed
+19 -7

No files matched your search

@@ -231,10 +231,6 @@ class FeatureDispatcher(BlueFoxServerSystem):
"""
itemName = args.get("itemName")
services = self.itemUseOnAll.get(itemName)
if not services:
return
print "[FD-ItemUseOn]", itemName, "svcs:", [s.__class__.__name__ for s in services]
playerId = args.get("playerId") or args.get("entityId")
# 被点方块(用于去重: 该方块归哪些右键服务管辖)
clickedName = None
@@ -247,6 +243,19 @@ class FeatureDispatcher(BlueFoxServerSystem):
pass
owners = self.blockOwnerAll.get(clickedName) if clickedName else None
# 手持方块物品右键"功能方块"(右键服务管辖的方块): 若没有任何 itemUseOn
# 服务会处理它, 直接取消默认放置 —— 防止"先放一个方块再消失"的体验
# (例如手持生饺子右键蒸笼、手持方块右键面团等, 意图是转换而非放置)
if clickedName and owners and (not services or not any(
s in owners for s in services)):
args['ret'] = True
return
if not services:
return
print "[FD-ItemUseOn]", itemName, "svcs:", [s.__class__.__name__ for s in services]
for service in services:
# 被点方块属于某些"右键方块"服务的管辖(条箱/挂肉钩/锅具等) → 该方块右键由
# ServerBlockUseEvent 处理(放入/挂鱼/做菜), 跳过本服务的 itemUseOn,