-package chemicraft;
+package pcc.chemicraft;
import java.util.ArrayList;
import java.util.HashMap;
import net.minecraft.item.ItemStack;
-import chemicraft.system.ChemiCraftCraftingManager;
-import chemicraft.tileentity.TileEntityPyrolysisTable;
-import chemicraft.util.ChemicalNBTRecipe;
-import chemicraft.util.ICompoundHandler;
-import chemicraft.util.MaterialRecipe;
+import pcc.chemicraft.system.ChemiCraftCraftingManager;
+import pcc.chemicraft.tileentity.TileEntityPyrolysisTable;
+import pcc.chemicraft.util.ChemicalNBTRecipe;
+import pcc.chemicraft.util.ICompoundHandler;
+import pcc.chemicraft.util.MaterialRecipe;
/**
* ChemiCraftのAPI
private ChemiCraftCraftingManager chemiCraftCraftingManager = new ChemiCraftCraftingManager();
+ /**
+ * ツール&武器作成台の素材一覧のリスト
+ */
+ private ArrayList<ItemStack[]> toolAndWeaponMaterials = new ArrayList<ItemStack[]>();
+
+
+ /**
+ * ツール&武器作成台の結果のリスト
+ */
+ private ArrayList<ItemStack> toolAndWeaponResult = new ArrayList<ItemStack>();
+
+
+ /**
+ * ツール&武器作成台の不定形であるか
+ */
+ private ArrayList<Boolean> toolAndWeaponSharpless = new ArrayList<Boolean>();
+
+
/**
* add compound.
+ /**
+ * 分解台のレシピを追加します
+ * @param material 素材
+ * @param results 原子の元素番号の配列
+ * @param stacks 原子のできる数の配列
+ */
public void addDecompositionRecipe(ItemStack material, int[] results, int[] stacks) {
ItemStack[] itemstacks = new ItemStack[results.length];
for (int i = 0; i < itemstacks.length; i++) {
+ /**
+ * 分解台の燃料を追加します
+ * @param itemstack 燃料のItemStack
+ * @param burnTime 燃焼時間(tick * rate)
+ */
public void addDecompositionFuel(ItemStack itemstack, int burnTime) {
TileEntityPyrolysisTable.addFuel(itemstack, burnTime);
}
+ /**
+ * ツール&武器作成台のレシピを追加します
+ * @param materials 素材
+ * @param result 結果
+ */
+ public void addToolAndWeaponRecipe(ItemStack[] materials, ItemStack result) {
+ toolAndWeaponMaterials.add(materials);
+ toolAndWeaponResult.add(result);
+ toolAndWeaponSharpless.add(false);
+ }
+
+
+ /**
+ * ツール&武器作成台の不定形レシピを追加します
+ * @param materials 素材
+ * @param result 結果
+ */
+ public void addSharplessToolAndWeaponRecipe(ItemStack[] materials, ItemStack result) {
+ toolAndWeaponMaterials.add(materials);
+ toolAndWeaponResult.add(result);
+ toolAndWeaponSharpless.add(true);
+ }
+
+
+
+ /**
+ * 素材作成台の不定形レシピを追加します
+ * @param materials 素材
+ * @param result 結果
+ * @param nbtRecipe NBT(Nullの場合はなし)
+ */
public void addSharplessMaterialRecipe(ItemStack[] materials, ItemStack result, ChemicalNBTRecipe nbtRecipe){
materialRecipe.add(new MaterialRecipe(result, materials, nbtRecipe, true));
}
+ /**
+ * 素材作成台のレシピを追加します
+ * @param materials 素材
+ * @param result 結果
+ * @param nbtRecipe NBT(Nullの場合はなし)
+ */
public void addMaterialRecipe(ItemStack[] materials, ItemStack result, ChemicalNBTRecipe nbtRecipe){
materialRecipe.add(new MaterialRecipe(result, materials, nbtRecipe, false));
}
+ public ArrayList<ItemStack[]> getToolAndWeaponMaterials() {
+ return toolAndWeaponMaterials;
+ }
+
+
+
+ public ArrayList<ItemStack> getToolAndWeaponResult() {
+ return toolAndWeaponResult;
+ }
+
+
+
+ public ArrayList<Boolean> getToolAndWeaponSharpless() {
+ return toolAndWeaponSharpless;
+ }
+
+
+
public ChemiCraftCraftingManager getCraftingManager(){
return chemiCraftCraftingManager;
}