package anvil.infinity; import anvil.infinity.compat.CompatHandler; import anvil.infinity.config.ConfigHandler; import anvil.infinity.networking.KillAbilityPackageHandler; import anvil.infinity.networking.KillAbilityReturnPackageHandler; import anvil.infinity.networking.PackageKillAbility; import anvil.infinity.networking.PackageReq; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.Item; import net.minecraftforge.event.RegistryEvent; 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.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.network.NetworkRegistry; import net.minecraftforge.fml.common.network.simpleimpl.IMessage; import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper; import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.fml.relauncher.Side; //Test @Mod( modid = Infinity.MOD_ID, name = Infinity.MOD_NAME, version = Infinity.VERSION, dependencies = Infinity.DEPENDENCIES ) public class Infinity { public static final String MOD_ID = "infinity"; public static final String MOD_NAME = "Infinityraft"; public static final String VERSION = "1.3"; public static final String DEPENDENCIES = "required-after:lucraftcore@[1.12.2-2.4.0,)"; public static final SimpleNetworkWrapper NETWORK_WRAPPER = NetworkRegistry.INSTANCE.newSimpleChannel(MOD_ID); /** * This is the instance of your mod as created by Forge. It will never be null. */ @Mod.Instance(MOD_ID) public static Infinity INSTANCE; /** * This is the first initialization event. Register tile entities here. * The registry events below will have fired prior to entry to this method. */ @Mod.EventHandler public void preinit(FMLPreInitializationEvent event) { ConfigHandler.refreshConfig(event.getSuggestedConfigurationFile()); CompatHandler.check(); int netID = 0; NETWORK_WRAPPER.registerMessage(KillAbilityReturnPackageHandler.class, PackageKillAbility.class, netID++, Side.SERVER); NETWORK_WRAPPER.registerMessage(KillAbilityPackageHandler.class, PackageReq.class, netID++, Side.CLIENT); } /** * This is the second initialization event. Register custom recipes */ @Mod.EventHandler public void init(FMLInitializationEvent event) { } /** * This is the final initialization event. Register actions from other mods here */ @Mod.EventHandler public void postinit(FMLPostInitializationEvent event) { } /** * Forge will automatically look up and bind blocks to the fields in this class * based on their registry name. */ @GameRegistry.ObjectHolder(MOD_ID) public static class Blocks { /* public static final MySpecialBlock mySpecialBlock = null; // placeholder for special block below */ } /** * Forge will automatically look up and bind items to the fields in this class * based on their registry name. */ @GameRegistry.ObjectHolder(MOD_ID) public static class Items { /* public static final ItemBlock mySpecialBlock = null; // itemblock for the block above public static final MySpecialItem mySpecialItem = null; // placeholder for special item below */ } /** * This is a special class that listens to registry events, to allow creation of mod blocks and items at the proper time. */ @Mod.EventBusSubscriber public static class ObjectRegistryHandler { /** * Listen for the register event for creating custom items */ @SubscribeEvent public static void addItems(RegistryEvent.Register event) { /* event.getRegistry().register(new ItemBlock(Blocks.myBlock).setRegistryName(MOD_ID, "myBlock")); event.getRegistry().register(new MySpecialItem().setRegistryName(MOD_ID, "mySpecialItem")); */ } /** * Listen for the register event for creating custom blocks */ @SubscribeEvent public static void addBlocks(RegistryEvent.Register event) { /* event.getRegistry().register(new MySpecialBlock().setRegistryName(MOD_ID, "mySpecialBlock")); */ } } }