From 91e18f54e4733c695ac023d87adfcef9e8dbbb4a Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Wed, 14 Sep 2016 01:10:02 +1000 Subject: Attempting to Rewrite the entire material system for future use (Also makes life easier if I do something similar in 1.10) --- src/Java/gtPlusPlus/core/material/Material.java | 80 +++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 src/Java/gtPlusPlus/core/material/Material.java (limited to 'src/Java/gtPlusPlus/core/material/Material.java') diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java new file mode 100644 index 0000000000..4ce496bb22 --- /dev/null +++ b/src/Java/gtPlusPlus/core/material/Material.java @@ -0,0 +1,80 @@ +package gtPlusPlus.core.material; + +import gtPlusPlus.core.util.Utils; +import gtPlusPlus.core.util.item.UtilsItems; +import gtPlusPlus.core.util.math.MathUtils; +import net.minecraft.item.ItemStack; + +public class Material { + + final String unlocalizedName; + final String localizedName; + + final public MaterialStack[] materialInput = null; + + final public short[] RGBA; + + final boolean usesBlastFurnace; + + final int meltingPointK; + final int boilingPointK; + final int meltingPointC; + final int boilingPointC; + final long vProtons; + final long vNeutrons; + final long vMass; + + public Material(String materialName, short[] rgba, int meltingPoint, int boilingPoint, long protons, long neutrons, boolean blastFurnace, MaterialStack[] inputs){ + + this.unlocalizedName = Utils.sanitizeString(materialName); + this.localizedName = materialName; + this.RGBA = rgba; + this.meltingPointC = meltingPoint; + if (boilingPoint == 0){ + boilingPoint = meltingPoint*4; + } + this.boilingPointC = boilingPoint; + this.meltingPointK = (int) MathUtils.celsiusToKelvin(meltingPointC); + this.boilingPointK = (int) MathUtils.celsiusToKelvin(boilingPointC); + this.vProtons = protons; + this.vNeutrons = neutrons; + this.vMass = getMass(); + this.usesBlastFurnace = blastFurnace; + + for (int i=0; i < inputs.length; i++){ + if (inputs[i] != null){ + materialInput[i] = inputs[i]; + } + } + + } + + public long getProtons() { + return vProtons; + } + + public long getNeutrons() { + return vNeutrons; + } + + public long getMass() { + return vProtons + vNeutrons; + } + + public int getMeltingPoint_C() { + return meltingPointC; + } + + public int getBoilingPoint_C() { + return boilingPointC; + } + + public ItemStack getDust(){ + return UtilsItems.getItemStackOfAmountFromOreDictNoBroken("dust"+unlocalizedName, 1); + } + + public ItemStack[] getValidInputStacks(){ + return UtilsItems.validItemsForOreDict(unlocalizedName); + } + +} -- cgit From 9aad5dc59183de585f4e86efdf79750179ade8c7 Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Wed, 14 Sep 2016 01:45:29 +1000 Subject: Finished Material Re-write, I hope. --- src/Java/gtPlusPlus/core/material/Material.java | 36 +++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) (limited to 'src/Java/gtPlusPlus/core/material/Material.java') diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java index 4ce496bb22..ef9f3274ee 100644 --- a/src/Java/gtPlusPlus/core/material/Material.java +++ b/src/Java/gtPlusPlus/core/material/Material.java @@ -10,9 +10,9 @@ public class Material { final String unlocalizedName; final String localizedName; - final public MaterialStack[] materialInput = null; + final MaterialStack[] materialInput = null; - final public short[] RGBA; + final short[] RGBA; final boolean usesBlastFurnace; @@ -49,6 +49,18 @@ public class Material { } + public String getLocalizedName(){ + return localizedName; + } + + public String getUnlocalizedName(){ + return unlocalizedName; + } + + public short[] getRGBA(){ + return RGBA; + } + public long getProtons() { return vProtons; } @@ -68,6 +80,10 @@ public class Material { public int getBoilingPoint_C() { return boilingPointC; } + + public boolean requiresBlastFurnace(){ + return usesBlastFurnace; + } public ItemStack getDust(){ return UtilsItems.getItemStackOfAmountFromOreDictNoBroken("dust"+unlocalizedName, 1); @@ -77,4 +93,20 @@ public class Material { return UtilsItems.validItemsForOreDict(unlocalizedName); } + public ItemStack[] getMaterialComposites(){ + ItemStack[] temp = {}; + for (int i=0;i Date: Wed, 14 Sep 2016 02:00:12 +1000 Subject: Tidying Up some Materials. Making some changes to null arrays, so they no longer are. --- src/Java/gtPlusPlus/core/material/Material.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/Java/gtPlusPlus/core/material/Material.java') diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java index ef9f3274ee..0af8d91278 100644 --- a/src/Java/gtPlusPlus/core/material/Material.java +++ b/src/Java/gtPlusPlus/core/material/Material.java @@ -10,7 +10,7 @@ public class Material { final String unlocalizedName; final String localizedName; - final MaterialStack[] materialInput = null; + final MaterialStack[] materialInput = new MaterialStack[4]; final short[] RGBA; @@ -94,7 +94,7 @@ public class Material { } public ItemStack[] getMaterialComposites(){ - ItemStack[] temp = {}; + ItemStack[] temp = new ItemStack[materialInput.length]; for (int i=0;i Date: Wed, 14 Sep 2016 03:06:05 +1000 Subject: More Work clearing up Nulls. Making more things final and accessible to others. --- src/Java/gtPlusPlus/core/material/Material.java | 105 ++++++++++++++---------- 1 file changed, 61 insertions(+), 44 deletions(-) (limited to 'src/Java/gtPlusPlus/core/material/Material.java') diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java index 0af8d91278..7085ec9329 100644 --- a/src/Java/gtPlusPlus/core/material/Material.java +++ b/src/Java/gtPlusPlus/core/material/Material.java @@ -10,7 +10,7 @@ public class Material { final String unlocalizedName; final String localizedName; - final MaterialStack[] materialInput = new MaterialStack[4]; + private MaterialStack[] materialInput = new MaterialStack[4]; final short[] RGBA; @@ -41,49 +41,55 @@ public class Material { this.vMass = getMass(); this.usesBlastFurnace = blastFurnace; - for (int i=0; i < inputs.length; i++){ - if (inputs[i] != null){ - materialInput[i] = inputs[i]; + if (inputs == null){ + this.materialInput = null; + } + else { + if (inputs.length != 0){ + for (int i=0; i < inputs.length; i++){ + if (inputs[i] != null){ + this.materialInput[i] = inputs[i]; + } + } } } - } - + public String getLocalizedName(){ return localizedName; } - + public String getUnlocalizedName(){ return unlocalizedName; } - + public short[] getRGBA(){ return RGBA; } - + public long getProtons() { - return vProtons; - } - - public long getNeutrons() { - return vNeutrons; - } - - public long getMass() { - return vProtons + vNeutrons; - } - - public int getMeltingPoint_C() { - return meltingPointC; - } - - public int getBoilingPoint_C() { - return boilingPointC; - } - - public boolean requiresBlastFurnace(){ - return usesBlastFurnace; - } + return vProtons; + } + + public long getNeutrons() { + return vNeutrons; + } + + public long getMass() { + return vProtons + vNeutrons; + } + + public int getMeltingPoint_C() { + return meltingPointC; + } + + public int getBoilingPoint_C() { + return boilingPointC; + } + + public boolean requiresBlastFurnace(){ + return usesBlastFurnace; + } public ItemStack getDust(){ return UtilsItems.getItemStackOfAmountFromOreDictNoBroken("dust"+unlocalizedName, 1); @@ -92,21 +98,32 @@ public class Material { public ItemStack[] getValidInputStacks(){ return UtilsItems.validItemsForOreDict(unlocalizedName); } - + public ItemStack[] getMaterialComposites(){ - ItemStack[] temp = new ItemStack[materialInput.length]; - for (int i=0;i= 1){ + ItemStack[] temp = new ItemStack[materialInput.length]; + for (int i=0;i= 1){ + int[] temp = new int[materialInput.length]; + for (int i=0;i Date: Wed, 14 Sep 2016 04:35:19 +1000 Subject: I think only shape(less) recipes for Small/Tiny dusts & implementing recipe cost based on mass, not just what I feel like. lol --- src/Java/gtPlusPlus/core/material/Material.java | 29 ++++++++++++++++++++----- 1 file changed, 23 insertions(+), 6 deletions(-) (limited to 'src/Java/gtPlusPlus/core/material/Material.java') diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java index 7085ec9329..857e403ada 100644 --- a/src/Java/gtPlusPlus/core/material/Material.java +++ b/src/Java/gtPlusPlus/core/material/Material.java @@ -25,7 +25,7 @@ public class Material { final long vMass; public Material(String materialName, short[] rgba, int meltingPoint, int boilingPoint, long protons, long neutrons, boolean blastFurnace, MaterialStack[] inputs){ - + this.unlocalizedName = Utils.sanitizeString(materialName); this.localizedName = materialName; this.RGBA = rgba; @@ -53,6 +53,12 @@ public class Material { } } } + Utils.LOG_INFO("Creating a Material instance for "+materialName); + Utils.LOG_INFO("Protons: "+vProtons); + Utils.LOG_INFO("Neutrons: "+vNeutrons); + Utils.LOG_INFO("Mass: "+vMass+"/units"); + Utils.LOG_INFO("Melting Point: "+meltingPointC+"C."); + Utils.LOG_INFO("Boiling Point: "+boilingPointC+"C."); } public String getLocalizedName(){ @@ -91,8 +97,8 @@ public class Material { return usesBlastFurnace; } - public ItemStack getDust(){ - return UtilsItems.getItemStackOfAmountFromOreDictNoBroken("dust"+unlocalizedName, 1); + public ItemStack getDust(int stacksize){ + return UtilsItems.getItemStackOfAmountFromOreDictNoBroken("dust"+unlocalizedName, stacksize); } public ItemStack[] getValidInputStacks(){ @@ -100,15 +106,26 @@ public class Material { } public ItemStack[] getMaterialComposites(){ + //Utils.LOG_INFO("Something requested the materials needed for "+localizedName); if (materialInput != null && materialInput.length >= 1){ ItemStack[] temp = new ItemStack[materialInput.length]; for (int i=0;i Date: Wed, 14 Sep 2016 19:13:00 +1000 Subject: $ Fixed Fluids properly and finally. $ Changed Alloy Boiling points. $ Rewrote the dust recipe handlers. --- src/Java/gtPlusPlus/core/material/Material.java | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/Java/gtPlusPlus/core/material/Material.java') diff --git a/src/Java/gtPlusPlus/core/material/Material.java b/src/Java/gtPlusPlus/core/material/Material.java index 857e403ada..2939016798 100644 --- a/src/Java/gtPlusPlus/core/material/Material.java +++ b/src/Java/gtPlusPlus/core/material/Material.java @@ -100,6 +100,14 @@ public class Material { public ItemStack getDust(int stacksize){ return UtilsItems.getItemStackOfAmountFromOreDictNoBroken("dust"+unlocalizedName, stacksize); } + + public ItemStack getSmallDust(int stacksize){ + return UtilsItems.getItemStackOfAmountFromOreDictNoBroken("dustSmall"+unlocalizedName, stacksize); + } + + public ItemStack getTinyDust(int stacksize){ + return UtilsItems.getItemStackOfAmountFromOreDictNoBroken("dustTiny"+unlocalizedName, stacksize); + } public ItemStack[] getValidInputStacks(){ return UtilsItems.validItemsForOreDict(unlocalizedName); -- cgit