package sourcecoded.quantum.proxy; import cpw.mods.fml.client.registry.ClientRegistry; import cpw.mods.fml.client.registry.RenderingRegistry; import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.ClientCommandHandler; import net.minecraftforge.client.MinecraftForgeClient; import sourcecoded.core.SourceCodedCore; import sourcecoded.quantum.Constants; import sourcecoded.quantum.QAClientCommand; import sourcecoded.quantum.client.renderer.block.AdvancedTileProxy; import sourcecoded.quantum.client.renderer.block.SimpleTileProxy; import sourcecoded.quantum.client.renderer.entity.RenderEnergyPacket; import sourcecoded.quantum.client.renderer.entity.RenderQuantumArrow; import sourcecoded.quantum.client.renderer.item.*; import sourcecoded.quantum.client.renderer.tile.*; import sourcecoded.quantum.entity.EntityEnergyPacket; import sourcecoded.quantum.entity.EntityQuantumArrow; import sourcecoded.quantum.registry.QABlocks; import sourcecoded.quantum.registry.QAItems; import sourcecoded.quantum.tile.*; import java.io.File; public class ClientProxy implements IProxy { public static File quantumDir; public static File discoveriesDir; public static File discoveryExportDir; public static File discoveryImportDir; @Override public void register() { registerRenderers(); startFileInit(); ClientCommandHandler.instance.registerCommand(new QAClientCommand()); } @Override public EntityPlayer getClientPlayer() { return Minecraft.getMinecraft().thePlayer; } void startFileInit() { String root = SourceCodedCore.getForgeRoot(); quantumDir = new File(root, "quantumAnomalies"); discoveriesDir = new File(quantumDir, "discoveries"); discoveryExportDir = new File(discoveriesDir, "export"); discoveryImportDir = new File(discoveriesDir, "import"); quantumDir.mkdirs(); discoveriesDir.mkdirs(); discoveryImportDir.mkdirs(); discoveryExportDir.mkdirs(); } void registerRenderers() { RenderingRegistry.registerEntityRenderingHandler(EntityEnergyPacket.class, new RenderEnergyPacket()); RenderingRegistry.registerEntityRenderingHandler(EntityQuantumArrow.class, new RenderQuantumArrow()); RenderingRegistry.registerBlockHandler(new SimpleTileProxy()); RenderingRegistry.registerBlockHandler(new AdvancedTileProxy()); MinecraftForgeClient.registerItemRenderer(QAItems.SCEPTRE.getItem(), new ItemSceptreRenderer()); MinecraftForgeClient.registerItemRenderer(QAItems.ENTROPIC_STAR.getItem(), new ItemDepthRenderer( new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/star/L0.png"), 0.02F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/star/L1.png"), 0.06F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/star/L2.png"), 0.08F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/star/L3.png"), 0.1F) )); MinecraftForgeClient.registerItemRenderer(QAItems.RIFT_AXE.getItem(), new ItemDepthRenderer( new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/axe_0.png"), 0.07F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/axe_1.png"), 0.02F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/axe_2.png"), 0.04F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/axe_3.png"), 0.1F) )); MinecraftForgeClient.registerItemRenderer(QAItems.RIFT_PICKAXE.getItem(), new ItemDepthRenderer( new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/pickaxe_0.png"), 0.07F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/pickaxe_1.png"), 0.02F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/pickaxe_2.png"), 0.04F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/pickaxe_3.png"), 0.1F) )); MinecraftForgeClient.registerItemRenderer(QAItems.RIFT_SHOVEL.getItem(), new ItemDepthRenderer( new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/shovel_0.png"), 0.07F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/shovel_1.png"), 0.02F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/shovel_2.png"), 0.04F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/shovel_3.png"), 0.1F) )); MinecraftForgeClient.registerItemRenderer(QAItems.RIFT_SWORD.getItem(), new ItemDepthRenderer( new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/sword_0.png"), 0.07F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/sword_1.png"), 0.02F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/sword_2.png"), 0.04F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/sword_3.png"), 0.08F) )); MinecraftForgeClient.registerItemRenderer(QAItems.INJECTED_STICK.getItem(), new ItemStickRenderer( new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/stick_0.png"), 0.09F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/stick_1.png"), 0.04F) )); MinecraftForgeClient.registerItemRenderer(QAItems.INJECTED_STRING.getItem(), new ItemDepthRenderer( new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/string_1.png"), 0.05F) )); MinecraftForgeClient.registerItemRenderer(QAItems.RIFT_MAGNET.getItem(), new ItemDepthRenderer( new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/magnet_0.png"), 0.06F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/magnet_1.png"), 0.08F), new TexDepthMap(new ResourceLocation(Constants.MODID, "textures/items/tools/magnet_2.png"), 0.1F) )); MinecraftForgeClient.registerItemRenderer(QAItems.RIFT_BOW.getItem(), new ItemBowRenderer()); MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(QABlocks.RIFT_NODE.getBlock()), new ItemTransparencyRenderer()); ClientRegistry.bindTileEntitySpecialRenderer(TileInjectedStone.class, new TESRInjectedStone()); ClientRegistry.bindTileEntitySpecialRenderer(TileInjectedGlass.class, new TESRInjectedGlass()); ClientRegistry.bindTileEntitySpecialRenderer(TileDebug.class, new TESRDebug()); ClientRegistry.bindTileEntitySpecialRenderer(TileCornerstone.class, new TESRCornerstone()); ClientRegistry.bindTileEntitySpecialRenderer(TileRiftSmelter.class, new TESRRiftSmelter()); ClientRegistry.bindTileEntitySpecialRenderer(TileRiftInjector.class, new TESRRiftInjector()); ClientRegistry.bindTileEntitySpecialRenderer(TileManipulation.class, new TESRManipulation()); ClientRegistry.bindTileEntitySpecialRenderer(TileSync.class, new TESRSync()); ClientRegistry.bindTileEntitySpecialRenderer(TileArrangement.class, new TESRArrangement()); ClientRegistry.bindTileEntitySpecialRenderer(TilePlayer.class, new TESRPlayer()); ClientRegistry.bindTileEntitySpecialRenderer(TileShelf.class, new TESRShelf()); } }