aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/kekztech/KekzCore.java
blob: 98bba989f00fb160d6e06f54fab631788ddbc27c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
package kekztech;

import common.Blocks;
import common.Recipes;
import common.tileentities.*;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import items.ErrorItem;
import items.Item_ThaumiumReinforcedJarFilled;
import items.MetaItem_CraftingComponent;
import items.MetaItem_ReactorComponent;
import net.minecraft.item.ItemStack;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.api.research.ResearchItem;
import thaumcraft.api.research.ResearchPage;

/**
 * My GT-Meta-IDs are: 13101 - 13500
 * 
 * @author kekzdealer
 *
 */
@Mod(modid = KekzCore.MODID, name = KekzCore.NAME, version = KekzCore.VERSION, 
		dependencies =
			  "required-after:IC2;"
			+ "required-after:gregtech;"
			+ "required-after:tectech;"
			+ "required-after:Thaumcraft;"
			+ "required-after:ThaumicTinkerer;"
			+ "after:bartworks"
		)
public class KekzCore {
	
	public static final String NAME = "KekzTech";
	public static final String MODID = "kekztech";
	public static final String VERSION = "0.4";

	public static final Logger LOGGER = LogManager.getLogger(NAME);

	@Mod.Instance("kekztech")
	public static KekzCore instance;

	public static GTMTE_SOFuelCellMK1 sofc1;
	public static GTMTE_SOFuelCellMK2 sofc2;
	public static GTMTE_ModularNuclearReactor mdr;
	public static GTMTE_FluidMultiStorage fms;
	public static GTMTE_ItemServer is;
	public static GTMTE_LapotronicSuperCapacitor lsc;
	
	@Mod.EventHandler
	public void preInit(FMLPreInitializationEvent event) {
		// Items
		ErrorItem.getInstance().registerItem();
		MetaItem_ReactorComponent.getInstance().registerItem();
		MetaItem_CraftingComponent.getInstance().registerItem();
		//Item_Configurator.getInstance().registerItem();
		Items.registerOreDictNames();
		
		Item_ThaumiumReinforcedJarFilled.getInstance().registerItem();
		
		Blocks.init();
		
		// Register TileEntities
		GameRegistry.registerTileEntity(TE_TFFTMultiHatch.class, "kekztech_tfftmultihatch_tile");
		GameRegistry.registerTileEntity(TE_ItemServerIOPort.class, "kekztech_itemserverioport_tile");
		GameRegistry.registerTileEntity(TE_ItemProxyCable.class, "kekztech_itemproxycable_tile");
		GameRegistry.registerTileEntity(TE_ItemProxySource.class, "kekztech_itemproxysource_tile");
		GameRegistry.registerTileEntity(TE_ItemProxyEndpoint.class, "kekztech_itemproxyendpoint_tile");
		
		GameRegistry.registerTileEntity(TE_ThaumiumReinforcedJar.class, "kekztech_thaumiumreinforcedjar");
		GameRegistry.registerTileEntity(TE_IchorJar.class, "kekztech_ichorjar");
		
		// Register guis
		NetworkRegistry.INSTANCE.registerGuiHandler(instance, new GuiHandler());
	}
	
	@Mod.EventHandler
	public void init(FMLInitializationEvent event) {
		// Multiblock controllers
		sofc1 = new GTMTE_SOFuelCellMK1(13101, "multimachine.fuelcellmk1", "Solid-Oxide Fuel Cell Mk I");
		sofc2 = new GTMTE_SOFuelCellMK2(13102, "multimachine.fuelcellmk2", "Solid-Oxide Fuel Cell Mk II");
		mdr = new GTMTE_ModularNuclearReactor(13103, "multimachine.nuclearreactor", "Nuclear Reactor");
		fms = new GTMTE_FluidMultiStorage(13104, "multimachine.tf_fluidtank", "T.F.F.T");
		//is = new GTMTE_ItemServer(13105, "multimachine.itemserver", "Item Server");
        lsc = new GTMTE_LapotronicSuperCapacitor(13106, "multimachine.supercapacitor", "Lapotronic Supercapacitor");
		// Register renderer
		//RenderingRegistry.registerBlockHandler(ConduitRenderer.getInstance());
	}
	
	@Mod.EventHandler
	public void postInit(FMLPostInitializationEvent event) {
		Recipes.init();
		
		// Thaumcraft research
		final ResearchItem jar_thaumiumreinforced = new ResearchItem("THAUMIUMREINFORCEDJAR", "ALCHEMY", new AspectList(), 3, -4, 2, new ItemStack(Blocks.jarThaumiumReinforced, 1))
			.setPages(
				new ResearchPage("kekztech.research_page.THAUMIUMREINFORCEDJAR.0"),
				new ResearchPage(Recipes.infusionRecipes.get("THAUMIUMREINFORCEDJAR")),
				new ResearchPage("kekztech.research_page.THAUMIUMREINFORCEDJAR.1")
			)
			.setConcealed()
			.setParents("JARLABEL")
			.registerResearchItem();
		
		final ResearchItem jar_ichor = new ResearchItem("ICHORJAR", "ALCHEMY", new AspectList(), 2, -5, 3, new ItemStack(Blocks.jarIchor, 1))
			.setPages(
				new ResearchPage("kekztech.research_page.ICHORJAR"),
				new ResearchPage(Recipes.infusionRecipes.get("ICHORJAR"))
			)
			.setConcealed()
			.setParents("THAUMIUMREINFORCEDJAR")
			.registerResearchItem();
	}
}