package com.rejahtavi.rfp2; import net.minecraft.util.ResourceLocation; import net.minecraftforge.fml.client.registry.ClientRegistry; import net.minecraftforge.fml.client.registry.RenderingRegistry; import net.minecraftforge.fml.common.ModMetadata; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import net.minecraftforge.fml.common.registry.EntityRegistry; // RFP2.PROXY will be instantiated with this class if we are running as a client. public class ClientProxy implements IProxy { // Called at the start of mod loading @Override public void preInit(FMLPreInitializationEvent event) { // Initialize logging RFP2.logger = event.getModLog(); // Register mod metadata ModMetadata m = event.getModMetadata(); m.modId = RFP2.MODID; m.name = RFP2.MODNAME; m.version = RFP2.MODVER; m.description = "Implements full body rendering in first person."; m.authorList.clear(); m.authorList.add("Rejah Tavi"); m.authorList.add("don_bruce"); m.autogenerated = false; // Register entity rendering handler for the player dummy RenderingRegistry.registerEntityRenderingHandler(EntityPlayerDummy.class, RenderPlayerDummy::new); } // Called after all other mod preInit()s have run @Override public void init(FMLInitializationEvent event) { // Load config RFP2.config = new RFP2Config(); // Register keybinds ClientRegistry.registerKeyBinding(RFP2.keybindArmsToggle.keyBindingInstance); ClientRegistry.registerKeyBinding(RFP2.keybindModToggle.keyBindingInstance); ClientRegistry.registerKeyBinding(RFP2.keybindHeadRotationToggle.keyBindingInstance); // Register player dummy entity EntityRegistry.registerModEntity(new ResourceLocation(RFP2.MODID, "PlayerDummy"), EntityPlayerDummy.class, "PlayerDummy", 0, RFP2.MODID, 5, 100, false); } // Called after all other mod init()s have run @Override public void postInit(FMLPostInitializationEvent event) { // Begin tracking state RFP2.state = new RFP2State(); } // Called when starting up a dedicated server @Override public void serverStarting(FMLServerStartingEvent event) { // This will never get called on client side } }