OSDN Git Service

tc
[chemicraft/chemicraft.git] / common / pcc / chemicraft / base / ChemiCraftBase.java
index 8e05e8e..2aad596 100644 (file)
@@ -1,5 +1,7 @@
 package pcc.chemicraft.base;
 
+import java.util.ArrayList;
+import java.util.Iterator;
 import java.util.List;
 
 import net.minecraft.block.Block;
@@ -14,27 +16,25 @@ import pcc.chemicraft.ChemiCraftConfiguration;
 import pcc.chemicraft.ChemiCraftRegister;
 import pcc.chemicraft.EnumLoggingType;
 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 pcc.chemicraft.core.ChemiCraftCore;
 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;
 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.ModContainer;
 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;
+import cpw.mods.fml.common.registry.LanguageRegistry;
 
 @Mod(modid = "ChemiCraftBase", name = "ChemiCraftBase", version = "beta1")
-@NetworkMod(clientSideRequired = true, serverSideRequired = true, versionBounds = "1.4.7", channels = "chemicraftbase", packetHandler = PacketHandler.class)
+@NetworkMod(clientSideRequired = true, serverSideRequired = true, versionBounds = "1.5", channels = "chemicraftbase", packetHandler = PacketHandler.class)
 public class ChemiCraftBase extends ChemiCraft {
 
        /**
@@ -52,7 +52,6 @@ public class ChemiCraftBase extends ChemiCraft {
        /**
         * API Instance.
         */
-       public ChemiCraftAPI api = ChemiCraftAPI.instance();
        public ChemiCraftBaseAPI apiBase = ChemiCraftBaseAPI.instance();
 
        /**
@@ -69,6 +68,7 @@ public class ChemiCraftBase extends ChemiCraft {
        public int radiationGunID;
        public int radiationBalletID;
        public int oreSerarcherID;
+       public int raditionGunDataChipID;
 
        /**
         * the BlockID.
@@ -89,6 +89,7 @@ public class ChemiCraftBase extends ChemiCraft {
        public Item itemRadiationGun;
        public Item itemRadiationBallet;
        public Item itemOreSearcher;
+       public Item itemRaditionGunDataChip;
 
        /**
         * the Register Instances.
@@ -101,6 +102,11 @@ public class ChemiCraftBase extends ChemiCraft {
        public ChemiCraftRegister registerRecipe;
        public ChemiCraftRegister registerEntitys;
 
+       /**
+        * the Textures.
+        */
+       public static final String ORE = ChemiCraft.TEXTURE + "atoms_ore_";
+
        public ChemiCraftBase() {
                this.registerCompounds = new ChemiCraftRegisterCompounds(this);
                this.registerCompoundsHandler = new ChemiCraftRegisterCompoundsHandler(this);
@@ -132,7 +138,6 @@ public class ChemiCraftBase extends ChemiCraft {
                while (true) {
                        if (proxy != null && instance != null) {
                                this.settingProcessing((FMLPostInitializationEvent) event);
-                               this.apiProcessing((FMLPostInitializationEvent) event);
                                break;
                        }
                }
@@ -198,22 +203,27 @@ public class ChemiCraftBase extends ChemiCraft {
 
        private void apiProcessing(final FMLPostInitializationEvent event) {
                // API用の処理
-               for (int i = 0; i < apiBase.getAtomOresName().sizeKeysList(); i++) {
-                       for (int j = 0; j < apiBase.getAtomOresName().sizeElementsList(apiBase.getAtomOresName().getKeyList(i)); j++) {
-                               ChemiCraftCore.logger.write("OreAddName:" + "Name-" + apiBase.getAtomOresName().get(apiBase.getAtomOresName().getKeyList(i), j) +
-                                               "/Lang-" + apiBase.getAtomOresLanguage().get(apiBase.getAtomOresName().getKeyList(i), j),
+               for (int i = 0; i < this.apiBase.getAtomOres().size(); i++) {
+                       OreDictionary.registerOre("ore" + this.apiBase.getAtomOresAtomName().get(i), new ItemStack(this.blockAtomOres[i / 16], 1, i % 16));
+                       GameRegistry.registerWorldGenerator(this.apiBase.getAtomOres().get(i));
+               }
+
+               Iterator<String> langoresItr = this.apiBase.getAtomOresName().iterator();
+               while (langoresItr.hasNext()){
+                       String lang = langoresItr.next();
+                       ArrayList<String> names = this.apiBase.getAtomOresName().get(lang);
+                       for (int i = 0; i < names.size(); i++) {
+                               ChemiCraftCore.logger.write("AtomOresAddName:" + "Name-" + names.get(i) + "ID-" + (i / 16)+ "/Damage-" + (i - i / 16 * 16) + "/Lang-" + lang,
                                                EnumLoggingType.INFO);
 
-                               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));
+                               LanguageRegistry.instance().addNameForObject(
+                                               new ItemStack(this.atomOresID[i / 16], 1, i % 16),
+                                               lang,
+                                               names.get(i)
+                                               );
                        }
                }
+
        }
 
 }