OSDN Git Service

完全修正。
[chemicraft/chemicraft.git] / src / chemicraft / client / ClientProxy.java
1 package chemicraft.client;
2
3 import net.minecraft.entity.player.EntityPlayer;
4 import net.minecraft.tileentity.TileEntity;
5 import net.minecraft.world.World;
6 import net.minecraftforge.client.MinecraftForgeClient;
7 import chemicraft.ChemiCraft;
8 import chemicraft.debug.DebugTick;
9 import chemicraft.entity.EntityAtomsGrenade;
10 import chemicraft.gui.GuiChemicalCombinationTable;
11 import chemicraft.gui.GuiChemicalCraftingTable;
12 import chemicraft.gui.GuiPyrolysisTable;
13 import chemicraft.gui.GuiToolAndWeaponCraftingTable;
14 import chemicraft.render.RenderAtomsGrenade;
15 import chemicraft.system.CommonProxy;
16 import chemicraft.tileentity.TileEntityChemicalCombinationTable;
17 import chemicraft.tileentity.TileEntityChemicalCraftingTable;
18 import chemicraft.tileentity.TileEntityPyrolysisTable;
19 import chemicraft.tileentity.TileEntityToolAndWeaponCraftingTable;
20 import cpw.mods.fml.client.FMLClientHandler;
21 import cpw.mods.fml.client.registry.RenderingRegistry;
22 import cpw.mods.fml.common.registry.TickRegistry;
23 import cpw.mods.fml.relauncher.Side;
24
25 public class ClientProxy extends CommonProxy {
26
27         @Override
28         public void registerRenderInformation() {
29                 MinecraftForgeClient.preloadTexture(ChemiCraft.instance.blockChemicalCraftingTableTexture);
30                 MinecraftForgeClient.preloadTexture(ChemiCraft.instance.itemAtomsTexture);
31                 MinecraftForgeClient.preloadTexture(ChemiCraft.instance.itemCompoundsTexture);
32                 MinecraftForgeClient.preloadTexture(ChemiCraft.instance.itemTexture);
33                 MinecraftForgeClient.preloadTexture(ChemiCraft.instance.guiChemicalCombinationTexture);
34                 MinecraftForgeClient.preloadTexture(ChemiCraft.instance.guiPyrolysisTexture);
35                 MinecraftForgeClient.preloadTexture(ChemiCraft.instance.guiChemicalCraftingTexture);
36                 MinecraftForgeClient.preloadTexture(ChemiCraft.instance.guiToolAndWeaponCraftingTexture);
37                 RenderingRegistry.registerEntityRenderingHandler(EntityAtomsGrenade.class, new RenderAtomsGrenade(0.5F));
38         }
39
40
41         @Override
42         public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
43                 if (!world.blockExists(x, y, z))
44                         return null;
45
46                 TileEntity tileEntity = world.getBlockTileEntity(x, y, z);
47                 if (tileEntity instanceof TileEntityPyrolysisTable) {
48                         return new GuiPyrolysisTable(player, (TileEntityPyrolysisTable) tileEntity);
49                 }else if(tileEntity instanceof TileEntityChemicalCombinationTable){
50                         return new GuiChemicalCombinationTable(player, (TileEntityChemicalCombinationTable) tileEntity);
51                 }else if(tileEntity instanceof TileEntityToolAndWeaponCraftingTable){
52                         return new GuiToolAndWeaponCraftingTable(player, (TileEntityToolAndWeaponCraftingTable) tileEntity);
53                 }else if(tileEntity instanceof TileEntityChemicalCraftingTable){
54                         return new GuiChemicalCraftingTable(player, (TileEntityChemicalCraftingTable) tileEntity);
55                 }
56                 return null;
57         }
58
59
60         @Override
61         public World getClientWorld() {
62                 return FMLClientHandler.instance().getClient().theWorld;
63         }
64
65         @Override
66         public void registerTickHandler() {
67                 TickRegistry.registerTickHandler(new DebugTick(), Side.CLIENT);
68         }
69
70 }