aboutsummaryrefslogtreecommitdiff
path: root/src/Java/binnie/core/proxy
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/binnie/core/proxy')
-rw-r--r--src/Java/binnie/core/proxy/BinnieModProxy.java67
-rw-r--r--src/Java/binnie/core/proxy/BinnieProxy.java156
-rw-r--r--src/Java/binnie/core/proxy/BinnieProxyClient.java158
-rw-r--r--src/Java/binnie/core/proxy/BinnieProxyServer.java6
-rw-r--r--src/Java/binnie/core/proxy/IBinnieModProxy.java21
-rw-r--r--src/Java/binnie/core/proxy/IBinnieProxy.java54
-rw-r--r--src/Java/binnie/core/proxy/IProxyCore.java7
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
+{}