SignManager
基本信息
| 属性 |
值 |
| 类名 |
myessentials.entities.api.sign.SignManager |
| 类型 |
class,static final SignManager instance,3 个方法 |
| 事件 |
PlayerInteractEvent、PlayerEvent.PlayerLoggedOutEvent 等 |
| 启用版本 |
Minecraft 1.7.10 |
功能
告示牌的生命周期管理:加载、玩家交互处理、方块破坏处理。
| 方法 |
说明 |
loadSign(...) |
从世界 / TileEntity 载入告示牌 |
onPlayerInteract(...) |
玩家点击告示牌 |
onPlayerBreaksBlock(...) |
玩家破坏告示牌方块 |
实现要点
- 单例
instance 被 MyEssentialsCore 的 preInit
同时注册到 FML 总线与 Forge 总线。
- 载入时调用
SignClassTransformer
的
getMyEssentialsDataValue(tileEntity) 读取注入字段。
- ⚠️ 由于该 transformer 未注册(无 coremod),
上述反射会因字段不存在而抛
RuntimeException——
这是本 mod 最实质的功能缺陷。
- 事件里还会通过 SignType 的
isTileValid 确认目标方块确实是受管的告示牌。
相关条目