// Path: src/main/java/com/corwinjv/di/modules/MobTotemsModule.java
// @Module
// public class MobTotemsModule {
// 
//     private MobTotems mobTotems;
// 
//     public MobTotemsModule(MobTotems mobTotems) {
//         this.mobTotems = mobTotems;
//     }
// 
//     @Provides
//     public MobTotems provideMobTotems() {
//         return mobTotems;
//     }
// }
// 
// Path: src/main/java/com/corwinjv/mobtotems/MobTotems.java
// @Mod(modid = Reference.MOD_ID, name = Reference.MOD_NAME, version = Reference.MOD_VERSION, guiFactory = Reference.GUI_FACTORY_CLASS,
//         dependencies = "before:guideapi")
// public class MobTotems {
//     @Mod.Instance
//     public static MobTotems instance;
// 
//     @SidedProxy(clientSide = Reference.CLIENT_SIDE_PROXY_CLASS, serverSide = Reference.SERVER_SIDE_PROXY_CLASS)
//     public static CommonProxy proxy;
// 
//     private static MobTotemsComponent mobTotemsComponent;
// 
//     @Mod.EventHandler
//     public void preInit(FMLPreInitializationEvent event) {
// //        //Dagger 2 implementation
// //        mobTotemsComponent = proxy.initializeDagger(instance);
// 
//         // Network & Messages
//         Network.init();
//         NetworkRegistry.INSTANCE.registerGuiHandler(instance, new OfferingBoxGuiHandler());
// 
//         // Config
//         ConfigurationHandler.Init(event.getSuggestedConfigurationFile());
//         MinecraftForge.EVENT_BUS.register(new ConfigurationHandler());
// 
//         // Helper stuff
//         TotemHelper.init();
//         MinecraftForge.EVENT_BUS.register(new CreeperLogic.CreeperTotemEntityJoinWorldEvent());
//         MinecraftForge.EVENT_BUS.register(new CowLogic.CowTotemEntityJoinWorldEvent());
//         MinecraftForge.EVENT_BUS.register(new EnderLogic.EnderTotemEnderTeleportEvent());
// 
//         // Blocks
//         ModBlocks.init();
// 
//         // Items
//         ModItems.init();
// 
//         // Entities
//         ModEntities.init();
//         ModEntities.registerEntities(instance);
//         proxy.registerEntityRenders();
// 
//         // Keybinds
//         proxy.registerKeys();
//     }
// 
//     public static MobTotemsComponent component() {
//         return mobTotemsComponent;
//     }
// 
//     @Mod.EventHandler
//     public void init(FMLInitializationEvent event) {
//         proxy.registerRenders();
//     }
// 
//     @Mod.EventHandler
//     public void postInit(FMLPostInitializationEvent event) {
//         proxy.registerGui();
//         proxy.registerParticleRenderer();
//     }
// }


import com.corwinjv.di.modules.MobTotemsModule;
import com.corwinjv.mobtotems.MobTotems;
import dagger.Component;
package com.corwinjv.di;


@Component(modules = {
        MobTotemsModule.class
}, dependencies = {
        MinecraftComponent.class
})
public interface MobTotemsComponent extends MinecraftComponent {

// Path: src/main/java/com/corwinjv/di/modules/MobTotemsModule.java
// @Module
// public class MobTotemsModule {
// 
//     private MobTotems mobTotems;
// 
//     public MobTotemsModule(MobTotems mobTotems) {
//         this.mobTotems = mobTotems;
//     }
// 
//     @Provides
//     public MobTotems provideMobTotems() {
//         return mobTotems;
//     }
// }
// 
// Path: src/main/java/com/corwinjv/mobtotems/MobTotems.java
// @Mod(modid = Reference.MOD_ID, name = Reference.MOD_NAME, version = Reference.MOD_VERSION, guiFactory = Reference.GUI_FACTORY_CLASS,
//         dependencies = "before:guideapi")
// public class MobTotems {
//     @Mod.Instance
//     public static MobTotems instance;
// 
//     @SidedProxy(clientSide = Reference.CLIENT_SIDE_PROXY_CLASS, serverSide = Reference.SERVER_SIDE_PROXY_CLASS)
//     public static CommonProxy proxy;
// 
//     private static MobTotemsComponent mobTotemsComponent;
// 
//     @Mod.EventHandler
//     public void preInit(FMLPreInitializationEvent event) {
// //        //Dagger 2 implementation
// //        mobTotemsComponent = proxy.initializeDagger(instance);
// 
//         // Network & Messages
//         Network.init();
//         NetworkRegistry.INSTANCE.registerGuiHandler(instance, new OfferingBoxGuiHandler());
// 
//         // Config
//         ConfigurationHandler.Init(event.getSuggestedConfigurationFile());
//         MinecraftForge.EVENT_BUS.register(new ConfigurationHandler());
// 
//         // Helper stuff
//         TotemHelper.init();
//         MinecraftForge.EVENT_BUS.register(new CreeperLogic.CreeperTotemEntityJoinWorldEvent());
//         MinecraftForge.EVENT_BUS.register(new CowLogic.CowTotemEntityJoinWorldEvent());
//         MinecraftForge.EVENT_BUS.register(new EnderLogic.EnderTotemEnderTeleportEvent());
// 
//         // Blocks
//         ModBlocks.init();
// 
//         // Items
//         ModItems.init();
// 
//         // Entities
//         ModEntities.init();
//         ModEntities.registerEntities(instance);
//         proxy.registerEntityRenders();
// 
//         // Keybinds
//         proxy.registerKeys();
//     }
// 
//     public static MobTotemsComponent component() {
//         return mobTotemsComponent;
//     }
// 
//     @Mod.EventHandler
//     public void init(FMLInitializationEvent event) {
//         proxy.registerRenders();
//     }
// 
//     @Mod.EventHandler
//     public void postInit(FMLPostInitializationEvent event) {
//         proxy.registerGui();
//         proxy.registerParticleRenderer();
//     }
// }


// Path: src/main/java/com/corwinjv/di/MobTotemsComponent.java
import com.corwinjv.di.modules.MobTotemsModule;
import com.corwinjv.mobtotems.MobTotems;
import dagger.Component;

package com.corwinjv.di;


@Component(modules = {
        MobTotemsModule.class
}, dependencies = {
        MinecraftComponent.class
})
public interface MobTotemsComponent extends MinecraftComponent {

    MobTotems mobTotems();