PacketHandler
基本信息
| 属性 | 值 |
|---|---|
| 路径 | baubles.common.network.PacketHandler |
| 类型 | class |
| 包名 | baubles.common.network |
网络通道
| 项 | 值 |
|---|---|
INSTANCE |
SimpleNetworkWrapper |
| 通道名 | Baubles.MODID.toLowerCase() = "baubles" |
已注册消息
| Discriminator | 类 | 方向 |
|---|---|---|
| 0 | PacketOpenBaublesInventory | C → S |
| 1 | PacketOpenNormalInventory | C → S |
| 2 | PacketSyncBauble | S → C |
| 3 | PacketSyncAllBauble | S → C |
方法
| 方法 | 用途 |
|---|---|
init() |
在 Baubles.preInit 中调用,注册全部 4 个消息类 |
sendToTracking(IMessage message, EntityPlayer target, boolean sendToTarget) |
把消息发送给所有追踪 target 的玩家;sendToTarget=true 时也发送给 target 自身。本质是拿到 ((WorldServer) world).getEntityTracker() 并调用其 func_151248_b(包含自身)或 func_151247_a(不含自身) |
注意事项
- 必须在服务器侧调用
sendToTracking;客户端侧 world 没有 EntityTracker,函数会打印 error 后返回 - 所有包都使用 SimpleNetworkWrapper 的 default
registerMessage注册,handler 写在消息类自身