package com.minemaarten.signals.network; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.world.World; import net.minecraftforge.fml.common.network.NetworkRegistry; import net.minecraftforge.fml.common.network.simpleimpl.IMessage; import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper; import net.minecraftforge.fml.relauncher.Side; public class NetworkHandler{ private static final SimpleNetworkWrapper INSTANCE = NetworkRegistry.INSTANCE.newSimpleChannel("Signals"); private static int discriminant; public static void init(){ INSTANCE.registerMessage(PacketUpdateGui.class, PacketUpdateGui.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketUpdateMessage.class, PacketUpdateMessage.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketSpawnParticle.class, PacketSpawnParticle.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketUpdateMinecartEngineState.class, PacketUpdateMinecartEngineState.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketUpdateNetwork.class, PacketUpdateNetwork.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketClearNetwork.class, PacketClearNetwork.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketUpdateTrainPath.class, PacketUpdateTrainPath.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketAddOrUpdateTrain.class, PacketAddOrUpdateTrain.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketRemoveTrain.class, PacketRemoveTrain.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketUpdateSignals.class, PacketUpdateSignals.class, discriminant++, Side.CLIENT); INSTANCE.registerMessage(PacketGuiButton.class, PacketGuiButton.class, discriminant++, Side.SERVER); INSTANCE.registerMessage(PacketUpdateTextfield.class, PacketUpdateTextfield.class, discriminant++, Side.SERVER); INSTANCE.registerMessage(PacketUpdateTextfieldEntity.class, PacketUpdateTextfieldEntity.class, discriminant++, Side.SERVER); INSTANCE.registerMessage(PacketUpdateTicket.class, PacketUpdateTicket.class, discriminant++, Side.SERVER); } public static void sendToAll(IMessage message){ INSTANCE.sendToAll(message); } public static void sendTo(IMessage message, EntityPlayerMP player){ INSTANCE.sendTo(message, player); } public static void sendToAllAround(LocationIntPacket<?> message, World world, double distance){ sendToAllAround(message, message.getTargetPoint(world, distance)); } public static void sendToAllAround(LocationIntPacket<?> message, World world){ sendToAllAround(message, message.getTargetPoint(world)); } public static void sendToAllAround(LocationDoublePacket<?> message, World world){ sendToAllAround(message, message.getTargetPoint(world)); } public static void sendToAllAround(IMessage message, NetworkRegistry.TargetPoint point){ INSTANCE.sendToAllAround(message, point); } public static void sendToDimension(IMessage message, int dimensionId){ INSTANCE.sendToDimension(message, dimensionId); } public static void sendToServer(IMessage message){ INSTANCE.sendToServer(message); } }