diff options
Diffstat (limited to 'src/Java/binnie/core/proxy')
-rw-r--r-- | src/Java/binnie/core/proxy/BinnieModProxy.java | 67 | ||||
-rw-r--r-- | src/Java/binnie/core/proxy/BinnieProxy.java | 156 | ||||
-rw-r--r-- | src/Java/binnie/core/proxy/BinnieProxyClient.java | 158 | ||||
-rw-r--r-- | src/Java/binnie/core/proxy/BinnieProxyServer.java | 6 | ||||
-rw-r--r-- | src/Java/binnie/core/proxy/IBinnieModProxy.java | 21 | ||||
-rw-r--r-- | src/Java/binnie/core/proxy/IBinnieProxy.java | 54 | ||||
-rw-r--r-- | src/Java/binnie/core/proxy/IProxyCore.java | 7 |
7 files changed, 469 insertions, 0 deletions
diff --git a/src/Java/binnie/core/proxy/BinnieModProxy.java b/src/Java/binnie/core/proxy/BinnieModProxy.java new file mode 100644 index 0000000000..a6697b384f --- /dev/null +++ b/src/Java/binnie/core/proxy/BinnieModProxy.java @@ -0,0 +1,67 @@ +package binnie.core.proxy; + +import binnie.Binnie; +import binnie.core.AbstractMod; +import binnie.core.BinnieCore; +import binnie.core.gui.IBinnieGUID; +import binnie.core.language.ManagerLanguage; +import binnie.core.network.packet.MessageBase; +import cpw.mods.fml.common.network.simpleimpl.SimpleNetworkWrapper; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.EntityPlayerMP; +import net.minecraft.util.IIcon; + +public class BinnieModProxy + implements IBinnieModProxy +{ + private AbstractMod mod; + + public BinnieModProxy(AbstractMod mod) + { + this.mod = mod; + } + + public void openGui(IBinnieGUID ID, EntityPlayer player, int x, int y, int z) + { + BinnieCore.proxy.openGui(this.mod, ID.ordinal(), player, x, y, z); + } + + public void sendToAll(MessageBase packet) + { + this.mod.getNetworkWrapper().sendToAll(packet.GetMessage()); + } + + public void sendToPlayer(MessageBase packet, EntityPlayer entityplayer) + { + if ((entityplayer instanceof EntityPlayerMP)) { + this.mod.getNetworkWrapper().sendTo(packet.GetMessage(), (EntityPlayerMP)entityplayer); + } + } + + public void sendToServer(MessageBase packet) + { + this.mod.getNetworkWrapper().sendToServer(packet.GetMessage()); + } + + public IIcon getIcon(IIconRegister register, String string) + { + return BinnieCore.proxy.getIcon(register, this.mod.getModID(), string); + } + + public void preInit() {} + + public void init() {} + + public void postInit() {} + + public String localise(String string) + { + return Binnie.Language.localise(this.mod, string); + } + + public String localiseOrBlank(String string) + { + return Binnie.Language.localiseOrBlank(this.mod, string); + } +} diff --git a/src/Java/binnie/core/proxy/BinnieProxy.java b/src/Java/binnie/core/proxy/BinnieProxy.java new file mode 100644 index 0000000000..04a63b8c67 --- /dev/null +++ b/src/Java/binnie/core/proxy/BinnieProxy.java @@ -0,0 +1,156 @@ +package binnie.core.proxy; + +import binnie.core.AbstractMod; +import binnie.core.BinnieCore; +import binnie.core.network.BinnieCorePacketID; +import binnie.core.network.INetworkedEntity; +import binnie.core.network.packet.MessageUpdate; +import binnie.core.resource.BinnieResource; +import cpw.mods.fml.client.registry.RenderingRegistry; +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.registry.GameRegistry; +import java.io.File; +import java.util.Map; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.server.MinecraftServer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.util.ResourceLocation; +import net.minecraft.world.World; +import net.minecraftforge.client.IItemRenderer; + +public class BinnieProxy + extends BinnieModProxy + implements IBinnieProxy +{ + public BinnieProxy() + { + super(BinnieCore.instance); + } + + public void preInit() {} + + public void init() {} + + public void postInit() {} + + public void bindTexture(BinnieResource texture) {} + + public boolean checkTexture(BinnieResource location) + { + return false; + } + + public int getUniqueRenderID() + { + return RenderingRegistry.getNextAvailableRenderId(); + } + + public void openGui(AbstractMod mod, int id, EntityPlayer player, int x, int y, int z) + { + player.openGui(mod, id, player.worldObj, x, y, z); + } + + public boolean isSimulating(World world) + { + return true; + } + + public void registerCustomItemRenderer(Item item, IItemRenderer itemRenderer) {} + + public boolean needsTagCompoundSynched(Item item) + { + return item.getShareTag(); + } + + public World getWorld() + { + return null; + } + + public void throwException(String message, Throwable e) + { + FMLCommonHandler.instance().raiseException(e, message, true); + } + + public Minecraft getMinecraftInstance() + { + return null; + } + + public boolean isClient() + { + return false; + } + + public boolean isServer() + { + return true; + } + + public File getDirectory() + { + return new File("./"); + } + + public void registerTileEntity(Class<? extends TileEntity> tile, String id, Object renderer) + { + GameRegistry.registerTileEntity(tile, id); + } + + public void createPipe(Item pipe) {} + + public boolean isDebug() + { + return System.getenv().containsKey("BINNIE_DEBUG"); + } + + public void registerBlockRenderer(Object renderer) {} + + public Object createObject(String renderer) + { + return null; + } + + public void sendNetworkEntityPacket(INetworkedEntity entity) + { + MessageUpdate packet = new MessageUpdate(BinnieCorePacketID.NetworkEntityUpdate.ordinal(), entity); + sendToAll(packet); + } + + public IIcon getIcon(IIconRegister register, String mod, String name) + { + return null; + } + + private short uniqueTextureUID = 1200; + + public void handleTextureRefresh(IIconRegister register, int type) {} + + public void handlePostTextureRefresh(IIconRegister register, int type) {} + + public short getUniqueTextureUID() + { + return this.uniqueTextureUID++; + } + + public void bindTexture(ResourceLocation location) {} + + public boolean isShiftDown() + { + return false; + } + + public EntityPlayer getPlayer() + { + return null; + } + + public MinecraftServer getServer() + { + return MinecraftServer.getServer(); + } +} diff --git a/src/Java/binnie/core/proxy/BinnieProxyClient.java b/src/Java/binnie/core/proxy/BinnieProxyClient.java new file mode 100644 index 0000000000..4eb3db5727 --- /dev/null +++ b/src/Java/binnie/core/proxy/BinnieProxyClient.java @@ -0,0 +1,158 @@ +package binnie.core.proxy; + +import binnie.Binnie; +import binnie.core.liquid.ManagerLiquid; +import binnie.core.resource.BinnieResource; +import binnie.craftgui.resource.minecraft.CraftGUIResourceManager; +import cpw.mods.fml.client.FMLClientHandler; +import cpw.mods.fml.client.registry.ClientRegistry; +import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; +import cpw.mods.fml.client.registry.RenderingRegistry; +import cpw.mods.fml.common.registry.GameRegistry; +import java.io.File; +import java.io.IOException; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.client.renderer.texture.ITextureObject; +import net.minecraft.client.renderer.texture.SimpleTexture; +import net.minecraft.client.renderer.texture.TextureManager; +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.client.resources.IReloadableResourceManager; +import net.minecraft.client.resources.IResourceManager; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.util.ResourceLocation; +import net.minecraft.world.World; +import net.minecraftforge.client.IItemRenderer; +import net.minecraftforge.client.MinecraftForgeClient; +import org.lwjgl.input.Keyboard; +import org.lwjgl.opengl.GL11; + +public final class BinnieProxyClient + extends BinnieProxy + implements IBinnieProxy +{ + public void bindTexture(BinnieResource texture) + { + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + bindTexture(texture.getResourceLocation()); + } + + public void bindTexture(ResourceLocation location) + { + getMinecraftInstance().getTextureManager().bindTexture(location); + } + + public boolean checkTexture(BinnieResource location) + { + SimpleTexture texture = new SimpleTexture(location.getResourceLocation()); + try + { + texture.loadTexture(getMinecraftInstance().getResourceManager()); + } + catch (IOException e) + { + return false; + } + return true; + } + + public boolean isSimulating(World world) + { + return !world.isRemote; + } + + public void registerCustomItemRenderer(Item item, IItemRenderer itemRenderer) + { + MinecraftForgeClient.registerItemRenderer(item, itemRenderer); + } + + public World getWorld() + { + return getMinecraftInstance().theWorld; + } + + public Minecraft getMinecraftInstance() + { + return FMLClientHandler.instance().getClient(); + } + + public boolean isClient() + { + return true; + } + + public boolean isServer() + { + return false; + } + + public File getDirectory() + { + return new File("."); + } + + public void registerTileEntity(Class<? extends TileEntity> tile, String id, Object renderer) + { + if ((renderer != null) && ((renderer instanceof TileEntitySpecialRenderer))) { + ClientRegistry.registerTileEntity(tile, id, (TileEntitySpecialRenderer)renderer); + } else { + GameRegistry.registerTileEntity(tile, id); + } + } + + public void registerBlockRenderer(Object renderer) + { + if ((renderer != null) && ((renderer instanceof ISimpleBlockRenderingHandler))) { + RenderingRegistry.registerBlockHandler((ISimpleBlockRenderingHandler)renderer); + } + } + + public void createPipe(Item pipe) {} + + public Object createObject(String renderer) + { + Object object = null; + try + { + Class<?> rendererClass = Class.forName(renderer); + if (rendererClass != null) { + object = rendererClass.newInstance(); + } + } + catch (Exception e) {} + return object; + } + + public IIcon getIcon(IIconRegister register, String mod, String name) + { + return register.registerIcon(mod + ":" + name); + } + + public boolean isShiftDown() + { + return (Keyboard.isKeyDown(42)) || (Keyboard.isKeyDown(54)); + } + + public EntityPlayer getPlayer() + { + return Minecraft.getMinecraft().thePlayer; + } + + public void handlePreTextureRefresh(IIconRegister register, int type) + { + if (type == 0) { + Binnie.Liquid.reloadIcons(register); + } + } + + public void preInit() + { + IResourceManager manager = Minecraft.getMinecraft().getResourceManager(); + if ((manager instanceof IReloadableResourceManager)) { + ((IReloadableResourceManager)manager).registerReloadListener(new CraftGUIResourceManager()); + } + } +} diff --git a/src/Java/binnie/core/proxy/BinnieProxyServer.java b/src/Java/binnie/core/proxy/BinnieProxyServer.java new file mode 100644 index 0000000000..99e0164974 --- /dev/null +++ b/src/Java/binnie/core/proxy/BinnieProxyServer.java @@ -0,0 +1,6 @@ +package binnie.core.proxy; + +public class BinnieProxyServer + extends BinnieProxy + implements IBinnieProxy +{} diff --git a/src/Java/binnie/core/proxy/IBinnieModProxy.java b/src/Java/binnie/core/proxy/IBinnieModProxy.java new file mode 100644 index 0000000000..aa9dd11e62 --- /dev/null +++ b/src/Java/binnie/core/proxy/IBinnieModProxy.java @@ -0,0 +1,21 @@ +package binnie.core.proxy; + +import binnie.core.gui.IBinnieGUID; +import binnie.core.network.packet.MessageBase; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.IIcon; + +abstract interface IBinnieModProxy + extends IProxyCore +{ + public abstract void openGui(IBinnieGUID paramIBinnieGUID, EntityPlayer paramEntityPlayer, int paramInt1, int paramInt2, int paramInt3); + + public abstract void sendToAll(MessageBase paramMessageBase); + + public abstract void sendToPlayer(MessageBase paramMessageBase, EntityPlayer paramEntityPlayer); + + public abstract void sendToServer(MessageBase paramMessageBase); + + public abstract IIcon getIcon(IIconRegister paramIIconRegister, String paramString); +} diff --git a/src/Java/binnie/core/proxy/IBinnieProxy.java b/src/Java/binnie/core/proxy/IBinnieProxy.java new file mode 100644 index 0000000000..4ce037aa3d --- /dev/null +++ b/src/Java/binnie/core/proxy/IBinnieProxy.java @@ -0,0 +1,54 @@ +package binnie.core.proxy; + +import binnie.core.AbstractMod; +import binnie.core.resource.BinnieResource; +import java.io.File; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.util.ResourceLocation; +import net.minecraft.world.World; +import net.minecraftforge.client.IItemRenderer; + +public abstract interface IBinnieProxy + extends IProxyCore +{ + public abstract boolean isClient(); + + public abstract boolean isServer(); + + public abstract File getDirectory(); + + public abstract void bindTexture(BinnieResource paramBinnieResource); + + public abstract void bindTexture(ResourceLocation paramResourceLocation); + + public abstract int getUniqueRenderID(); + + public abstract void registerCustomItemRenderer(Item paramItem, IItemRenderer paramIItemRenderer); + + public abstract void openGui(AbstractMod paramAbstractMod, int paramInt1, EntityPlayer paramEntityPlayer, int paramInt2, int paramInt3, int paramInt4); + + public abstract boolean isSimulating(World paramWorld); + + public abstract World getWorld(); + + public abstract Minecraft getMinecraftInstance(); + + public abstract boolean needsTagCompoundSynched(Item paramItem); + + public abstract Object createObject(String paramString); + + public abstract void registerTileEntity(Class<? extends TileEntity> paramClass, String paramString, Object paramObject); + + public abstract void createPipe(Item paramItem); + + public abstract boolean isDebug(); + + public abstract void registerBlockRenderer(Object paramObject); + + public abstract IIcon getIcon(IIconRegister paramIIconRegister, String paramString1, String paramString2); +} diff --git a/src/Java/binnie/core/proxy/IProxyCore.java b/src/Java/binnie/core/proxy/IProxyCore.java new file mode 100644 index 0000000000..4a0d5c231b --- /dev/null +++ b/src/Java/binnie/core/proxy/IProxyCore.java @@ -0,0 +1,7 @@ +package binnie.core.proxy; + +import binnie.core.IInitializable; + +public abstract interface IProxyCore + extends IInitializable +{} |