aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/enums/Dyes.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/enums/Dyes.java')
-rw-r--r--src/main/java/gregtech/api/enums/Dyes.java195
1 files changed, 100 insertions, 95 deletions
diff --git a/src/main/java/gregtech/api/enums/Dyes.java b/src/main/java/gregtech/api/enums/Dyes.java
index e37648dbef..66c3927783 100644
--- a/src/main/java/gregtech/api/enums/Dyes.java
+++ b/src/main/java/gregtech/api/enums/Dyes.java
@@ -3,103 +3,108 @@ package gregtech.api.enums;
import gregtech.api.interfaces.IColorModulationContainer;
import gregtech.api.objects.GT_ArrayList;
import gregtech.api.util.GT_Utility;
-
-import java.util.ArrayList;
-
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidStack;
+import java.util.ArrayList;
+
public enum Dyes implements IColorModulationContainer {
- /** The valid Colors, see VALUES Array below */
- dyeBlack ( 0, 32, 32, 32, "Black"),
- dyeRed ( 1, 255, 0, 0, "Red"),
- dyeGreen ( 2, 0, 255, 0, "Green"),
- dyeBrown ( 3, 96, 64, 0, "Brown"),
- dyeBlue ( 4, 0, 0, 255, "Blue"),
- dyePurple ( 5, 128, 0, 128, "Purple"),
- dyeCyan ( 6, 0, 255, 255, "Cyan"),
- dyeLightGray ( 7, 192, 192, 192, "Light Gray"),
- dyeGray ( 8, 128, 128, 128, "Gray"),
- dyePink ( 9, 255, 192, 192, "Pink"),
- dyeLime (10, 128, 255, 128, "Lime"),
- dyeYellow (11, 255, 255, 0, "Yellow"),
- dyeLightBlue (12, 128, 128, 255, "Light Blue"),
- dyeMagenta (13, 255, 0, 255, "Magenta"),
- dyeOrange (14, 255, 128, 0, "Orange"),
- dyeWhite (15, 255, 255, 255, "White"),
- /** The NULL Color */
- _NULL (-1, 255, 255, 255, "INVALID COLOR"),
- /** Additional Colors only used for direct Color referencing */
- CABLE_INSULATION (-1, 64, 64, 64, "Cable Insulation"),
- CONSTRUCTION_FOAM (-1, 64, 64, 64, "Construction Foam"),
- MACHINE_METAL (-1, 220, 220, 255, "Machine Metal");
-
- public static final Dyes VALUES[] = {dyeBlack, dyeRed, dyeGreen, dyeBrown, dyeBlue, dyePurple, dyeCyan, dyeLightGray, dyeGray, dyePink, dyeLime, dyeYellow, dyeLightBlue, dyeMagenta, dyeOrange, dyeWhite};
-
- public final byte mIndex;
- public final String mName;
- public final short[] mRGBa;
- private final ArrayList<Fluid> mFluidDyes = new GT_ArrayList<Fluid>(false, 1);
-
- private Dyes(int aIndex, int aR, int aG, int aB, String aName) {
- mIndex = (byte)aIndex;
- mName = aName;
- mRGBa = new short[] {(short)aR, (short)aG, (short)aB, 0};
- }
-
- public static Dyes get(int aColor) {
- if (aColor >= 0 && aColor < 16) return VALUES[aColor];
- return _NULL;
- }
-
- public static short[] getModulation(int aColor, short[] aDefaultModulation) {
- if (aColor >= 0 && aColor < 16) return VALUES[aColor].mRGBa;
- return aDefaultModulation;
- }
-
- public static Dyes get(String aColor) {
- Object tObject = GT_Utility.getFieldContent(Dyes.class, aColor, false, false);
- if (tObject != null && tObject instanceof Dyes) return (Dyes)tObject;
- return _NULL;
- }
-
- public static boolean isAnyFluidDye(FluidStack aFluid) {
- return aFluid != null && isAnyFluidDye(aFluid.getFluid());
- }
-
- public static boolean isAnyFluidDye(Fluid aFluid) {
- if (aFluid != null) for (Dyes tDye : VALUES) if (tDye.isFluidDye(aFluid)) return true;
- return false;
- }
-
- public boolean isFluidDye(FluidStack aFluid) {
- return aFluid != null && isFluidDye(aFluid.getFluid());
- }
-
- public boolean isFluidDye(Fluid aFluid) {
- return aFluid != null && mFluidDyes.contains(aFluid);
- }
-
- public boolean addFluidDye(Fluid aDye) {
- if (aDye == null || mFluidDyes.contains(aDye)) return false;
- mFluidDyes.add(aDye);
- return true;
- }
-
- public int getSizeOfFluidList() {
- return mFluidDyes.size();
- }
-
- /**
- * @param aAmount 1 Fluid Material Unit (144) = 1 Dye Item
- */
- public FluidStack getFluidDye(int aIndex, long aAmount) {
- if (aIndex >= mFluidDyes.size() || aIndex < 0) return null;
- return new FluidStack(mFluidDyes.get(aIndex), (int)aAmount);
- }
-
- @Override
- public short[] getRGBA() {
- return mRGBa;
- }
+ /**
+ * The valid Colors, see VALUES Array below
+ */
+ dyeBlack(0, 32, 32, 32, "Black"),
+ dyeRed(1, 255, 0, 0, "Red"),
+ dyeGreen(2, 0, 255, 0, "Green"),
+ dyeBrown(3, 96, 64, 0, "Brown"),
+ dyeBlue(4, 0, 0, 255, "Blue"),
+ dyePurple(5, 128, 0, 128, "Purple"),
+ dyeCyan(6, 0, 255, 255, "Cyan"),
+ dyeLightGray(7, 192, 192, 192, "Light Gray"),
+ dyeGray(8, 128, 128, 128, "Gray"),
+ dyePink(9, 255, 192, 192, "Pink"),
+ dyeLime(10, 128, 255, 128, "Lime"),
+ dyeYellow(11, 255, 255, 0, "Yellow"),
+ dyeLightBlue(12, 128, 128, 255, "Light Blue"),
+ dyeMagenta(13, 255, 0, 255, "Magenta"),
+ dyeOrange(14, 255, 128, 0, "Orange"),
+ dyeWhite(15, 255, 255, 255, "White"),
+ /**
+ * The NULL Color
+ */
+ _NULL(-1, 255, 255, 255, "INVALID COLOR"),
+ /**
+ * Additional Colors only used for direct Color referencing
+ */
+ CABLE_INSULATION(-1, 64, 64, 64, "Cable Insulation"),
+ CONSTRUCTION_FOAM(-1, 64, 64, 64, "Construction Foam"),
+ MACHINE_METAL(-1, 220, 220, 255, "Machine Metal");
+
+ public static final Dyes VALUES[] = {dyeBlack, dyeRed, dyeGreen, dyeBrown, dyeBlue, dyePurple, dyeCyan, dyeLightGray, dyeGray, dyePink, dyeLime, dyeYellow, dyeLightBlue, dyeMagenta, dyeOrange, dyeWhite};
+
+ public final byte mIndex;
+ public final String mName;
+ public final short[] mRGBa;
+ private final ArrayList<Fluid> mFluidDyes = new GT_ArrayList<Fluid>(false, 1);
+
+ private Dyes(int aIndex, int aR, int aG, int aB, String aName) {
+ mIndex = (byte) aIndex;
+ mName = aName;
+ mRGBa = new short[]{(short) aR, (short) aG, (short) aB, 0};
+ }
+
+ public static Dyes get(int aColor) {
+ if (aColor >= 0 && aColor < 16) return VALUES[aColor];
+ return _NULL;
+ }
+
+ public static short[] getModulation(int aColor, short[] aDefaultModulation) {
+ if (aColor >= 0 && aColor < 16) return VALUES[aColor].mRGBa;
+ return aDefaultModulation;
+ }
+
+ public static Dyes get(String aColor) {
+ Object tObject = GT_Utility.getFieldContent(Dyes.class, aColor, false, false);
+ if (tObject != null && tObject instanceof Dyes) return (Dyes) tObject;
+ return _NULL;
+ }
+
+ public static boolean isAnyFluidDye(FluidStack aFluid) {
+ return aFluid != null && isAnyFluidDye(aFluid.getFluid());
+ }
+
+ public static boolean isAnyFluidDye(Fluid aFluid) {
+ if (aFluid != null) for (Dyes tDye : VALUES) if (tDye.isFluidDye(aFluid)) return true;
+ return false;
+ }
+
+ public boolean isFluidDye(FluidStack aFluid) {
+ return aFluid != null && isFluidDye(aFluid.getFluid());
+ }
+
+ public boolean isFluidDye(Fluid aFluid) {
+ return aFluid != null && mFluidDyes.contains(aFluid);
+ }
+
+ public boolean addFluidDye(Fluid aDye) {
+ if (aDye == null || mFluidDyes.contains(aDye)) return false;
+ mFluidDyes.add(aDye);
+ return true;
+ }
+
+ public int getSizeOfFluidList() {
+ return mFluidDyes.size();
+ }
+
+ /**
+ * @param aAmount 1 Fluid Material Unit (144) = 1 Dye Item
+ */
+ public FluidStack getFluidDye(int aIndex, long aAmount) {
+ if (aIndex >= mFluidDyes.size() || aIndex < 0) return null;
+ return new FluidStack(mFluidDyes.get(aIndex), (int) aAmount);
+ }
+
+ @Override
+ public short[] getRGBA() {
+ return mRGBa;
+ }
} \ No newline at end of file