aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/proxy/ClientProxy.java
blob: 11e7f9853a523970902618ff57e58b484362310d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
package gtPlusPlus.core.proxy;

import gtPlusPlus.GTplusplus;
import gtPlusPlus.core.common.BasePlayer;
import gtPlusPlus.core.common.CommonProxy;
import gtPlusPlus.core.handler.events.SneakManager;
import gtPlusPlus.core.handler.render.FirepitRender;
import gtPlusPlus.core.tileentities.general.TileEntityFirepit;
import gtPlusPlus.core.util.particles.EntityParticleFXMysterious;
import net.minecraft.client.Minecraft;
import net.minecraft.client.particle.EntityFX;
import net.minecraft.entity.Entity;
import net.minecraftforge.common.MinecraftForge;
import api.player.client.ClientPlayerAPI;
import cpw.mods.fml.client.registry.ClientRegistry;
import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.event.*;

public class ClientProxy extends CommonProxy{

	/*private final HashSet<String> mCapeList = new HashSet<String>();
	private final CapeHandler mCapeRenderer;
	
	ClientProxy(){
		mCapeRenderer = new CapeHandler(mCapeList);
	}
	*/
	
	public static String playerName = "";
	
	@Override
	public void preInit(FMLPreInitializationEvent e) {
		// TODO Auto-generated method stub
		super.preInit(e);
		//Do this weird things for textures.
		GTplusplus.loadTextures();		
		//We boot up the sneak manager.
		MinecraftForge.EVENT_BUS.register(SneakManager.instance);
	}

	@Override
	public void init(FMLInitializationEvent e) {
		// TODO Auto-generated method stub
		
		//Register player instance
		ClientPlayerAPI.register("SneakManager", BasePlayer.class);
		
		super.init(e);
	}

	@Override
	public void postInit(FMLPostInitializationEvent e) {
		// TODO Auto-generated method stub
		super.postInit(e);
	}

	@Override
	public void registerRenderThings(){
		//MinecraftForgeClient.registerItemRenderer(ModItems.FluidCell.getItem(), new RenderLiquidCell());
		//RenderingRegistry.registerEntityRenderingHandler(EntityBloodSteelMob.class, new RenderBloodSteelMob(new ModelBloodSteelMob(), 0));
		//RenderingRegistry.registerEntityRenderingHandler(EntityBloodSteelHostileMob.class, new RenderBloodSteelMobHostile(new ModelBloodSteelMob(), 0));
		//RenderingRegistry.registerEntityRenderingHandler(EntityGrenade.class, new RenderSnowball(ModItems.tutGrenade));

		//ClientRegistry.bindTileEntitySpecialRenderer(TileEntityBloodSteelChest.class, new BloodSteelChestRenderer());
		//MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(ModBlocks.tutChest), new ItemRenderBloodSteelChest());
		
		ClientRegistry.bindTileEntitySpecialRenderer(TileEntityFirepit.class, new FirepitRender());
	}

	@Override
	public int addArmor(String armor){
		return RenderingRegistry.addNewArmourRendererPrefix(armor);
	}

	@Override
	public void generateMysteriousParticles(Entity theEntity)
	{
		double motionX = theEntity.worldObj.rand.nextGaussian() * 0.02D;
		double motionY = theEntity.worldObj.rand.nextGaussian() * 0.02D;
		double motionZ = theEntity.worldObj.rand.nextGaussian() * 0.02D;
		EntityFX particleMysterious = new EntityParticleFXMysterious(

				theEntity.worldObj, 
				theEntity.posX + theEntity.worldObj.rand.nextFloat() * theEntity.width 

				* 2.0F - theEntity.width, 
				theEntity.posY + 0.5D + theEntity.worldObj.rand.nextFloat() 

				* theEntity.height, 
				theEntity.posZ + theEntity.worldObj.rand.nextFloat() * theEntity.width 

				* 2.0F - theEntity.width, 

				motionX, 

				motionY, 

				motionZ);
		Minecraft.getMinecraft().effectRenderer.addEffect(particleMysterious);        
	}

	@Override
	public void serverStarting(FMLServerStartingEvent e)
	{
		
	}
	
	/*@SubscribeEvent
    public void receiveRenderSpecialsEvent(net.minecraftforge.client.event.RenderPlayerEvent.Specials.Pre aEvent) {
        mCapeRenderer.receiveRenderSpecialsEvent(aEvent);
    }*/



}