forge/src/main/java/com/rejahtavi/rfp2/ClientProxy.java

69 lines
2.6 KiB
Java
Raw Normal View History

2025-02-18 16:32:02 +03:00
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
}
}