OSDN Git Service

(・∀・)
[chemicraft/ChemiCraftNext.git] / common / pcc / chemicraft / core / ChemiCraftCore.java
index 1698c16..9ade64f 100644 (file)
@@ -5,21 +5,24 @@ import java.util.Iterator;
 import java.util.List;
 
 import net.minecraft.block.Block;
-import net.minecraft.client.Minecraft;
 import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLiving;
+import net.minecraft.entity.player.EntityPlayer;
 import net.minecraft.item.Item;
 import net.minecraft.item.ItemStack;
+import net.minecraft.util.EntityDamageSource;
 import net.minecraftforge.common.Configuration;
 import net.minecraftforge.common.Property;
 import pcc.chemicraft.ChemiCraft;
 import pcc.chemicraft.ChemiCraftConfiguration;
+import pcc.chemicraft.ChemiCraftLogging;
 import pcc.chemicraft.ChemiCraftRegister;
-import pcc.chemicraft.core.compounds.CompoundDebug;
+import pcc.chemicraft.EnumLoggingType;
 import pcc.chemicraft.core.creativetab.CreativeTabChemiCraft;
 import pcc.chemicraft.core.debug.CommandDeleteItem;
 import pcc.chemicraft.core.debug.CommandGenDebugRoom;
 import pcc.chemicraft.core.debug.CommandSetTile;
-import pcc.chemicraft.core.item.ItemChemiCell;
 import pcc.chemicraft.core.system.CommonProxy;
 import pcc.chemicraft.core.system.PacketHandler;
 import cpw.mods.fml.common.Loader;
@@ -42,8 +45,8 @@ import cpw.mods.fml.common.registry.LanguageRegistry;
  * ChemiCraft本体
  * @author P.C.C.
  */
-@Mod(modid = "ChemiCraft", name = "ChemiCraft", version = "beta")
-@NetworkMod(clientSideRequired = true, serverSideRequired = true, versionBounds = "1.4.6", channels = "chemicraftcore", packetHandler = PacketHandler.class)
+@Mod(modid = "ChemiCraft", name = "ChemiCraft", version = "Beta1")
+@NetworkMod(clientSideRequired = true, serverSideRequired = true, versionBounds = "1.4.7", channels = "chemicraftcore", packetHandler = PacketHandler.class)
 public class ChemiCraftCore extends ChemiCraft{
 
        /**
@@ -145,12 +148,18 @@ public class ChemiCraftCore extends ChemiCraft{
        public ChemiCraftRegister registerTileEntity;
        public ChemiCraftRegister registerRecipe;
 
+       /**
+        * Logging用のインスタンス
+        */
+       public static final ChemiCraftLogging logger = new ChemiCraftLogging(System.getProperty("user.dir"));
+
        public ChemiCraftCore() {
+               this.api.getCompoundsName().createHash("en_US");
                this.registerItem = new ChemiCraftRegisterItem(this);
                this.registerBlock = new ChemiCraftRegisterBlock(this);
                this.registerTileEntity = new ChemiCraftRegisterTileEntity(this);
                this.registerRecipe = new ChemiCraftRegisterCoreRecipe(this);
-
+               this.logger.startLogging();
                //this.sinVisualizer  = new SinVisualizer();
        }
 
@@ -243,7 +252,8 @@ public class ChemiCraftCore extends ChemiCraft{
                                        List<ModContainer> mod = Loader.instance().getModList();
                                        ModContainer finalMod = mod.get(mod.size()-1);
                                        ModState finalModState = Loader.instance().getModState(finalMod);
-                                       if (finalModState == ModState.AVAILABLE) {
+                                       if (finalModState == ModState.POSTINITIALIZED) {
+                                               ChemiCraftCore.logger.write("ChemiCraftCore>APIProcessing", EnumLoggingType.INFO);
                                                apiProcessing((FMLInitializationEvent) event);
                                                break;
                                        }
@@ -277,6 +287,9 @@ public class ChemiCraftCore extends ChemiCraft{
                        String lang = langcompoundsItr.next();
                        ArrayList<String> names = this.api.getCompoundsName().get(lang);
                        for (int i = 0; i < names.size(); i++) {
+                               ChemiCraftCore.logger.write("CompoundAddName:" + "Name-" + names.get(i) + "/Damage-" + i + "/Lang-" + lang,
+                                               EnumLoggingType.INFO);
+
                                LanguageRegistry.instance().addNameForObject(
                                                new ItemStack(this.itemCompounds, 1, i),
                                                lang,
@@ -288,8 +301,23 @@ public class ChemiCraftCore extends ChemiCraft{
 
 
 
+       public static EntityDamageSource getRadiationDamageSource(Entity par1Entity){
+               return new EntityDamageSource("radiation", par1Entity){
+                       @Override
+                       public String getDeathMessage(EntityLiving par1EntityLiving) {
+                               if (par1EntityLiving instanceof EntityPlayer) {
+                                       return ((EntityPlayer) (par1EntityLiving)).username + " is dead by radiation.";
+                               } else {
+                                       return par1EntityLiving.getEntityName() + " is dead by radiation.";
+                               }
+                       }
+               };
+       }
+
+
+
        private void debug(final FMLInitializationEvent event) {
-               this.proxy.registerTickHandler();
+               //this.proxy.registerTickHandler();
        }
 
 }