1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
|
package goodgenerator.util;
import com.github.bartimaeusnek.bartworks.system.material.Werkstoff;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Utility;
public class MaterialFix {
public static void MaterialFluidExtractionFix(Werkstoff material) {
if (material.hasItemType(OrePrefixes.ingot)) {
GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.ingot), null, material.getMolten(144), 0, 32, 8);
GT_Values.RA.addFluidSolidifierRecipe(
ItemList.Shape_Mold_Ingot.get(0),
material.getMolten(144),
material.get(OrePrefixes.ingot),
32,
48);
}
if (material.hasItemType(OrePrefixes.plate)) {
GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.plate), null, material.getMolten(144), 0, 32, 8);
GT_Values.RA.addFluidSolidifierRecipe(
ItemList.Shape_Mold_Plate.get(0),
material.getMolten(144),
material.get(OrePrefixes.plate),
32,
48);
}
if (material.hasItemType(OrePrefixes.gearGtSmall)) GT_Values.RA.addFluidExtractionRecipe(
material.get(OrePrefixes.gearGtSmall),
null,
material.getMolten(144),
0,
32,
8);
if (material.hasItemType(OrePrefixes.stickLong)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.stickLong), null, material.getMolten(144), 0, 32, 8);
if (material.hasItemType(OrePrefixes.spring)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.spring), null, material.getMolten(144), 0, 32, 8);
if (material.hasItemType(OrePrefixes.stick)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.stick), null, material.getMolten(72), 0, 16, 8);
if (material.hasItemType(OrePrefixes.itemCasing)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.itemCasing), null, material.getMolten(72), 0, 16, 8);
if (material.hasItemType(OrePrefixes.wireGt01)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.wireGt01), null, material.getMolten(72), 0, 16, 8);
if (material.hasItemType(OrePrefixes.cableGt01)) GT_Values.RA.addFluidExtractionRecipe(
material.get(OrePrefixes.cableGt01),
GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Ash, 2),
material.getMolten(72),
10000,
16,
8);
if (material.hasItemType(OrePrefixes.foil)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.foil), null, material.getMolten(36), 0, 8, 8);
if (material.hasItemType(OrePrefixes.springSmall)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.springSmall), null, material.getMolten(36), 0, 8, 8);
if (material.hasItemType(OrePrefixes.ring)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.ring), null, material.getMolten(36), 0, 8, 8);
if (material.hasItemType(OrePrefixes.bolt)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.bolt), null, material.getMolten(18), 0, 4, 8);
if (material.hasItemType(OrePrefixes.wireFine)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.wireFine), null, material.getMolten(18), 0, 4, 8);
if (material.hasItemType(OrePrefixes.round)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.round), null, material.getMolten(16), 0, 4, 8);
if (material.hasItemType(OrePrefixes.screw)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.screw), null, material.getMolten(16), 0, 4, 8);
if (material.hasItemType(OrePrefixes.nugget)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.nugget), null, material.getMolten(16), 0, 4, 8);
if (material.hasItemType(OrePrefixes.rotor)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.rotor), null, material.getMolten(612), 0, 136, 8);
if (material.hasItemType(OrePrefixes.gearGt)) GT_Values.RA
.addFluidExtractionRecipe(material.get(OrePrefixes.gearGt), null, material.getMolten(576), 0, 128, 8);
}
public static void addRecipeForMultiItems() {
for (Werkstoff tMaterial : Werkstoff.werkstoffHashSet) {
if (tMaterial == null) continue;
if (tMaterial.hasItemType(OrePrefixes.plateDouble) && tMaterial.hasItemType(OrePrefixes.ingotDouble)) {
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.plate, 2),
GT_Utility.getIntegratedCircuit(2),
tMaterial.get(OrePrefixes.plateDouble, 1),
(int) Math.max(tMaterial.getStats().getMass() * 2, 1L),
60);
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.ingotDouble, 1),
GT_Utility.getIntegratedCircuit(1),
tMaterial.get(OrePrefixes.plateDouble, 1),
(int) Math.max(tMaterial.getStats().getMass(), 1L),
60);
GT_ModHandler.addCraftingRecipe(
tMaterial.get(OrePrefixes.plateDouble, 1),
new Object[] { "P", "P", "h", 'P', tMaterial.get(OrePrefixes.plate, 1) });
GT_ModHandler.addCraftingRecipe(
tMaterial.get(OrePrefixes.ingotDouble, 1),
new Object[] { "P", "P", "h", 'P', tMaterial.get(OrePrefixes.ingot, 1) });
}
if (tMaterial.hasItemType(OrePrefixes.plateTriple) && tMaterial.hasItemType(OrePrefixes.ingotTriple)) {
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.plate, 3),
GT_Utility.getIntegratedCircuit(3),
tMaterial.get(OrePrefixes.plateTriple, 1),
(int) Math.max(tMaterial.getStats().getMass() * 3, 1L),
60);
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.ingot, 3),
GT_Utility.getIntegratedCircuit(3),
tMaterial.get(OrePrefixes.plateTriple, 1),
(int) Math.max(tMaterial.getStats().getMass() * 3, 1L),
60);
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.ingotTriple, 1),
GT_Utility.getIntegratedCircuit(1),
tMaterial.get(OrePrefixes.plateTriple, 1),
(int) Math.max(tMaterial.getStats().getMass(), 1L),
60);
GT_ModHandler.addCraftingRecipe(
tMaterial.get(OrePrefixes.plateTriple, 1),
new Object[] { "B", "P", "h", 'P', tMaterial.get(OrePrefixes.plate, 1), 'B',
tMaterial.get(OrePrefixes.plateDouble, 1) });
GT_ModHandler.addCraftingRecipe(
tMaterial.get(OrePrefixes.ingotTriple, 1),
new Object[] { "B", "P", "h", 'P', tMaterial.get(OrePrefixes.ingot, 1), 'B',
tMaterial.get(OrePrefixes.ingotDouble, 1) });
}
if (tMaterial.hasItemType(OrePrefixes.plateDense)) {
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.plate, 9),
GT_Utility.getIntegratedCircuit(9),
tMaterial.get(OrePrefixes.plateDense, 1),
(int) Math.max(tMaterial.getStats().getMass() * 9, 1L),
60);
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.ingot, 9),
GT_Utility.getIntegratedCircuit(9),
tMaterial.get(OrePrefixes.plateDense, 1),
(int) Math.max(tMaterial.getStats().getMass() * 9, 1L),
60);
if (tMaterial.hasItemType(OrePrefixes.plateTriple) && tMaterial.hasItemType(OrePrefixes.ingotTriple)) {
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.plateTriple, 3),
GT_Utility.getIntegratedCircuit(3),
tMaterial.get(OrePrefixes.plateDense, 1),
(int) Math.max(tMaterial.getStats().getMass() * 3, 1L),
60);
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.ingotTriple, 3),
GT_Utility.getIntegratedCircuit(3),
tMaterial.get(OrePrefixes.plateDense, 1),
(int) Math.max(tMaterial.getStats().getMass() * 3, 1L),
60);
}
}
if (tMaterial.hasItemType(OrePrefixes.stick)) {
if (tMaterial.hasItemType(OrePrefixes.cellMolten)) {
GT_Values.RA.addFluidSolidifierRecipe(
ItemList.Shape_Mold_Rod.get(0),
tMaterial.getMolten(72),
tMaterial.get(OrePrefixes.stick, 1),
(int) Math.max(tMaterial.getStats().getMass() >> 1, 1L),
480);
}
}
if (tMaterial.hasItemType(OrePrefixes.stickLong)) {
if (tMaterial.hasItemType(OrePrefixes.cellMolten)) {
GT_Values.RA.addFluidSolidifierRecipe(
ItemList.Shape_Mold_Rod_Long.get(0),
tMaterial.getMolten(144),
tMaterial.get(OrePrefixes.stickLong, 1),
(int) Math.max(tMaterial.getStats().getMass(), 1L),
480);
}
if (tMaterial.hasItemType(OrePrefixes.stick)) {
GT_ModHandler.addCraftingRecipe(
tMaterial.get(OrePrefixes.stickLong, 1),
new Object[] { "PhP", 'P', tMaterial.get(OrePrefixes.stick, 1) });
GT_Values.RA.addForgeHammerRecipe(
tMaterial.get(OrePrefixes.stick, 2),
tMaterial.get(OrePrefixes.stickLong, 1),
(int) Math.max(tMaterial.getStats().getMass(), 1L),
16);
}
}
if (tMaterial.hasItemType(OrePrefixes.spring)) {
GT_ModHandler.addCraftingRecipe(
tMaterial.get(OrePrefixes.spring, 1),
new Object[] { " s ", "fPx", " P ", 'P', tMaterial.get(OrePrefixes.stickLong, 1) });
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.stickLong, 1),
GT_Utility.getIntegratedCircuit(1),
tMaterial.get(OrePrefixes.spring, 1),
(int) Math.max(tMaterial.getStats().getMass() * 2, 1L),
16);
}
if (tMaterial.hasItemType(OrePrefixes.springSmall)) {
GT_ModHandler.addCraftingRecipe(
tMaterial.get(OrePrefixes.springSmall, 1),
new Object[] { " s ", "fPx", 'P', tMaterial.get(OrePrefixes.stick, 1) });
GT_Values.RA.addBenderRecipe(
tMaterial.get(OrePrefixes.stick, 1),
GT_Utility.getIntegratedCircuit(1),
tMaterial.get(OrePrefixes.springSmall, 2),
(int) Math.max(tMaterial.getStats().getMass(), 1L),
16);
}
}
Materials tUHV = Materials.Longasssuperconductornameforuhvwire;
GT_Values.RA.addForgeHammerRecipe(
GT_OreDictUnificator.get(OrePrefixes.stick, tUHV, 2),
GT_OreDictUnificator.get(OrePrefixes.stickLong, tUHV, 1),
(int) Math.max(tUHV.getMass(), 1L),
16);
}
}
|