package pcc.chemicraft.core;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.HashMap;
import net.minecraft.item.Item;
}
-
- /**
- * 電池言語リスト
- */
- private ListHash<String, String> chemicalCellsLangListHash = new ListHash<String, String>();
-
-
- /**
- * 電池
- */
- private HashMap<ItemStack, Integer> chemicalCellsList = new HashMap<ItemStack, Integer>();
-
-
- /**
- * 電池名リスト
- */
- private ListHash<String, String> chemicalCellsNameListHash = new ListHash<String, String>();
-
-
/**
* 化合台の原子の数のリスト
*/
/**
- * List of compounds the language names.
+ * List of compounds names.
*/
- private ListHash<String, String> compoundsLangListHash = new ListHash<String, String>();
+ private ListHash<String, String> compoundsNameListHash = new ListHash<String, String>();
/**
- * List of compounds names.
+ * 電気分解燃料のリスト。
*/
- private ListHash<String, String> compoundsNameListHash = new ListHash<String, String>();
+ private HashMap<ItemStack, Integer> electrolysisFuelList = new HashMap<ItemStack, Integer>();
/**
private ArrayList<Boolean> toolAndWeaponSharpless = new ArrayList<Boolean>();
- /**
- * 電池を追加します
- * @param par1Name
- */
- public void addChemicalCell(Item par1ChemicalCell, String par2Name, int par3OperationTime){
- chemicalCellsList.put(
- new ItemStack(
- par1ChemicalCell,
- 0,
- chemicalCellsNameListHash.sizeKeysList()),
- par3OperationTime);
- addChemicalCellLanguage(
- par2Name,
- "en_US",
- par2Name);
- }
-
-
- /**
- * 既に登録した電池の新しい名前・言語を追加します
- * @param par1Name 英語名
- * @param par2NewName 新しい名前
- * @param par3Language 言語
- */
- public void addChemicalCellLanguage(String par1Name, String par3NewLanguage, String par2NewName){
- chemicalCellsNameListHash.add(par1Name, par2NewName);
- chemicalCellsLangListHash.add(par1Name, par3NewLanguage);
- }
-
-
/**
* 化合レシピを追加します。materialの要素数は0<= n <= 16にしてください。
* @param name compound name.
*/
public void addCompound(String name){
- compoundsNameListHash.add(name, name);
- compoundsLangListHash.add(name, "en_US");
+ compoundsNameListHash.add("en_US", name);
compoundHash.put(name, compoundHash.size());
}
*/
public void addCompound(String lang, String englishName, String langName){
addCompound(englishName);
- addCompoundLanguage(lang, englishName, langName);
+ addCompoundLanguage(lang, langName);
}
- public void addCompoundLanguage(String lang, String englishName, String langName){
+ public void addCompoundLanguage(String lang, String langName){
compoundsNameListHash.add(
- englishName,
+ lang,
langName);
- compoundsLangListHash.add(
- englishName,
- lang);
+ }
+
+
+
+ /**
+ * 電気分解台の燃料を追加します
+ * @param itemstack 燃料のItemStack
+ * @param burnTime 燃焼時間(tick * rate)
+ */
+ public void addElectrolysisDecompositionFuel(ItemStack itemstack, int burnTime) {
+ this.electrolysisFuelList.put(
+ itemstack,
+ burnTime);
}
itemstacks[i] =
new ItemStack(
ChemiCraftCore.instance.itemAtoms,
- ChemiCraftData.toAtoms(formula.getAtoms()[i]),
- formula.getAmonts()[i]);
+ formula.getAmonts()[i],
+ ChemiCraftData.toAtoms(formula.getAtoms()[i]));
}
this.electrolysisRecipeList.put(
material,
/**
+ * 素材作成台の不定形レシピを追加します
+ * @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 itemstack 燃料のItemStack
* @param burnTime 燃焼時間(tick * rate)
itemstacks[i] =
new ItemStack(
ChemiCraftCore.instance.itemAtoms,
- ChemiCraftData.toAtoms(formula.getAtoms()[i]),
- formula.getAmonts()[i]);
+ formula.getAmonts()[i],
+ ChemiCraftData.toAtoms(formula.getAtoms()[i]));
}
this.pyrolysisRecipeList.put(
material,
/**
- * 素材作成台の不定形レシピを追加します
- * @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 結果
- public ListHash<String, String> getChemicalCellsLanguage(){
- return chemicalCellsLangListHash;
- }
-
-
-
- public HashMap<ItemStack, Integer> getChemicalCellsList(){
- return chemicalCellsList;
- }
-
-
- public ListHash<String, String> getChemicalCellsName(){
- return chemicalCellsNameListHash;
- }
-
-
//以下システム関連//////////////////////////////////////////////////////
public ArrayList<Integer[]> getChemicalCombinationAmounts(){
- public ListHash<String, String> getCompoundsLang(){
- return compoundsLangListHash;
- }
-
-
-
public ListHash<String, String> getCompoundsName(){
return compoundsNameListHash;
}
+ public HashMap<ItemStack, Integer> getElectrolysisFuelList()
+ {
+ return electrolysisFuelList;
+ }
+
+
+
public HashMap<ItemStack, ItemStack[]> getElectrolysisRecipeList()
{
return electrolysisRecipeList;