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
|
package miscutil.gregtech.common;
import gregtech.api.enums.Dyes;
import gregtech.api.enums.GT_Values;
import gregtech.api.objects.GT_Fluid;
import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_Utility;
import miscutil.gregtech.api.enums.GregtechOrePrefixes.GT_Materials;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidContainerRegistry;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fluids.FluidStack;
public class Meta_GT_Proxy {
public static Fluid addFluid(String aName, String aLocalized, GT_Materials aMaterial, int aState, int aTemperatureK) {
return addFluid(aName, aLocalized, aMaterial, aState, aTemperatureK, null, null, 0);
}
public static Fluid addFluid(String aName, String aLocalized, GT_Materials cryotheum, int aState, int aTemperatureK, ItemStack aFullContainer,
ItemStack aEmptyContainer, int aFluidAmount) {
return addFluid(aName, aName.toLowerCase(), aLocalized, cryotheum, null, aState, aTemperatureK, aFullContainer, aEmptyContainer, aFluidAmount);
}
public static Fluid addFluid(String aName, String aTexture, String aLocalized, GT_Materials aMaterial, short[] aRGBa, int aState, int aTemperatureK,
ItemStack aFullContainer, ItemStack aEmptyContainer, int aFluidAmount) {
aName = aName.toLowerCase();
Fluid rFluid = new GT_Fluid(aName, aTexture, aRGBa != null ? aRGBa : Dyes._NULL.getRGBA());
GT_LanguageManager.addStringLocalization(rFluid.getUnlocalizedName(), aLocalized == null ? aName : aLocalized);
if (FluidRegistry.registerFluid(rFluid)) {
switch (aState) {
case 0:
rFluid.setGaseous(false);
rFluid.setViscosity(10000);
break;
case 1:
case 4:
rFluid.setGaseous(false);
rFluid.setViscosity(1000);
break;
case 2:
rFluid.setGaseous(true);
rFluid.setDensity(-100);
rFluid.setViscosity(200);
break;
case 3:
rFluid.setGaseous(true);
rFluid.setDensity(55536);
rFluid.setViscosity(10);
rFluid.setLuminosity(15);
}
} else {
rFluid = FluidRegistry.getFluid(aName);
}
if (rFluid.getTemperature() == new Fluid("test").getTemperature()) {
rFluid.setTemperature(aTemperatureK);
}
if (aMaterial != null) {
switch (aState) {
case 0:
aMaterial.mSolid = rFluid;
break;
case 1:
aMaterial.mFluid = rFluid;
break;
case 2:
aMaterial.mGas = rFluid;
break;
case 3:
aMaterial.mPlasma = rFluid;
break;
case 4:
aMaterial.mStandardMoltenFluid = rFluid;
}
}
if ((aFullContainer != null) && (aEmptyContainer != null)
&& (!FluidContainerRegistry.registerFluidContainer(new FluidStack(rFluid, aFluidAmount), aFullContainer, aEmptyContainer))) {
GT_Values.RA.addFluidCannerRecipe(aFullContainer, GT_Utility.getContainerItem(aFullContainer, false), null, new FluidStack(rFluid, aFluidAmount));
}
return rFluid;
}
}
|