OSDN Git Service

ChemicalCropsのファイル生成に柔軟性がなかったのを修正
[chemicraft/chemicraft.git] / common / pcc / addon / crops / ChemicalCrops.java
index 015708c..38f7b1d 100644 (file)
@@ -4,6 +4,7 @@ import java.io.IOException;
 
 import net.minecraft.block.Block;
 import net.minecraft.block.material.Material;
+import net.minecraft.server.MinecraftServer;
 import net.minecraftforge.common.Configuration;
 import net.minecraftforge.common.MinecraftForge;
 import pcc.addon.crops.blocks.BlockChemicalCrops1;
@@ -43,7 +44,7 @@ public class ChemicalCrops {
        /**
         * プラントデータ書き込み&読み込みのストリーム
         */
-       public static final MultiBlockDataStream dataStream = new MultiBlockDataStream(System.getProperty("user.dir") + "/saves/", "ChemicalCrops.dat");
+       private static MultiBlockDataStream dataStream;
 
        /**
         * Texture Domain.
@@ -55,6 +56,11 @@ public class ChemicalCrops {
         */
        private Thread thread;
 
+       /**
+        * Minecraftのディレクトリパス
+        */
+       private static String MINECRAFT_DIR;
+
        public ChemicalCrops() {
                this.thread = new Thread() {
                        @Override
@@ -79,6 +85,9 @@ public class ChemicalCrops {
 
        @PreInit
        public void preInit(FMLPreInitializationEvent event) {
+               this.MINECRAFT_DIR = event.getModConfigurationDirectory().getAbsolutePath().substring(0, event.getModConfigurationDirectory().getAbsolutePath().length()-6) + "saves/";
+               this.dataStream = new MultiBlockDataStream(MINECRAFT_DIR, "ChemicalCrops.dat");
+
                Configuration cfg = new Configuration(event.getSuggestedConfigurationFile());
                cfg.load();
                this.crops1ID = cfg.getBlock("CropsID", 2700).getInt();
@@ -98,6 +107,14 @@ public class ChemicalCrops {
        }
 
        /**
+        * データストリームを返します
+        * @return データストリーム
+        */
+       public static MultiBlockDataStream getDataStream() {
+               return dataStream;
+       }
+
+       /**
         * プラントデータ自動セーブを開始します。<br>
         * すでに停止している場合はNullPointerExceptionをスローします。
         */