106 lines
4.1 KiB
Java
106 lines
4.1 KiB
Java
package net.paladrill.paladrillmod;
|
|
|
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
|
import net.minecraftforge.fml.relauncher.Side;
|
|
import net.minecraftforge.fml.common.registry.GameRegistry;
|
|
import net.minecraftforge.fml.common.registry.EntityEntry;
|
|
import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper;
|
|
import net.minecraftforge.fml.common.network.NetworkRegistry;
|
|
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
|
import net.minecraftforge.fml.common.event.FMLServerStartingEvent;
|
|
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
|
|
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
|
|
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
|
|
import net.minecraftforge.fml.common.SidedProxy;
|
|
import net.minecraftforge.fml.common.Mod;
|
|
import net.minecraftforge.fluids.FluidRegistry;
|
|
import net.minecraftforge.event.RegistryEvent;
|
|
import net.minecraftforge.common.MinecraftForge;
|
|
import net.minecraftforge.client.event.ModelRegistryEvent;
|
|
|
|
import net.minecraft.world.biome.Biome;
|
|
import net.minecraft.potion.Potion;
|
|
import net.minecraft.item.Item;
|
|
import net.minecraft.block.Block;
|
|
|
|
import java.util.function.Supplier;
|
|
|
|
@Mod(modid = PaladrillmodMod.MODID, version = PaladrillmodMod.VERSION)
|
|
public class PaladrillmodMod {
|
|
public static final String MODID = "paladrillmod";
|
|
public static final String VERSION = "1.15";
|
|
public static final SimpleNetworkWrapper PACKET_HANDLER = NetworkRegistry.INSTANCE.newSimpleChannel("paladrillmod:a");
|
|
@SidedProxy(clientSide = "net.paladrill.paladrillmod.ClientProxyPaladrillmodMod", serverSide = "net.paladrill.paladrillmod.ServerProxyPaladrillmodMod")
|
|
public static IProxyPaladrillmodMod proxy;
|
|
@Mod.Instance(MODID)
|
|
public static PaladrillmodMod instance;
|
|
public ElementsPaladrillmodMod elements = new ElementsPaladrillmodMod();
|
|
@Mod.EventHandler
|
|
public void preInit(FMLPreInitializationEvent event) {
|
|
MinecraftForge.EVENT_BUS.register(this);
|
|
GameRegistry.registerWorldGenerator(elements, 5);
|
|
GameRegistry.registerFuelHandler(elements);
|
|
NetworkRegistry.INSTANCE.registerGuiHandler(this, new ElementsPaladrillmodMod.GuiHandler());
|
|
elements.preInit(event);
|
|
MinecraftForge.EVENT_BUS.register(elements);
|
|
elements.getElements().forEach(element -> element.preInit(event));
|
|
proxy.preInit(event);
|
|
}
|
|
|
|
@Mod.EventHandler
|
|
public void init(FMLInitializationEvent event) {
|
|
elements.getElements().forEach(element -> element.init(event));
|
|
proxy.init(event);
|
|
}
|
|
|
|
@Mod.EventHandler
|
|
public void postInit(FMLPostInitializationEvent event) {
|
|
proxy.postInit(event);
|
|
}
|
|
|
|
@Mod.EventHandler
|
|
public void serverLoad(FMLServerStartingEvent event) {
|
|
elements.getElements().forEach(element -> element.serverLoad(event));
|
|
proxy.serverLoad(event);
|
|
}
|
|
|
|
@SubscribeEvent
|
|
public void registerBlocks(RegistryEvent.Register<Block> event) {
|
|
event.getRegistry().registerAll(elements.getBlocks().stream().map(Supplier::get).toArray(Block[]::new));
|
|
}
|
|
|
|
@SubscribeEvent
|
|
public void registerItems(RegistryEvent.Register<Item> event) {
|
|
event.getRegistry().registerAll(elements.getItems().stream().map(Supplier::get).toArray(Item[]::new));
|
|
}
|
|
|
|
@SubscribeEvent
|
|
public void registerBiomes(RegistryEvent.Register<Biome> event) {
|
|
event.getRegistry().registerAll(elements.getBiomes().stream().map(Supplier::get).toArray(Biome[]::new));
|
|
}
|
|
|
|
@SubscribeEvent
|
|
public void registerEntities(RegistryEvent.Register<EntityEntry> event) {
|
|
event.getRegistry().registerAll(elements.getEntities().stream().map(Supplier::get).toArray(EntityEntry[]::new));
|
|
}
|
|
|
|
@SubscribeEvent
|
|
public void registerPotions(RegistryEvent.Register<Potion> event) {
|
|
event.getRegistry().registerAll(elements.getPotions().stream().map(Supplier::get).toArray(Potion[]::new));
|
|
}
|
|
|
|
@SubscribeEvent
|
|
public void registerSounds(RegistryEvent.Register<net.minecraft.util.SoundEvent> event) {
|
|
elements.registerSounds(event);
|
|
}
|
|
|
|
@SubscribeEvent
|
|
@SideOnly(Side.CLIENT)
|
|
public void registerModels(ModelRegistryEvent event) {
|
|
elements.getElements().forEach(element -> element.registerModels(event));
|
|
}
|
|
static {
|
|
FluidRegistry.enableUniversalBucket();
|
|
}
|
|
}
|