package pcc.chemicraft.base;
+import java.util.List;
+
import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import pcc.chemicraft.ChemiCraftConfiguration;
import pcc.chemicraft.ChemiCraftRegister;
import pcc.chemicraft.base.creativetab.CreativeTabAtomOres;
+import pcc.chemicraft.base.gen.WorldGenAtomsOre;
import pcc.chemicraft.base.system.CommonProxy;
import pcc.chemicraft.base.system.PacketHandler;
import pcc.chemicraft.core.ChemiCraftAPI;
+import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.Mod;
+import cpw.mods.fml.common.ModContainer;
+import cpw.mods.fml.common.LoaderState.ModState;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.Mod.PostInit;
import cpw.mods.fml.common.Mod.PreInit;
import cpw.mods.fml.common.SidedProxy;
+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.NetworkMod;
+import cpw.mods.fml.common.registry.GameRegistry;
@Mod(modid = "ChemiCraftBase", name = "ChemiCraftBase", version = "beta")
@NetworkMod(clientSideRequired = true, serverSideRequired = true, versionBounds = "1.4.6", channels = "chemicraftbase", packetHandler = PacketHandler.class)
/**
* the BlockID.
*/
- public int[] atomOresID = new int[3];
+ public int[] atomOresID = new int[4];
/**
* Variables of Block type.
{
while (true) {
if (proxy != null && instance != null) {
- this.settingProcessing(event);
- this.apiProcessing(event);
+ this.settingProcessing((FMLPostInitializationEvent) event);
+ this.apiProcessing((FMLPostInitializationEvent) event);
break;
}
}
+
+ Thread loadCheckThread = new Thread() {
+ @Override
+ public void run() {
+ while (true) {
+ List<ModContainer> mod = Loader.instance().getModList();
+ ModContainer finalMod = mod.get(mod.size()-1);
+ ModState finalModState = Loader.instance().getModState(finalMod);
+ if (finalModState == ModState.AVAILABLE) {
+ apiProcessing((FMLPostInitializationEvent) event);
+ break;
+ }
+ }
+ }
+ };
+ loadCheckThread.start();
+
}
/**
Configuration cfg = new Configuration(event.getSuggestedConfigurationFile());
cfg.load();
- Property baseBlockID = cfg.get("BlockID", "Base of Block ID", 2900);
+ Property baseBlockID = cfg.get("BlockID", "Base of Block ID", 2500);
Property baseItemID = cfg.get("ItemID", "Base of Item ID", 25500);
ChemiCraftConfiguration ccfgBlock = new ChemiCraftConfiguration(baseBlockID.getInt());
- ChemiCraftConfiguration ccfgItem = new ChemiCraftConfiguration(baseBlockID.getInt());
+ ChemiCraftConfiguration ccfgItem = new ChemiCraftConfiguration(baseItemID.getInt());
for (int i = 0; i < atomOresID.length; i++) {
this.atomOresID[i] = ccfgBlock.additionID();
cfg.save();
}
- @Override
protected void settingProcessing(FMLPostInitializationEvent event)
{
this.registerCompounds.start();
{
this.nameAuxiliary.addName(new ItemStack(blockAtomOres[i / 16], 0, i - i / 16 * 16), apiBase.getAtomOresLanguage().get(apiBase.getAtomOresName().getKeyList(i), j), apiBase.getAtomOresName().get(apiBase.getAtomOresName().getKeyList(i), j));
OreDictionary.registerOre("ore" + apiBase.getAtomOresName().getKeyList(i), new ItemStack(blockAtomOres[i / 16], 1, i - i / 16 * 16));
+ GameRegistry.registerWorldGenerator(apiBase.getAtomOres().get(i));
}
}