aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTING.md49
-rw-r--r--misc/vector/item_distributor.svg231
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java9
-rw-r--r--src/main/java/gregtech/api/util/GT_Utility.java13
-rw-r--r--src/main/java/gregtech/common/blocks/GT_Block_Casings1.java19
-rw-r--r--src/main/java/gregtech/common/blocks/GT_Block_Casings2.java12
-rw-r--r--src/main/java/gregtech/common/blocks/GT_Block_Casings5.java4
-rw-r--r--src/main/java/gregtech/common/blocks/GT_Block_Casings8.java4
-rw-r--r--src/main/java/gregtech/common/items/armor/components/ArmorComponent.java53
-rw-r--r--src/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java2
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java8
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java16
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingCircuit.java2
-rw-r--r--src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java8
-rw-r--r--src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java4
15 files changed, 157 insertions, 277 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000000..f679a567fd
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,49 @@
+# Contributing
+
+When contributing to this repository, please first discuss the change you wish to make via our public Discord channel if possible.
+Be sure to consult the correct channel and dev, use #gregtech5 for GT5u and gregtech5-12 for GT 5.10/5.12 development.
+
+Please note we have a level of quality to maintain, please follow the guidelines in all your interactions within the project.
+
+## Issue Creation Process
+
+1. Try and see if the issue already has a pre-existing issue open.
+2. Provide the version of GT you are using and the version of IC2. Providing a full modlist helps.
+3. Try to explain the issue in details and include any aditional info if possible. Screenshots, Video or a way to reproduce the issue.
+* Failing to provide all of the above details can result in an issue being closed without action.
+
+## Pull Request Process
+
+1. Ensure any new build dependencies are noted within the PR details and why it's a valid requirement.
+2. Try ensure that the build works successfully and attempt to test it yourself thoroughly.
+3. You will have the Pull Request merged in once you have the sign-off of tone other developer & @Blood-Asp, also whenever @Blood-Asp finds time.
+
+## Standard of Quality
+
+### Our Goal
+
+In the interest of fostering an open project environment, we as
+contributors and maintainers try to make participation in our project and
+our community a hassle-free experience wherever possible..
+
+### Our Standards
+
+Practices that contribute to creating a positive environment
+include:
+
+* Follow the codestyle used through most of the project
+* Being respectful of differing viewpoints on the PR
+* Gracefully accepting constructive criticism
+* Focusing on what is best for the community
+* Try to document your code as you go for future readability.
+
+Practies we'd like to avoid include:
+
+* Leaving large code comment segments commented out without any comments.
+* Making large changes to pre-existing content without large community consultation beforehand. (Provided that the code changed won't continue to be backcompatible for addons.)
+
+### Our Responsibilities
+
+Project maintainers have the right and responsibility to remove, edit, or
+reject comments, commits, code, issues, and other contributions
+that are not aligned to this Code of Conduct. \ No newline at end of file
diff --git a/misc/vector/item_distributor.svg b/misc/vector/item_distributor.svg
deleted file mode 100644
index a8aeac2efd..0000000000
--- a/misc/vector/item_distributor.svg
+++ /dev/null
@@ -1,231 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="640"
- height="640"
- viewBox="0 0 169.33333 169.33334"
- version="1.1"
- id="svg8"
- inkscape:version="0.92.1 r15371"
- sodipodi:docname="item_distributor.svg"
- inkscape:export-filename="./AUTOMATION_ITEMDISTRIBUTOR.png"
- inkscape:export-xdpi="2.4000001"
- inkscape:export-ydpi="2.4000001">
- <defs
- id="defs2">
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4567">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop4563" />
- <stop
- id="stop4571"
- offset="0.5"
- style="stop-color:#a05a2c;stop-opacity:1" />
- <stop
- style="stop-color:#000000;stop-opacity:1"
- offset="1"
- id="stop4565" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4567"
- id="linearGradient4569"
- x1="-169.33333"
- y1="-41.666683"
- x2="338.66666"
- y2="466.33331"
- gradientUnits="userSpaceOnUse" />
- </defs>
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="0.7"
- inkscape:cx="-296.2953"
- inkscape:cy="383.54174"
- inkscape:document-units="mm"
- inkscape:current-layer="layer1"
- showgrid="false"
- units="px"
- inkscape:window-width="1920"
- inkscape:window-height="1017"
- inkscape:window-x="-8"
- inkscape:window-y="-8"
- inkscape:window-maximized="1">
- <inkscape:grid
- type="xygrid"
- id="grid4485" />
- </sodipodi:namedview>
- <metadata
- id="metadata5">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title />
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- inkscape:label="Layer 1"
- inkscape:groupmode="layer"
- id="layer1"
- transform="translate(0,-127.66665)">
- <image
- y="117.08331"
- x="-243.41666"
- id="image4495"
- xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI WXMAAAsSAAALEgHS3X78AAAAB3RJTUUH3gQWES0RM2zKJgAAAJ1JREFUOMvtk1EKglAURMdoV9ra UnIptoFoc84ZsA+NVCKFPvrpwuU9Lsy5wzxeMQyDvqmDvqzfA47rQddda7Bsy1iY8W7LRm17qT8C jHW/3c6ASJREgEJUnspm00FskaWYIIhstjPobcFSHKIEgbczAGbiKM4EQfQ7ALYnyLiZ2WnY4cBP B1PnBbH3OMCqqlODe/WrZ+RNiMX/L+gBEUbAGtDL/toAAAAASUVORK5CYII= "
- style="image-rendering:optimizeSpeed"
- preserveAspectRatio="none"
- height="169.33333"
- width="169.33333" />
- <g
- id="g4596"
- style="stroke:none;fill-opacity:1;fill:url(#linearGradient4569)">
- <rect
- y="138.24998"
- x="10.583333"
- height="10.583333"
- width="148.16667"
- id="rect4498"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)"
- id="rect4500"
- width="148.16667"
- height="10.583333"
- x="10.583333"
- y="275.83331" />
- <rect
- y="148.83331"
- x="148.16667"
- height="127"
- width="10.583333"
- id="rect4502"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="148.83331"
- x="10.583333"
- height="127"
- width="10.583333"
- id="rect4504"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="159.41666"
- x="95.25"
- height="21.166666"
- width="10.583333"
- id="rect4506"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="148.83331"
- x="105.83333"
- height="21.166666"
- width="10.583333"
- id="rect4508"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="148.83331"
- x="63.499996"
- height="31.75"
- width="10.583333"
- id="rect4510"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="180.58331"
- x="21.166666"
- height="10.583333"
- width="31.75"
- id="rect4512"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="191.16666"
- x="42.333332"
- height="10.583333"
- width="10.583333"
- id="rect4514"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="212.33331"
- x="31.75"
- height="10.583333"
- width="21.166666"
- id="rect4518"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="244.08331"
- x="95.25"
- height="31.75"
- width="10.583333"
- id="rect4520"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="191.16666"
- x="116.41666"
- height="10.583333"
- width="21.166666"
- id="rect4526"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="180.58331"
- x="127"
- height="10.583333"
- width="21.166666"
- id="rect4528"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="222.91664"
- x="21.166666"
- height="10.583333"
- width="21.166666"
- id="rect4568"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="244.08333"
- x="63.5"
- height="21.166666"
- width="10.583333"
- id="rect4570"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="254.66666"
- x="52.916664"
- height="21.166666"
- width="10.583333"
- id="rect4572"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="222.91664"
- x="116.41666"
- height="10.583333"
- width="21.166666"
- id="rect4574"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- <rect
- y="233.49998"
- x="127"
- height="10.583333"
- width="21.166666"
- id="rect4576"
- style="opacity:1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26458332;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.58749988, 1.58749988000000000;stroke-dashoffset:0;stroke-opacity:1;fill:url(#linearGradient4569)" />
- </g>
- </g>
-</svg>
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java
index fe21e8a3c2..d57aff8fc9 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch.java
@@ -1,6 +1,5 @@
package gregtech.api.metatileentity.implementations;
-import gregtech.GT_Mod;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
@@ -77,6 +76,14 @@ public abstract class GT_MetaTileEntity_Hatch extends GT_MetaTileEntity_BasicTan
mMachineBlock=actualTexture;
}
+ /**
+ *
+ * @param textureIndex
+ * Index between 0-127.
+ * Add 128 per page, if texture index is not on first page.
+ *
+ */
+
public final void updateTexture(int textureIndex){
onValueUpdate((byte) textureIndex);
onTexturePageUpdate((byte) (textureIndex>>7));
diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java
index fb89cbba8b..f102cc4246 100644
--- a/src/main/java/gregtech/api/util/GT_Utility.java
+++ b/src/main/java/gregtech/api/util/GT_Utility.java
@@ -8,9 +8,11 @@ import gregtech.api.enchants.Enchantment_Radioactivity;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.SubTag;
+import gregtech.api.enums.Textures;
import gregtech.api.events.BlockScanningEvent;
import gregtech.api.interfaces.IDebugableBlock;
import gregtech.api.interfaces.IProjectileItem;
+import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.*;
import gregtech.api.items.GT_EnergyArmor_Item;
import gregtech.api.items.GT_Generic_Item;
@@ -1115,6 +1117,17 @@ public class GT_Utility {
aInventory.setInventorySlotContents(i, null);
}
}
+
+ /**
+ * Initializes a new texture page.
+ */
+ public static boolean addTexturePage(byte page){
+ if(Textures.BlockIcons.casingTexturePages[page]==null){
+ Textures.BlockIcons.casingTexturePages[page]=new ITexture[128];
+ return true;
+ }
+ return false;
+ }
/**
* Converts a Number to a String
diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Casings1.java b/src/main/java/gregtech/common/blocks/GT_Block_Casings1.java
index 08f7118f66..965c4bffab 100644
--- a/src/main/java/gregtech/common/blocks/GT_Block_Casings1.java
+++ b/src/main/java/gregtech/common/blocks/GT_Block_Casings1.java
@@ -11,12 +11,27 @@ import net.minecraft.world.IBlockAccess;
public class GT_Block_Casings1
extends GT_Block_Casings_Abstract {
+
+ /**
+ * Texture Index Information
+ * Textures.BlockIcons.casingTexturePages[0][0-63] - Gregtech
+ * Textures.BlockIcons.casingTexturePages[0][64-127] - GT++
+ * Textures.BlockIcons.casingTexturePages[1][0-127] - Gregtech
+ * Textures.BlockIcons.casingTexturePages[2][0-127] - Free
+ * Textures.BlockIcons.casingTexturePages[3][0-127] - Free
+ * Textures.BlockIcons.casingTexturePages[4][0-127] - Free
+ * Textures.BlockIcons.casingTexturePages[5][0-127] - Free
+ * Textures.BlockIcons.casingTexturePages[6][0-127] - Free
+ * Textures.BlockIcons.casingTexturePages[7][0-127] - Free
+ * Textures.BlockIcons.casingTexturePages[8][0-127] - TecTech
+ */
+
+
public GT_Block_Casings1() {
super(GT_Item_Casings1.class, "gt.blockcasings", GT_Material_Casings.INSTANCE);
- for (byte i = 0; i < 16; i = (byte) (i + 1)) {
+ for (byte i = 0; i < 16; i = (byte) (i + 1)) {
Textures.BlockIcons.CASING_BLOCKS[i] = new GT_CopiedBlockTexture(this, 6, i);
}
- Textures.BlockIcons.CASING_BLOCKS[111] = new GT_CopiedBlockTexture(this, 6, 0,Dyes.MACHINE_METAL.mRGBa);
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "ULV Machine Casing");
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "LV Machine Casing");
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".2.name", "MV Machine Casing");
diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Casings2.java b/src/main/java/gregtech/common/blocks/GT_Block_Casings2.java
index 83ffddd47a..f8f54f9604 100644
--- a/src/main/java/gregtech/common/blocks/GT_Block_Casings2.java
+++ b/src/main/java/gregtech/common/blocks/GT_Block_Casings2.java
@@ -1,9 +1,11 @@
package gregtech.common.blocks;
+import gregtech.api.enums.Dyes;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Textures;
import gregtech.api.objects.GT_CopiedBlockTexture;
import gregtech.api.util.GT_LanguageManager;
+import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
@@ -15,8 +17,11 @@ public class GT_Block_Casings2
public GT_Block_Casings2() {
super(GT_Item_Casings2.class, "gt.blockcasings2", GT_Material_Casings.INSTANCE);
for (byte i = 0; i < 16; i = (byte) (i + 1)) {
- Textures.BlockIcons.CASING_BLOCKS[(i + 16)] = new GT_CopiedBlockTexture(this, 6, i);
- }
+ if (i != 6){
+ Textures.BlockIcons.CASING_BLOCKS[(i + 16)] = new GT_CopiedBlockTexture(this, 6, i);
+ }
+ }
+
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "Solid Steel Machine Casing");
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "Frost Proof Machine Casing");
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".2.name", "Bronze Gear Box Casing");
@@ -49,6 +54,9 @@ public class GT_Block_Casings2
ItemList.Casing_Pipe_Steel.set(new ItemStack(this, 1, 13));
ItemList.Casing_Pipe_Titanium.set(new ItemStack(this, 1, 14));
ItemList.Casing_Pipe_TungstenSteel.set(new ItemStack(this, 1, 15));
+
+ //Special handler for Pyrolyse Oven Casing
+ Textures.BlockIcons.CASING_BLOCKS[22] = new GT_CopiedBlockTexture(Block.getBlockFromItem(ItemList.Casing_ULV.get(1).getItem()), 6, 0,Dyes.MACHINE_METAL.mRGBa);
}
public IIcon getIcon(int aSide, int aMeta) {
diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Casings5.java b/src/main/java/gregtech/common/blocks/GT_Block_Casings5.java
index d6c5bfebc9..e97228f5fe 100644
--- a/src/main/java/gregtech/common/blocks/GT_Block_Casings5.java
+++ b/src/main/java/gregtech/common/blocks/GT_Block_Casings5.java
@@ -6,6 +6,7 @@ import gregtech.api.enums.ItemList;
import gregtech.api.enums.Textures;
import gregtech.api.objects.GT_CopiedBlockTexture;
import gregtech.api.util.GT_LanguageManager;
+import gregtech.api.util.GT_Utility;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
@@ -13,8 +14,9 @@ public class GT_Block_Casings5
extends GT_Block_Casings_Abstract {
public GT_Block_Casings5() {
super(GT_Item_Casings5.class, "gt.blockcasings5", GT_Material_Casings.INSTANCE);
+ GT_Utility.addTexturePage((byte) 1);
for (byte i = 0; i < 16; i = (byte) (i + 1)) {
- Textures.BlockIcons.CASING_BLOCKS[(i + 64)] = new GT_CopiedBlockTexture(this, 6, i);
+ Textures.BlockIcons.casingTexturePages[1][i] = new GT_CopiedBlockTexture(this, 6, i);
}
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "Cupronickel Coil Block");
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "Kanthal Coil Block");
diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Casings8.java b/src/main/java/gregtech/common/blocks/GT_Block_Casings8.java
index b085bbe6a3..84dbb80c02 100644
--- a/src/main/java/gregtech/common/blocks/GT_Block_Casings8.java
+++ b/src/main/java/gregtech/common/blocks/GT_Block_Casings8.java
@@ -13,8 +13,8 @@ public class GT_Block_Casings8
extends GT_Block_Casings_Abstract {
public GT_Block_Casings8() {
super(GT_Item_Casings8.class, "gt.blockcasings8", GT_Material_Casings.INSTANCE);
- for (int i = 0; i < 16; i = (i + 1)) {
- Textures.BlockIcons.CASING_BLOCKS[(i + 112)] = new GT_CopiedBlockTexture(this, 6, i);
+ for (int i = 0; i < 1; i = (i + 1)) {
+ Textures.BlockIcons.casingTexturePages[1][i+48] = new GT_CopiedBlockTexture(this, 6, i);
}
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "Chemically Inert Machine Casing");
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "PTFE Pipe Casing");
diff --git a/src/main/java/gregtech/common/items/armor/components/ArmorComponent.java b/src/main/java/gregtech/common/items/armor/components/ArmorComponent.java
index ea2f0184dd..3dfcdd17fb 100644
--- a/src/main/java/gregtech/common/items/armor/components/ArmorComponent.java
+++ b/src/main/java/gregtech/common/items/armor/components/ArmorComponent.java
@@ -2,6 +2,7 @@ package gregtech.common.items.armor.components;
import cpw.mods.fml.common.registry.GameRegistry;
import gregtech.api.GregTech_API;
+import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_Utility;
import gregtech.common.items.armor.ArmorData;
import net.minecraft.item.ItemStack;
@@ -18,27 +19,37 @@ public abstract class ArmorComponent implements IArmorComponent {
public static Map<String, ArmorComponent> mStacks = new HashMap<String, ArmorComponent>();
public Map<StatType,Float> mStat = new HashMap<StatType,Float>();
public Map<StatType,Boolean> mBStat = new HashMap<StatType,Boolean>();
-
+
public ArmorComponent(String aName, String aOreDict, boolean aElectric, float aWeight){
- mConfigName = aName;
- if(!GregTech_API.sModularArmor.get( mConfigName, "Enabled", true))return;
- mOreDict = GregTech_API.sModularArmor.get( mConfigName, "OreDict", aOreDict);
- mBStat.put(StatType.ELECTRIC, aElectric);
- mOreDicts.put(aOreDict, this);
- for(ItemStack tStack : OreDictionary.getOres(aOreDict))if(tStack!=null)mStacks.put(tStack.getUnlocalizedName(), this);
- mStat.put(StatType.WEIGHT, (float) GregTech_API.sModularArmor.get( mConfigName, "Weight", aWeight));
+ try {
+ mConfigName = aName;
+ if(!GregTech_API.sModularArmor.get( mConfigName, "Enabled", true))return;
+ mOreDict = GregTech_API.sModularArmor.get( mConfigName, "OreDict", aOreDict);
+ mBStat.put(StatType.ELECTRIC, aElectric);
+ mOreDicts.put(aOreDict, this);
+ for(ItemStack tStack : OreDictionary.getOres(aOreDict))if(tStack!=null)mStacks.put(tStack.getUnlocalizedName(), this);
+ mStat.put(StatType.WEIGHT, (float) GregTech_API.sModularArmor.get( mConfigName, "Weight", aWeight));
+ }
+ catch (Throwable t){
+ GT_Log.out.println("Tried adding "+aName+" as a modular armour component, however it failed.");
+ }
}
-
+
public ArmorComponent(String aName, ItemStack aStack, boolean aElectric, float aWeight){
- mConfigName = aName;
- String tStackName = GregTech_API.sModularArmor.get( mConfigName, "Stack", GameRegistry.findUniqueIdentifierFor(aStack.getItem()).toString()+(aStack.getItemDamage()==0 ? "" : ":"+aStack.getItemDamage()));
- mStack = GameRegistry.findItemStack(tStackName.split(":")[0], tStackName.split(":")[1], 1);
- if(tStackName.split(":").length>2)mStack.setItemDamage(Integer.parseInt(tStackName.split(":")[2]));
- if(!GregTech_API.sModularArmor.get( mConfigName, "Enabled", true))return;
- mStack = aStack;
- mBStat.put(StatType.ELECTRIC, aElectric);
- mStacks.put(aStack.getUnlocalizedName(), this);
- mStat.put(StatType.WEIGHT, (float) GregTech_API.sModularArmor.get( mConfigName, "Weight", aWeight));
+ try {
+ mConfigName = aName;
+ String tStackName = GregTech_API.sModularArmor.get( mConfigName, "Stack", GameRegistry.findUniqueIdentifierFor(aStack.getItem()).toString()+(aStack.getItemDamage()==0 ? "" : ":"+aStack.getItemDamage()));
+ mStack = GameRegistry.findItemStack(tStackName.split(":")[0], tStackName.split(":")[1], 1);
+ if(tStackName.split(":").length>2)mStack.setItemDamage(Integer.parseInt(tStackName.split(":")[2]));
+ if(!GregTech_API.sModularArmor.get( mConfigName, "Enabled", true))return;
+ mStack = aStack;
+ mBStat.put(StatType.ELECTRIC, aElectric);
+ mStacks.put(aStack.getUnlocalizedName(), this);
+ mStat.put(StatType.WEIGHT, (float) GregTech_API.sModularArmor.get( mConfigName, "Weight", aWeight));
+ }
+ catch (Throwable t){
+ GT_Log.out.println("Tried adding "+aName+" as a modular armour component, however it failed.");
+ }
}
@Override
@@ -49,12 +60,12 @@ public abstract class ArmorComponent implements IArmorComponent {
if(GT_Utility.areStacksEqual(tStack, aStack, true))return true;}
return false;
}
-
+
public void addVal(StatType aType, ArmorData aArmorData){
float tArmorDef = 0.0f;
if(aArmorData.mStat.containsKey(aType)){
- tArmorDef = aArmorData.mStat.get(aType);
- aArmorData.mStat.remove(aType);}
+ tArmorDef = aArmorData.mStat.get(aType);
+ aArmorData.mStat.remove(aType);}
aArmorData.mStat.put(aType, tArmorDef + mStat.get(aType));
}
diff --git a/src/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java b/src/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java
index 90d882f048..f6a74020ae 100644
--- a/src/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java
+++ b/src/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Item.java
@@ -34,7 +34,7 @@ public class Behaviour_Plunger_Item
if ((aTileEntity instanceof IGregTechTileEntity)) {
IMetaTileEntity tMetaTileEntity = ((IGregTechTileEntity) aTileEntity).getMetaTileEntity();
if ((tMetaTileEntity instanceof IMetaTileEntityItemPipe)) {
- for (Object tTileEntity : GT_Utility.sortMapByValuesAcending(IMetaTileEntityItemPipe.Util.scanPipes((IMetaTileEntityItemPipe) tMetaTileEntity, new ConcurrentHashMap(), 0L, false, true)).keySet())
+ for (Object tTileEntity : GT_Utility.sortMapByValuesAcending(IMetaTileEntityItemPipe.Util.scanPipes((IMetaTileEntityItemPipe) tMetaTileEntity, new ConcurrentHashMap<IMetaTileEntityItemPipe,Long>(), 0L, false, true)).keySet())
{
int i = 0;
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java
index 52120d2e90..393aeeff70 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java
@@ -20,8 +20,8 @@ import java.util.ArrayList;
public class GT_MetaTileEntity_LargeChemicalReactor extends GT_MetaTileEntity_MultiBlockBase {
- private static final int CASING_INDEX = 112;
-
+ private final int CASING_INDEX = 176;
+
public GT_MetaTileEntity_LargeChemicalReactor(int aID, String aName, String aNameRegional) {
super(aID, aName, aNameRegional);
}
@@ -58,11 +58,11 @@ public class GT_MetaTileEntity_LargeChemicalReactor extends GT_MetaTileEntity_Mu
boolean aRedstone) {
if (aSide == aFacing) {
return new ITexture[] {
- Textures.BlockIcons.CASING_BLOCKS[CASING_INDEX],
+ Textures.BlockIcons.casingTexturePages[1][48],
new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_LARGE_CHEMICAL_REACTOR_ACTIVE
: Textures.BlockIcons.OVERLAY_FRONT_LARGE_CHEMICAL_REACTOR) };
}
- return new ITexture[] { Textures.BlockIcons.CASING_BLOCKS[CASING_INDEX] };
+ return new ITexture[] { Textures.BlockIcons.casingTexturePages[1][48] };
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java
index 25fa0b9042..6f3d3e9a47 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java
@@ -1,15 +1,19 @@
package gregtech.common.tileentities.machines.multi;
import gregtech.api.GregTech_API;
+import gregtech.api.enums.Dyes;
+import gregtech.api.enums.ItemList;
import gregtech.api.enums.Textures;
import gregtech.api.gui.GT_GUIContainer_MultiMachine;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase;
+import gregtech.api.objects.GT_CopiedBlockTexture;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
+import net.minecraft.block.Block;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.ForgeDirection;
@@ -20,6 +24,9 @@ import java.util.ArrayList;
public class GT_MetaTileEntity_PyrolyseOven extends GT_MetaTileEntity_MultiBlockBase {
private int coilMetaID;
+ public static GT_CopiedBlockTexture mTextureULV = new GT_CopiedBlockTexture(Block.getBlockFromItem(ItemList.Casing_ULV.get(1).getItem()), 6, 0,Dyes.MACHINE_METAL.mRGBa);
+
+ //private final int CASING_INDEX = 22;
public GT_MetaTileEntity_PyrolyseOven(int aID, String aName, String aNameRegional) {
super(aID, aName, aNameRegional);
@@ -49,10 +56,9 @@ public class GT_MetaTileEntity_PyrolyseOven extends GT_MetaTileEntity_MultiBlock
public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
if (aSide == aFacing) {
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[111],
- new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_PYROLYSE_OVEN_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_PYROLYSE_OVEN)};
+ return new ITexture[]{mTextureULV, new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_PYROLYSE_OVEN_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_PYROLYSE_OVEN)};
}
- return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[111]};
+ return new ITexture[]{mTextureULV};
}
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
@@ -127,7 +133,7 @@ public class GT_MetaTileEntity_PyrolyseOven extends GT_MetaTileEntity_MultiBlock
}
}
} else if (h == 3) {// innen decke (ulv casings + input + muffler)
- if ((!addInputToMachineList(tTileEntity, 111)) && (!addMufflerToMachineList(tTileEntity, 111))) {
+ if ((!addInputToMachineList(tTileEntity, 22)) && (!addMufflerToMachineList(tTileEntity, 22))) {
if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != GregTech_API.sBlockCasings1) {
return false;
}
@@ -142,7 +148,7 @@ public class GT_MetaTileEntity_PyrolyseOven extends GT_MetaTileEntity_MultiBlock
}
} else {// Aeusserer 5x5 ohne hoehe
if (h == 0) {// aussen boden (controller, output, energy, maintainance, rest ulv casings)
- if ((!addMaintenanceToMachineList(tTileEntity, 111)) && (!addOutputToMachineList(tTileEntity, 111)) && (!addEnergyInputToMachineList(tTileEntity, 111))) {
+ if ((!addMaintenanceToMachineList(tTileEntity, 22)) && (!addOutputToMachineList(tTileEntity, 22)) && (!addEnergyInputToMachineList(tTileEntity, 22))) {
if ((xDir + i != 0) || (zDir + j != 0)) {//no controller
if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != GregTech_API.sBlockCasings1) {
return false;
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCircuit.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCircuit.java
index 1108ab61fd..2a17cfbec8 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCircuit.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCircuit.java
@@ -29,7 +29,7 @@ public class ProcessingCircuit implements gregtech.api.interfaces.IOreRecipeRegi
case "Basic":
GT_ModHandler.removeRecipeByOutput(aStack);
GT_ModHandler.addCraftingRecipe(aStack, new Object[]{"RIR","VBV","CCC",'R',ItemList.Circuit_Parts_Resistor.get(1,new Object[0]),'C',GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.RedAlloy, 1),'V', ItemList.Circuit_Parts_Vacuum_Tube.get(1,new Object[0]),'B',ItemList.Circuit_Board_Coated.get(1,new Object[0]),'I',ItemList.IC2_Item_Casing_Steel.get(1,new Object[0])});
- GT_ModHandler.addShapelessCraftingRecipe(ItemList.Circuit_Basic.get(1L, new Object[0]), new Object[]{ItemList.Circuit_Integrated.getWildcard(1L, new Object[0])});
+ GT_ModHandler.addShapelessCraftingRecipe(aStack, new Object[]{ItemList.Circuit_Integrated.getWildcard(1L, new Object[0])});
break;
case "Advanced":
GT_ModHandler.removeRecipeByOutput(aStack);
diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java
index 4cb542b7e7..a715dc4404 100644
--- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java
+++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java
@@ -3047,12 +3047,12 @@ if(Loader.isModLoaded("Railcraft")){
GT_Values.RA.addDefaultPolymerizationRecipes(Materials.Styrene.mFluid, Materials.Styrene.getCells(1), Materials.Polystyrene.mStandardMoltenFluid);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Butadiene.getCells(1), ItemList.Cell_Air.get(5, new Object[0]), Materials.Styrene.getFluid(350), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(9), Materials.Empty.getCells(6), 160, 240);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Butadiene.getCells(1), Materials.Oxygen.getCells(5), Materials.Styrene.getFluid(350), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(13), Materials.Empty.getCells(6), 160, 240);
+ GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Butadiene.getCells(1), ItemList.Cell_Air.get(5, new Object[0]), Materials.Styrene.getFluid(350), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(9), Materials.Empty.getCells(6), 160, 240);
+ GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Butadiene.getCells(1), Materials.Oxygen.getCells(5), Materials.Styrene.getFluid(350), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(13), Materials.Empty.getCells(6), 160, 240);
GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), ItemList.Cell_Air.get(15, new Object[0]), Materials.Butadiene.getGas(3000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(27), Materials.Empty.getCells(16), 480, 240);
GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), Materials.Oxygen.getCells(15), Materials.Butadiene.getGas(3000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(41), Materials.Empty.getCells(16), 480, 240);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), Materials.Butadiene.getCells(3), Materials.Air.getGas(15000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(27), Materials.Empty.getCells(16), 480, 240);
- GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), Materials.Butadiene.getCells(3), Materials.Oxygen.getGas(15000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(41), Materials.Empty.getCells(16), 480, 240);
+ GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), Materials.Butadiene.getCells(3), Materials.Air.getGas(15000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(27), Materials.Empty.getCells(4), 480, 240);
+ GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Styrene.getCells(1), Materials.Butadiene.getCells(3), Materials.Oxygen.getGas(15000), GT_Values.NF, Materials.RawStyreneButadieneRubber.getDust(41), Materials.Empty.getCells(4), 480, 240);
GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(3)}, new FluidStack[]{Materials.Styrene.getFluid(36), Materials.Butadiene.getGas(108), Materials.Air.getGas(2000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(1)}, 160, 240);
GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(3)}, new FluidStack[]{Materials.Styrene.getFluid(72), Materials.Butadiene.getGas(216), Materials.Oxygen.getGas(2000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(3)}, 160, 240);
GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(4)}, new FluidStack[]{Materials.Styrene.getFluid(540), Materials.Butadiene.getGas(1620), Materials.Titaniumtetrachloride.getFluid(100), Materials.Air.getGas(15000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(22), Materials.RawStyreneButadieneRubber.getDustSmall(2)}, 640, 240);
diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java
index 21df347a6e..719907d285 100644
--- a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java
+++ b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java
@@ -653,10 +653,10 @@ public class GT_Loader_Item_Block_And_Fluid
}
}
}
- GT_ModHandler.addPulverisationRecipe(new ItemStack(Blocks.cobblestone, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), null, 0, false);
+ GT_ModHandler.addPulverisationRecipe(new ItemStack(Blocks.cobblestone, 1, 32767), new ItemStack(Blocks.sand, 1), null, 0, false);
//GT_ModHandler.addPulverisationRecipe(new ItemStack(Blocks.stone, 1, 32767), new ItemStack(Blocks.cobblestone, 1), null, 0, false);
GT_ModHandler.addPulverisationRecipe(new ItemStack(Blocks.gravel, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), null, 0, false);
- GT_ModHandler.addPulverisationRecipe(new ItemStack(Blocks.furnace, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 8L), null, 0, false);
+ GT_ModHandler.addPulverisationRecipe(new ItemStack(Blocks.furnace, 1, 32767), new ItemStack(Blocks.sand, 6), null, 0, false);
GT_ModHandler.addPulverisationRecipe(new ItemStack(Blocks.lit_furnace, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 8L), null, 0, false);
GT_OreDictUnificator.set(OrePrefixes.ingot, Materials.FierySteel, GT_ModHandler.getModItem("TwilightForest", "item.fieryIngot", 1L, 0));