CustomPacketPayloadHandler.java 文件源码

java
阅读 22 收藏 0 点赞 0 评论 0

项目:CustomOreGen 作者:
@SubscribeEvent
public void serverCustomPayload(ServerCustomPacketEvent event)
{
    EntityPlayerMP player = ((NetHandlerPlayServer)event.getHandler()).playerEntity;
    World handlerWorld = player.world;
    ServerState.checkIfServerChanged(handlerWorld.getMinecraftServer(), handlerWorld.getWorldInfo());
    CustomPacketPayload payload = CustomPacketPayload.decodePacket(event.getPacket());

    if (payload != null)
    {
        switch (payload.type)
        {
            case DebuggingGeometryRequest:
                GeometryData geometryData = null;

                if (player.mcServer.getPlayerList().canSendCommands(player.getGameProfile()));
                {
                    geometryData = ServerState.getDebuggingGeometryData((GeometryRequestData)payload.data);
                }

                if (geometryData == null)
                {
                    (new CustomPacketPayload(PayloadType.DebuggingGeometryRenderMode, "_DISABLE_")).sendToClient(player);
                }
                else
                {
                    (new CustomPacketPayload(PayloadType.DebuggingGeometryData, geometryData)).sendToClient(player);
                }

                break;

            default:
                throw new RuntimeException("Unhandled server packet type " + payload.type);
        }
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号