OSDN Git Service

変更点をそのままにして修正し、間違っているところを消去&修正
[chemicraft/chemicraft.git] / common / chemicraft / ChemiCraft.java
index f9ea799..d727bb9 100644 (file)
@@ -1,23 +1,19 @@
 package chemicraft;\r
 \r
-import java.util.ArrayList;\r
-import java.util.Properties;\r
-\r
 import net.minecraft.src.Block;\r
 import net.minecraft.src.CreativeTabs;\r
 import net.minecraft.src.Item;\r
-import net.minecraft.src.ItemStack;\r
+import net.minecraft.src.Material;\r
 import net.minecraftforge.common.Configuration;\r
 import net.minecraftforge.common.Property;\r
+import chemicraft.Auxiliary.NameAuxiliary;\r
 import cpw.mods.fml.common.Mod;\r
-import cpw.mods.fml.common.Mod.Instance;\r
 import cpw.mods.fml.common.SidedProxy;\r
-import cpw.mods.fml.common.event.FMLInitializationEvent;\r
 import cpw.mods.fml.common.event.FMLPostInitializationEvent;\r
 import cpw.mods.fml.common.event.FMLPreInitializationEvent;\r
 import cpw.mods.fml.common.network.NetworkMod;\r
+import cpw.mods.fml.common.network.NetworkRegistry;\r
 import cpw.mods.fml.common.registry.GameRegistry;\r
-import cpw.mods.fml.common.registry.LanguageRegistry;\r
 \r
 @Mod( modid = "chemiCraft", name="ChemiCraft", version="テスト版") //ID,名前,バージョン\r
 @NetworkMod(clientSideRequired = true, serverSideRequired = true, versionBounds = "[1.3.2]", packetHandler = PacketHandler.class) //クライアント、サーバー共に必要 1.3.2用\r
@@ -25,8 +21,6 @@ import cpw.mods.fml.common.registry.LanguageRegistry;
 public class ChemiCraft\r
 {\r
 \r
-       public static final CreativeTabs tabAtoms = new CreativeTabAtoms("tabAtoms");\r
-\r
        public static final String[] atomsName = {\r
                "Hydrogen", "Helium","Lithium","Beryllium","Boron","Carbon","Nitrogen","Oxygen","Fluorine","Neon",\r
                "Sodium","Magnesium","Aluminium","Silicon","Phosphorus","Sulfur","Chlorine","Argon","Potassium","Calcium",\r
@@ -54,68 +48,118 @@ public class ChemiCraft
                "タリウム", "鉛", "ビスマス", "ポロニウム", "アスタチン", "ラドン", "フランシウム", "ラジウム", "アクチニウム", "トリウム",\r
                "プロトアクチウム", "ウラン", "ネプツニウム", "プルトニウム", "アメリシウム", "キュリウム", "バークリウム", "カルホルニウム", "アインスタイニウム", "フェルミウム",\r
                "メンデレビウム", "ノーベリウム", "ローレンシウム", "ラサホージウム", "ドブニウム", "シーボーギウム", "ボーリウム", "ハッシウム", "マイトネリウム", "ダームスタチウム",\r
-               "ã\83¬ã\83³ã\83\88ã\82²ã\83\8bã\82¦ã\83 ", "ã\82³ã\83\9aã\83«ã\83\8bã\82·ã\82¦ã\83 ", "ã\82¦ã\83³ã\82¦ã\83³ã\83\88ã\83ªã\82¦ã\83 ", "ã\83\95ã\83¬ã\83­ã\83\93ã\82¦ã\83 ", "ã\82¦ã\83³ã\82¦ã\83³ã\83\9aã\83³ã\83\81ã\82¦ã\83 ", "ã\83ªã\83\90ã\83¢ã\83ªã\82¦ã\83 ", "ã\82¦ã\83³ã\82¦ã\83³ã\82»ã\83\97ã\83\81ã\82¦ã\83 ", "ウンウンオクチウム"\r
+               "ã\83¬ã\83³ã\83\88ã\82²ã\83\8bã\82¦ã\83 ", "ã\82³ã\83\9aã\83«ã\83\8bã\82·ã\82¦ã\83 ", "ã\82¦ã\83³ã\82¦ã\83³ã\83\88ã\83ªã\82¦ã\83 ", "ã\82¦ã\83³ã\82¦ã\83³ã\82¯ã\82¢ã\82¸ã\82¦ã\83 ", "ã\82¦ã\83³ã\82¦ã\83³ã\83\9aã\83³ã\83\81ã\82¦ã\83 ", "ã\82¦ã\83³ã\82¦ã\83³ã\83\98ã\82­ã\82·ã\82¦ã\83 ", "", "ウンウンオクチウム"\r
        };\r
 \r
-       // プロキシ\r
+       /**\r
+        * このmodのインスタンス\r
+        */\r
+       @Mod.Instance("chemiCraft")\r
+       public static ChemiCraft instance;\r
+\r
+       /**\r
+        * ChemiCraftのProxy\r
+        */\r
        @SidedProxy(clientSide = "chemicraft.client.ClientProxy", serverSide = "chemicraft.CommonProxy")\r
        public static CommonProxy proxy;\r
-       \r
-       // このクラスのインスタンス\r
-       @Instance("chemiCraft")\r
-       public static ChemiCraft instance;\r
-       \r
-       private ChemiCraftAPI chemiCraftAPI = ChemiCraftAPI.instance;\r
 \r
-       public static int gasCollectingBottleID;\r
+       /**\r
+        * ChemiCraftのCreativeTab\r
+        */\r
+       public static CreativeTabs creativeTab = new CreativeTabAtoms("ChemiCraft");\r
+\r
+       /**\r
+        * ItemID\r
+        */\r
        public static int atomsID;\r
        public static int compoundsID;\r
+       public static int gasCollectingBottleID;\r
 \r
-       public static Item itemGasCollectingBottle;\r
-       public static Item itemAtoms;\r
-       public static Item itemCompounds;\r
+       /**\r
+        * BlockID\r
+        */\r
+       public static int scienceCraftingTableID;\r
 \r
-       private Auxiliary Auxiliary = new Auxiliary();\r
-       private Auxiliary.NameAuxiliary NameAuxiliary = Auxiliary.new NameAuxiliary();\r
+       /**\r
+        * GUIID\r
+        */\r
+       public static int guiScienceCraftingTableID;\r
 \r
-       // コンストラクタ\r
-       @Mod.Init\r
-       public void chemiLoadMethod(FMLInitializationEvent event)\r
-       {\r
+       /**\r
+        * Block型変数\r
+        */\r
+       public static Block blockScienceCraftingTable;\r
 \r
-               //化合物の追加\r
-               ChemiCraftAPI.addLangCompound("ja_JP", "Salt", "塩");\r
-       }\r
+       /**\r
+        * Item型変数\r
+        */\r
+       public static Item itemAtoms;\r
+       public static Item itemCompounds;\r
+       public static Item itemGasCollectingBottle;\r
+\r
+       /**\r
+        * このmodに必要な補助クラスのインスタンス\r
+        */\r
+       private static Auxiliary Auxiliary = new Auxiliary();\r
+       private static NameAuxiliary NameAuxiliary = Auxiliary.new NameAuxiliary();\r
 \r
-       @Mod.PreInit  // 前処理\r
+       @Mod.PreInit\r
        public void chemiPreLoadMethod(FMLPreInitializationEvent event)\r
        {\r
                Configuration cfg = new Configuration(event.getSuggestedConfigurationFile());\r
                cfg.load();\r
-               Property gasCollectingBottleIDProp = cfg.getItem("gasCollectingBottleID", 25000);\r
-               Property atomsIDProp = cfg.getItem("atomsID", 25001);\r
-               Property compoundsIDProp = cfg.getItem("compoundsID", 25002);\r
-               gasCollectingBottleID = gasCollectingBottleIDProp.getInt();\r
+\r
+               Property scienceCraftingTableIDProp = cfg.getBlock("scienceCraftingTable", 200);\r
+               Property atomsIDProp = cfg.getItem("atomsID", 25000);\r
+               Property compoundsIDProp = cfg.getItem("compoundsID", 25001);\r
+               Property gasCollectingBottleIDProp = cfg.getItem("gasCollectingBottleID", 25002);\r
+               Property guiScienceCraftingTableIDProp = cfg.get("GUI", "GUIScienceCraftingTableID", 1000);\r
+\r
+               scienceCraftingTableID = scienceCraftingTableIDProp.getInt();\r
                atomsID = atomsIDProp.getInt();\r
                compoundsID = compoundsIDProp.getInt();\r
+               gasCollectingBottleID = gasCollectingBottleIDProp.getInt();\r
+               guiScienceCraftingTableID = guiScienceCraftingTableIDProp.getInt();\r
+\r
                cfg.save();\r
        }\r
 \r
-       @Mod.PostInit // ModLoader.loadメソッドと同等\r
+       @Mod.PostInit\r
        public void chemiPostLoadMethod(FMLPostInitializationEvent event)\r
        {\r
-               itemGasCollectingBottle = new ItemGasCollectingBottle(gasCollectingBottleID).setItemName("gasCollectingBottle");\r
+               //API用の処理\r
+               NameAuxiliary.addName(itemCompounds, ChemiCraftAPI.getCompoundsName().toArray());\r
+               NameAuxiliary.addName(itemCompounds, "ja_JP", ChemiCraftAPI.getCompoundsLangName().toArray());\r
+\r
+               //Blockを追加します\r
+               blockScienceCraftingTable = new BlockScienceCraftingTable(scienceCraftingTableID, Block.workbench.blockIndexInTexture, Material.ground).setHardness(2.0F).setResistance(0.0F).setStepSound(Block.soundStoneFootstep).setBlockName("ScienceCraftingTable");\r
+\r
+               //Itemを追加します\r
                itemAtoms = new ItemAtoms(atomsID).setItemName("atoms");\r
                itemCompounds = new ItemCompounds(compoundsID).setItemName("compounds");\r
+               itemGasCollectingBottle = new ItemGasCollectingBottle(gasCollectingBottleID).setItemName("gasCollectingBottle");\r
+\r
+               //BlockをMinecraftに登録します\r
+               GameRegistry.registerBlock(blockScienceCraftingTable);\r
 \r
+               //Blockの名前を設定します\r
+               NameAuxiliary.addName(blockScienceCraftingTable, "ScienceCraftingTable");\r
+               NameAuxiliary.addName(blockScienceCraftingTable, "ja_JP", "科学作業台");\r
+\r
+               //Itemの名前を設定します\r
                NameAuxiliary.addName(itemAtoms, atomsName);\r
                NameAuxiliary.addName(itemAtoms, "ja_JP", atomsNameJP);\r
-               NameAuxiliary.addName(itemCompounds, ChemiCraftAPI.getCompoundsName().toArray());\r
-               NameAuxiliary.addName(itemCompounds, "ja_JP", ChemiCraftAPI.getCompoundsLangName().toArray());\r
                NameAuxiliary.addName(itemGasCollectingBottle, "GasCollectingBottle");\r
                NameAuxiliary.addName(itemGasCollectingBottle, "ja_JP", "集気瓶");\r
 \r
-               ChemiCraftAPI.addCompoundHandler("Salt", new CompoundHandlerTest());\r
+               //化合物の名前を設定し追加します\r
+               ChemiCraftAPI.addLangCompound("ja_JP", "Salt", "塩");\r
+\r
+               //TileEntityを追加します\r
+               GameRegistry.registerTileEntity(TileEntityScienceCraftingTable.class, "TileEntityScienceCraftingTable");\r
+\r
+               //GUIを追加します\r
+               NetworkRegistry.instance().registerGuiHandler(instance, proxy);\r
 \r
        }\r
 \r