X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=common%2Fpcc%2Fchemicraft%2Fbase%2FChemiCraftBase.java;h=27846d3faf9b6b0ad3e64df8c7bb158737575b35;hb=69dba5702a8be51ae3565eea17f8190bbba00593;hp=3a1ebc197101404be37871242a9a96361b358e09;hpb=6252cbe8d50ac408a53e314572be437119cf21b6;p=chemicraft%2FChemiCraftNext.git diff --git a/common/pcc/chemicraft/base/ChemiCraftBase.java b/common/pcc/chemicraft/base/ChemiCraftBase.java index 3a1ebc1..27846d3 100644 --- a/common/pcc/chemicraft/base/ChemiCraftBase.java +++ b/common/pcc/chemicraft/base/ChemiCraftBase.java @@ -5,19 +5,21 @@ import java.util.Iterator; import java.util.List; import net.minecraft.block.Block; +import net.minecraft.block.BlockDispenser; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.common.Configuration; import net.minecraftforge.common.Property; +import net.minecraftforge.oredict.OreDictionary; import pcc.chemicraft.ChemiCraft; import pcc.chemicraft.ChemiCraftConfiguration; import pcc.chemicraft.ChemiCraftRegister; import pcc.chemicraft.EnumLoggingType; import pcc.chemicraft.base.creativetab.CreativeTabAtomOres; +import pcc.chemicraft.base.dispenser.DispenserBehaviorAtomsGrenade; 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.LoaderState.ModState; @@ -30,16 +32,17 @@ import cpw.mods.fml.common.SidedProxy; 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) +@Mod(modid = "ChemiCraft|Base", name = "ChemiCraftBase", version = "Beta1") +@NetworkMod(clientSideRequired = true, serverSideRequired = true, versionBounds = "1.5", channels = "chemicraftbase", packetHandler = PacketHandler.class) public class ChemiCraftBase extends ChemiCraft { /** * this is ChemiCraft instance. */ - @Instance("ChemiCraftBase") + @Instance("ChemiCraft|Base") public static ChemiCraftBase instance; /** @@ -56,17 +59,19 @@ public class ChemiCraftBase extends ChemiCraft { /** * CreativeTab of ChemiCraft. */ - public static final CreativeTabs creativeTabAtomsOre = new CreativeTabAtomOres("AtomsOre"); + public static final CreativeTabs creativeTabAtomOres = new CreativeTabAtomOres("AtomOres"); /** * the ItemID. */ + public int atomIngotsID; public int atomGrenadeID; public int blackSmokeID; + public int oreSerarcherID; public int dustID; public int radiationGunID; public int radiationBalletID; - public int oreSerarcherID; + public int raditionGunDataChipID; /** * the BlockID. @@ -81,12 +86,14 @@ public class ChemiCraftBase extends ChemiCraft { /** * Variables of Item type. */ + public Item itemAtomIngots; public Item itemAtomGrenade; public Item itemBlackSmoke; public Item itemDust; public Item itemRadiationGun; public Item itemRadiationBallet; public Item itemOreSearcher; + public Item itemRaditionGunDataChip; /** * the Register Instances. @@ -100,9 +107,10 @@ public class ChemiCraftBase extends ChemiCraft { public ChemiCraftRegister registerEntitys; /** - * the Textures + * the Textures. */ - public static final String ORE = ChemiCraft.TEXTURE + "AtomsOre_"; + public static final String INGOT = ChemiCraft.TEXTURE + "atom_ingots_"; + public static final String ORE = ChemiCraft.TEXTURE + "atom_ores_"; public ChemiCraftBase() { this.registerCompounds = new ChemiCraftRegisterCompounds(this); @@ -135,7 +143,6 @@ public class ChemiCraftBase extends ChemiCraft { while (true) { if (proxy != null && instance != null) { this.settingProcessing((FMLPostInitializationEvent) event); - this.apiProcessing((FMLPostInitializationEvent) event); break; } } @@ -179,6 +186,7 @@ public class ChemiCraftBase extends ChemiCraft { this.atomOresID[i] = ccfgBlock.additionID(); } + this.atomIngotsID = ccfgItem.additionID(); this.atomGrenadeID = ccfgItem.additionID(); this.dustID = ccfgItem.additionID(); this.radiationGunID = ccfgItem.additionID(); @@ -197,24 +205,45 @@ public class ChemiCraftBase extends ChemiCraft { this.registerChemicalRecipe.start(); this.registerRecipe.start(); this.registerEntitys.start(); + + BlockDispenser.dispenseBehaviorRegistry.putObject(this.itemAtomGrenade, new DispenserBehaviorAtomsGrenade()); + } private void apiProcessing(final FMLPostInitializationEvent event) { // API用の処理 + 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)); + OreDictionary.registerOre("ingot" + this.apiBase.getAtomOresAtomName().get(i), new ItemStack(this.itemAtomIngots, 1, i )); + GameRegistry.registerWorldGenerator(this.apiBase.getAtomOres().get(i)); + } + Iterator langoresItr = this.apiBase.getAtomOresName().iterator(); while (langoresItr.hasNext()){ String lang = langoresItr.next(); - ArrayList names = this.apiBase.getAtomOresName().get(lang); - for (int i = 0; i < names.size(); i++) { - ChemiCraftCore.logger.write("AtomOresAddName:" + "Name-" + names.get(i) + "/Damage-" + (i - i / 16 * 16) + "/Lang-" + lang, + ArrayList oresName = this.apiBase.getAtomOresName().get(lang); + ArrayList ingotsName = this.apiBase.getAtomIngotsName().get(lang); + for (int i = 0; i < oresName.size(); i++) { + ChemiCraftCore.logger.write("AtomOresAddName:" + "IngotName-" + ingotsName.get(i) + "OreName-" + oresName.get(i) + "ID-" + (i / 16)+ "/Damage-" + (i - i / 16 * 16) + "/Lang-" + lang, EnumLoggingType.INFO); LanguageRegistry.instance().addNameForObject( - new ItemStack(this.blockAtomOres[i / 16], 1, i - i / 16 * 16), + new ItemStack(this.atomOresID[i / 16], 1, i % 16), lang, - names.get(i)); + oresName.get(i) + ); + + /* + LanguageRegistry.instance().addNameForObject( + new ItemStack(this.atomIngotsID, 1, i), + lang, + ingotsName.get(i) + ); + */ + } } + } }