OSDN Git Service

修正・変更
[chemicraft/ChemiCraftNext.git] / common / pcc / chemicraft / base / ChemiCraftRegisterBaseRecipe.java
1 package pcc.chemicraft.base;
2
3 import net.minecraft.block.Block;
4 import net.minecraft.item.Item;
5 import net.minecraft.item.ItemStack;
6 import net.minecraftforge.oredict.OreDictionary;
7 import pcc.chemicraft.core.ChemiCraftCore;
8 import pcc.chemicraft.core.nbt.NBTRecipeGrenade;
9 import pcc.chemicraft.util.Formula;
10
11 /**
12  * レシピを追加します
13  * @author mozipi,ponkotate
14  */
15 public class ChemiCraftRegisterBaseRecipe extends ChemiCraftBaseRegister {
16
17         public ChemiCraftRegisterBaseRecipe(ChemiCraftBase mod) {
18                 super(mod);
19         }
20
21         @Override
22         public void start() {
23                 //化合物のレシピ
24                 this.mod.api.addChemicalCombinationRecipe(
25                                 new ItemStack(ChemiCraftCore.instance.itemCompounds, 1, this.mod.api.getCompound("SodiumChloride")),
26                                 new Formula("NaOH"));
27
28                 this.mod.api.addChemicalCombinationRecipe(
29                                 new ItemStack(ChemiCraftCore.instance.itemCompounds, 1, this.mod.api.getCompound("ChlorousAcid")),
30                                 new Formula("HO2Cl"));
31
32                 //既存物のレシピ
33                 this.mod.api.addChemicalCombinationRecipe(new ItemStack(Item.diamond),
34                                 new Formula("C64Si16"));
35
36                 this.mod.api.addChemicalCombinationRecipe(new ItemStack(Item.sugar),
37                                 new Formula("C12H22O11"));
38
39                 this.mod.api.addElectrolysisDecompositionRecipe(new ItemStack(Item.bucketWater),
40                                 new Formula("H2O"));
41
42                 this.mod.api.addElectrolysisDecompositionRecipe(new ItemStack(Item.potion, 1, 0),
43                                 new Formula("H2O"));
44
45                 this.mod.api.addPyrolysisDecompositionRecipe(new ItemStack(Block.oreCoal),
46                                 new Formula("C"));
47
48                 this.mod.api.addPyrolysisDecompositionRecipe(new ItemStack(Item.coal),
49                                 new Formula("C"));
50
51                 this.mod.api.addReversibleOfElectrolysis(new ItemStack(Block.wood),
52                                 new Formula("C6H10O5"));
53
54                 this.mod.api.addReversibleOfPyrolysis(new ItemStack(Block.dirt),
55                                 new Formula("SiI2O2"));
56
57                 this.mod.api.addReversibleOfPyrolysis(new ItemStack(Block.glass),
58                                 new Formula("SiCO2"));
59
60                 this.mod.api.addReversibleOfPyrolysis(new ItemStack(Block.stone),
61                                 new Formula("SiO2"));
62
63                 this.mod.api.addReversibleOfPyrolysis(new ItemStack(Block.tnt),
64                                 new Formula("C7H5N3O6"));
65
66                 this.mod.api.addReversibleOfPyrolysis(new ItemStack(Item.emerald),
67                                 new Formula("Be3Al2Si6O18"));
68
69
70                 //他MOD使用時のレシピ
71                 //RP2-------------------------------------------------------------------------------------------------------------
72                 this.mod.api.addPyrolysisDecompositionRecipe(
73                                 OreDictionary.getOres("oreCopper"), new Formula("Cu"));
74                 //------------------------------------------------------------------------------------------------------------------
75
76                 //素材制作台のレシピ
77                 this.mod.api.addMaterialRecipe(
78                                 new ItemStack[] {
79                                                 null,
80                                                 new ItemStack(Block.stone),
81                                                 null,
82                                                 new ItemStack(Block.stone),
83                                                 new ItemStack(Item.gunpowder),
84                                                 new ItemStack(Block.stone),
85                                                 null,
86                                                 new ItemStack(Block.stone),
87                                                 null
88                                 },
89                                 new ItemStack(this.mod.itemAtomGrenade, 16, 0),
90                                 new NBTRecipeGrenade());
91
92                 this.mod.api.addSharplessMaterialRecipe(
93                                 new ItemStack[] {
94                                                 new ItemStack(this.mod.itemAtomGrenade, 1, 0),
95                                 },
96                                 new ItemStack(this.mod.itemAtomGrenade, 1, 0),
97                                 new NBTRecipeGrenade()
98                                 );
99
100                 //分解台のレシピ
101                 this.mod.api.addElectrolysisDecompositionRecipe(
102                                 new ItemStack(ChemiCraftCore.instance.itemCompounds, 1, this.mod.api.getCompound("Water")),
103                                 new Formula("H2O"));
104
105                 //鉱石分解の追加
106                 for (int i = 0; i < this.mod.apiBase.getAtomOresAtomName().size(); i++) {
107                         this.mod.api.addPyrolysisDecompositionRecipe(
108                                         new ItemStack(this.mod.blockAtomOres[i / 16], 1, i - i / 16 * 16),
109                                         this.mod.apiBase.getAtomOresFormulas().get(this.mod.apiBase.getAtomOresAtomName().get(i)));
110                 }
111         }
112
113 }