package com.minemaarten.advancedmod.network; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.world.World; import com.minemaarten.advancedmod.reference.Reference; import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.SimpleNetworkWrapper; import cpw.mods.fml.relauncher.Side; public class NetworkHandler{ private static SimpleNetworkWrapper INSTANCE; public static void init(){ INSTANCE = NetworkRegistry.INSTANCE.newSimpleChannel(Reference.MOD_ID); INSTANCE.registerMessage(MessageExplode.class, MessageExplode.class, 0, Side.SERVER); INSTANCE.registerMessage(MessageHandleGuiButtonPress.class, MessageHandleGuiButtonPress.class, 1, Side.SERVER); INSTANCE.registerMessage(MessageHandleTextUpdate.class, MessageHandleTextUpdate.class, 2, Side.SERVER); INSTANCE.registerMessage(MessageHandleTextUpdate.class, MessageHandleTextUpdate.class, 3, Side.CLIENT); } public static void sendToServer(IMessage message){ INSTANCE.sendToServer(message); } public static void sendTo(IMessage message, EntityPlayerMP player){ INSTANCE.sendTo(message, player); } public static void sendToAllAround(IMessage message, TargetPoint point){ INSTANCE.sendToAllAround(message, point); } /** * Will send the given packet to every player within 64 blocks of the XYZ of the XYZ packet. * @param message * @param world */ public static void sendToAllAround(MessageXYZ message, World world){ INSTANCE.sendToAllAround(message, new TargetPoint(world.provider.dimensionId, message.x, message.y, message.z, 64D)); } public static void sendToAll(IMessage message){ INSTANCE.sendToAll(message); } public static void sendToDimension(IMessage message, int dimensionId){ INSTANCE.sendToDimension(message, dimensionId); } }