aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtPlusPlus/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gtPlusPlus/core')
-rw-r--r--src/main/java/gtPlusPlus/core/block/machine/VolumetricFlaskSetter.java7
-rw-r--r--src/main/java/gtPlusPlus/core/config/ConfigHandler.java2
-rw-r--r--src/main/java/gtPlusPlus/core/container/Container_VolumetricFlaskSetter.java9
-rw-r--r--src/main/java/gtPlusPlus/core/gui/machine/GUI_VolumetricFlaskSetter.java283
-rw-r--r--src/main/java/gtPlusPlus/core/gui/widget/GuiValueField.java100
-rw-r--r--src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java2
-rw-r--r--src/main/java/gtPlusPlus/core/item/ModItems.java8
-rw-r--r--src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java6
-rw-r--r--src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java18
-rw-r--r--src/main/java/gtPlusPlus/core/item/chemistry/RocketFuels.java12
-rw-r--r--src/main/java/gtPlusPlus/core/item/chemistry/general/ItemGenericChemBase.java3
-rw-r--r--src/main/java/gtPlusPlus/core/lib/CORE.java2
-rw-r--r--src/main/java/gtPlusPlus/core/lib/LoadedMods.java9
-rw-r--r--src/main/java/gtPlusPlus/core/material/ELEMENT.java15
-rw-r--r--src/main/java/gtPlusPlus/core/material/MISC_MATERIALS.java20
-rw-r--r--src/main/java/gtPlusPlus/core/material/ORES.java3
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/LOADER_Machine_Components.java27
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java80
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_General.java6
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java103
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/RECIPES_RareEarthProcessing.java20
-rw-r--r--src/main/java/gtPlusPlus/core/recipe/common/CI.java51
-rw-r--r--src/main/java/gtPlusPlus/core/tileentities/general/TileEntityVolumetricFlaskSetter.java22
-rw-r--r--src/main/java/gtPlusPlus/core/util/minecraft/HazmatUtils.java4
-rw-r--r--src/main/java/gtPlusPlus/core/util/minecraft/ItemUtils.java6
-rw-r--r--src/main/java/gtPlusPlus/core/util/reflect/ReflectionUtils.java6
26 files changed, 576 insertions, 248 deletions
diff --git a/src/main/java/gtPlusPlus/core/block/machine/VolumetricFlaskSetter.java b/src/main/java/gtPlusPlus/core/block/machine/VolumetricFlaskSetter.java
index 36ea2af7cc..90f9c1056a 100644
--- a/src/main/java/gtPlusPlus/core/block/machine/VolumetricFlaskSetter.java
+++ b/src/main/java/gtPlusPlus/core/block/machine/VolumetricFlaskSetter.java
@@ -92,12 +92,7 @@ public class VolumetricFlaskSetter extends BasicTileBlockWithTooltip {
@Override
public int getRenderBlockPass() {
- return 1;
- }
-
- @Override
- public boolean isOpaqueCube() {
- return false;
+ return 0;
}
@Override
diff --git a/src/main/java/gtPlusPlus/core/config/ConfigHandler.java b/src/main/java/gtPlusPlus/core/config/ConfigHandler.java
index 0e88a20aac..2e1d43bdda 100644
--- a/src/main/java/gtPlusPlus/core/config/ConfigHandler.java
+++ b/src/main/java/gtPlusPlus/core/config/ConfigHandler.java
@@ -226,6 +226,8 @@ public class ConfigHandler {
pollutionPerSecondMultiMassFabricator = config.get("pollution", "pollutionPerSecondMultiMassFabricator", pollutionPerSecondMultiMassFabricator,"pollution rate in gibbl/s for the Matter fabrication CPU").getInt(pollutionPerSecondMultiMassFabricator);
pollutionPerSecondMultiRefinery = config.get("pollution", "pollutionPerSecondMultiRefinery", pollutionPerSecondMultiRefinery,"pollution rate in gibbl/s for the Reactor fuel processing plant").getInt(pollutionPerSecondMultiRefinery);
//pollutionPerSecondMultiGeneratorArray;
+ pollutionPerSecondMultiIndustrialRockBreaker = config.get("pollution", "pollutionPerSecondMultiIndustrialRockBreaker", pollutionPerSecondMultiIndustrialRockBreaker,"pollution rate in gibbl/s for the Industrial Rock Breaker").getInt(pollutionPerSecondMultiIndustrialRockBreaker);
+ pollutionPerSecondMultiIndustrialChisel = config.get("pollution", "pollutionPerSecondMultiIndustrialChisel", pollutionPerSecondMultiIndustrialChisel,"pollution rate in gibbl/s for the Industrial Chisel").getInt(pollutionPerSecondMultiIndustrialChisel);
pollutionPerSecondMultiTreeFarm = config.get("pollution", "pollutionPerSecondMultiTreeFarm", pollutionPerSecondMultiTreeFarm,"pollution rate in gibbl/s for the Tree growth simulator").getInt(pollutionPerSecondMultiTreeFarm);
pollutionPerSecondMultiFrothFlotationCell = config.get("pollution", "pollutionPerSecondMultiFrothFlotationCell", pollutionPerSecondMultiFrothFlotationCell,"pollution rate in gibbl/s for the Flotation cell regulator").getInt(pollutionPerSecondMultiFrothFlotationCell);
pollutionPerSecondMultiAutoCrafter = config.get("pollution", "pollutionPerSecondMultiAutoCrafter", pollutionPerSecondMultiAutoCrafter,"pollution rate in gibbl/s for the Large-Scale auto assembler v1.01").getInt(pollutionPerSecondMultiAutoCrafter);
diff --git a/src/main/java/gtPlusPlus/core/container/Container_VolumetricFlaskSetter.java b/src/main/java/gtPlusPlus/core/container/Container_VolumetricFlaskSetter.java
index de3106c957..65e84d7272 100644
--- a/src/main/java/gtPlusPlus/core/container/Container_VolumetricFlaskSetter.java
+++ b/src/main/java/gtPlusPlus/core/container/Container_VolumetricFlaskSetter.java
@@ -4,6 +4,7 @@ import java.util.Iterator;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.core.block.ModBlocks;
import gtPlusPlus.core.inventories.Inventory_VolumetricFlaskSetter;
import gtPlusPlus.core.slots.SlotNoInput;
@@ -24,8 +25,8 @@ public class Container_VolumetricFlaskSetter extends Container {
public final Inventory_VolumetricFlaskSetter inventoryChest;
- public short mCustomValue;
- private short oCustomValue;
+ public int mCustomValue;
+ private int oCustomValue;
private int mTimer;
@@ -181,5 +182,9 @@ public class Container_VolumetricFlaskSetter extends Container {
break;
}
}
+
+ public void log(String aString) {
+ Logger.INFO("[Flask-Container] "+aString);
+ }
} \ No newline at end of file
diff --git a/src/main/java/gtPlusPlus/core/gui/machine/GUI_VolumetricFlaskSetter.java b/src/main/java/gtPlusPlus/core/gui/machine/GUI_VolumetricFlaskSetter.java
index 0257e51d0c..512f31dd47 100644
--- a/src/main/java/gtPlusPlus/core/gui/machine/GUI_VolumetricFlaskSetter.java
+++ b/src/main/java/gtPlusPlus/core/gui/machine/GUI_VolumetricFlaskSetter.java
@@ -5,13 +5,13 @@ import org.lwjgl.opengl.GL11;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
+import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.core.container.Container_VolumetricFlaskSetter;
import gtPlusPlus.core.gui.widget.GuiValueField;
import gtPlusPlus.core.handler.PacketHandler;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.network.packet.Packet_VolumetricFlaskGui;
import gtPlusPlus.core.tileentities.general.TileEntityVolumetricFlaskSetter;
-import net.minecraft.client.gui.GuiTextField;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.resources.I18n;
import net.minecraft.util.ResourceLocation;
@@ -19,67 +19,203 @@ import net.minecraft.util.ResourceLocation;
@SideOnly(Side.CLIENT)
public class GUI_VolumetricFlaskSetter extends GuiContainer {
- private GuiTextField mText;
+ private static final ResourceLocation mGuiTextures = new ResourceLocation(
+ CORE.MODID, "textures/gui/VolumetricFlaskSetter.png"
+ );
+ private Container_VolumetricFlaskSetter mContainer;
private boolean mIsOpen = false;
+ private GuiValueField mText;
private TileEntityVolumetricFlaskSetter mTile;
- private Container_VolumetricFlaskSetter mContainer;
- private static final ResourceLocation mGuiTextures = new ResourceLocation(CORE.MODID, "textures/gui/VolumetricFlaskSetter.png");
- public GUI_VolumetricFlaskSetter(Container_VolumetricFlaskSetter aContainer){
+ public GUI_VolumetricFlaskSetter(Container_VolumetricFlaskSetter aContainer) {
super(aContainer);
mContainer = aContainer;
mTile = mContainer.mTileEntity;
}
- public void initGui(){
+ @Override
+ protected void drawGuiContainerBackgroundLayer(final float f, final int i, final int j) {
+ GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
+ this.mc.renderEngine.bindTexture(mGuiTextures);
+ final int x = (this.width - this.xSize) / 2;
+ final int y = (this.height - this.ySize) / 2;
+ this.drawTexturedModalRect(x, y, 0, 0, this.xSize, this.ySize);
+ }
+
+ @Override
+ protected void drawGuiContainerForegroundLayer(final int i, final int j) {
+ super.drawGuiContainerForegroundLayer(i, j);
+ this.mText.drawTextBox();
+ this.fontRendererObj.drawString(
+ I18n.format("container.VolumetricFlaskSetter", new Object[0]), 4, 3, 4210752
+ );
+ int aYVal = 49;
+ this.fontRendererObj.drawString(
+ I18n.format("0 = 16l", new Object[0]), 8, aYVal, 4210752
+ );
+ this.fontRendererObj.drawString(
+ I18n.format("4 = 576l", new Object[0]), 64, aYVal, 4210752
+ );
+ this.fontRendererObj.drawString(
+ I18n.format("1 = 36l", new Object[0]), 8, aYVal += 8, 4210752
+ );
+ this.fontRendererObj.drawString(
+ I18n.format("5 = 720l", new Object[0]), 64, aYVal, 4210752
+ );
+ this.fontRendererObj.drawString(
+ I18n.format("2 = 144l", new Object[0]), 8, aYVal += 8, 4210752
+ );
+ this.fontRendererObj.drawString(
+ I18n.format("6 = 864l", new Object[0]), 64, aYVal, 4210752
+ );
+ this.fontRendererObj.drawString(
+ I18n.format("3 = 432l", new Object[0]), 8, aYVal += 8, 4210752
+ );
+ this.fontRendererObj.drawString(
+ I18n.format("-> = Custom", new Object[0]), 59, aYVal, 4210752
+ );
+
+ }
+
+ public void drawScreen(int par1, int par2, float par3) {
+ this.drawDefaultBackground();
+ super.drawScreen(par1, par2, par3);
+ }
+
+ protected String getText() {
+ return this.mText.getText();
+ }
+
+ public void initGui() {
super.initGui();
- Keyboard.enableRepeatEvents(true);
+ // Keyboard.enableRepeatEvents(true);
mIsOpen = true;
- this.mText = new GuiValueField(this.fontRendererObj, 26, 31, this.width / 2 - 62, this.height/2-52, 106, 14);
+ this.mText = new GuiValueField(
+ this.fontRendererObj, 26, 31, this.width / 2
+ - 62, this.height / 2 - 52, 106, 14, this
+ );
mText.setMaxStringLength(5);
mText.setEnableBackgroundDrawing(true);
mText.setText("0");
mText.setFocused(true);
}
- protected void keyTyped(char par1, int par2){
+ public boolean isNumber(char c) {
+ boolean isNum = ((c >= 48 && c <= 57) || c == 45);
+ if (isNum) {
+ log("Found Digit: "+c+" | char value");
+ }
+ else {
+ switch (c) {
+ case '0' :
+ case '1' :
+ case '2' :
+ case '3' :
+ case '4' :
+ case '5' :
+ case '6' :
+ case '7' :
+ case '8' :
+ case '9' :
+ log("Found Digit: "+c+" | char switch");
+ return true;
+ }
+ }
+ return isNum;
+ }
+
+ public boolean isNumber(int c) {
+ switch (c) {
+ case Keyboard.KEY_0 :
+ case Keyboard.KEY_1 :
+ case Keyboard.KEY_2 :
+ case Keyboard.KEY_3 :
+ case Keyboard.KEY_4 :
+ case Keyboard.KEY_5 :
+ case Keyboard.KEY_6 :
+ case Keyboard.KEY_7 :
+ case Keyboard.KEY_8 :
+ case Keyboard.KEY_9 :
+ case Keyboard.KEY_NUMPAD0 :
+ case Keyboard.KEY_NUMPAD1 :
+ case Keyboard.KEY_NUMPAD2 :
+ case Keyboard.KEY_NUMPAD3 :
+ case Keyboard.KEY_NUMPAD4 :
+ case Keyboard.KEY_NUMPAD5 :
+ case Keyboard.KEY_NUMPAD6 :
+ case Keyboard.KEY_NUMPAD7 :
+ case Keyboard.KEY_NUMPAD8 :
+ case Keyboard.KEY_NUMPAD9 :
+ log("Found Digit: "+Keyboard.getKeyName(c)+" | LWJGL Keybinding");
+ return true;
+ }
+ return false;
+ }
+
+ protected void keyTyped(char par1, int par2) {
if (mIsOpen) {
+ log("Pressed " + par1 + " | " + par2);
if (mText.isFocused()) {
+ log("Text box has focus.");
if (par2 == Keyboard.KEY_RETURN) {
- if (mText.isFocused()) {
- mText.setFocused(false);
- }
+ log("Pressed Enter, unfocusing.");
+ mText.setFocused(false);
}
else if (par2 == Keyboard.KEY_BACK) {
+ log("Pressed Backspace.");
String aCurrentText = getText();
if (aCurrentText.length() > 0) {
- this.mText.setText(aCurrentText.substring(0, aCurrentText.length() - 1));
+ this.mText.setText(
+ aCurrentText.substring(
+ 0, aCurrentText.length() - 1
+ )
+ );
if (getText().length() <= 0) {
- this.mText.setText("0");
+ setText(0);
}
sendUpdateToServer();
}
}
else {
- if (isNumber(par1)) {
- if (this.mText.getText().equals("0")) {
- this.mText.setText(""+par1);
+ if (isNumber(par2) || isNumber(par1)) {
+ log("Pressed number.");
+ if (this.mText.getText().equals("0")) {
+ this.mText.textboxKeyTyped(par1, par2);
sendUpdateToServer();
}
else {
- this.mText.textboxKeyTyped(par1, par2);
- sendUpdateToServer();
+ this.mText.textboxKeyTyped(par1, par2);
+ sendUpdateToServer();
}
}
else {
- super.keyTyped(par1, par2);
+ log("Pressed unused key.");
+ super.keyTyped(par1, par2);
}
- }
+ }
}
else {
- super.keyTyped(par1, par2);
+ log("Text box not focused.");
+ super.keyTyped(par1, par2);
}
}
+ else {
+ log("Gui is not open?");
+ }
+ }
+
+ protected void mouseClicked(int x, int y, int btn) {
+ if (mIsOpen) {
+ log("Clicked.");
+ this.mText.mouseClicked(x, y, btn);
+ if (!mText.didClickInTextField(x, y)) {
+ log("Did not click in text box, passing to super.");
+ super.mouseClicked(x, y, btn);
+ }
+ }
+ else {
+ log("Gui is not open?");
+ }
}
@Override
@@ -88,10 +224,29 @@ public class GUI_VolumetricFlaskSetter extends GuiContainer {
mText.setEnabled(false);
mText.setVisible(false);
super.onGuiClosed();
- Keyboard.enableRepeatEvents(false);
+ // Keyboard.enableRepeatEvents(false);
+ }
+
+ public int parse(String aValue) {
+ try {
+ return Integer.parseInt(getText());
+ }
+ catch (NumberFormatException e) {
+ return 0;
+ }
+ }
+
+ public void sendUpdateToServer() {
+ if (getText().length() > 0) {
+ PacketHandler.sendToServer(new Packet_VolumetricFlaskGui(mTile, parse(getText())));
+ }
+ }
+
+ public void setText(int aValue) {
+ this.mText.setText("" + aValue);
}
- public void updateScreen(){
+ public void updateScreen() {
super.updateScreen();
// Update Textbox to 0 if Empty
if (getText().length() <= 0) {
@@ -101,83 +256,19 @@ public class GUI_VolumetricFlaskSetter extends GuiContainer {
this.mText.updateCursorCounter();
// Check TextBox Value is correct
- short aCustomValue = 0;
if (getText().length() > 0) {
- try {
- aCustomValue = Short.parseShort(getText());
- short aTileValue = ((Container_VolumetricFlaskSetter) mContainer).mCustomValue;
- if (mContainer != null) {
- if (aTileValue != aCustomValue){
- this.mText.setText(""+aTileValue);
- }
+ int aCustomValue = parse(getText());
+ int aTileValue = ((Container_VolumetricFlaskSetter) mContainer).mCustomValue;
+ if (mContainer != null) {
+ if (aTileValue != aCustomValue) {
+ setText(aTileValue);
}
- } catch (NumberFormatException ex) {
-
}
- }
- }
-
- public void drawScreen(int par1, int par2, float par3){
- this.drawDefaultBackground();
- super.drawScreen(par1, par2, par3);
-
-
- }
-
- protected void mouseClicked(int x, int y, int btn) {
- if (mIsOpen) {
- super.mouseClicked(x, y, btn);
- this.mText.mouseClicked(x, y, btn);
}
}
-
-
-
- @Override
- protected void drawGuiContainerForegroundLayer(final int i, final int j){
- super.drawGuiContainerForegroundLayer(i, j);
- this.mText.drawTextBox();
- this.fontRendererObj.drawString(I18n.format("container.VolumetricFlaskSetter", new Object[0]), 4, 3, 4210752);
- int aYVal = 49;
- this.fontRendererObj.drawString(I18n.format("0 = 16l", new Object[0]), 8, aYVal, 4210752);
- this.fontRendererObj.drawString(I18n.format("4 = 576l", new Object[0]), 64, aYVal, 4210752);
- this.fontRendererObj.drawString(I18n.format("1 = 36l", new Object[0]), 8, aYVal+=8, 4210752);
- this.fontRendererObj.drawString(I18n.format("5 = 720l", new Object[0]), 64, aYVal, 4210752);
- this.fontRendererObj.drawString(I18n.format("2 = 144l", new Object[0]), 8, aYVal+=8, 4210752);
- this.fontRendererObj.drawString(I18n.format("6 = 864l", new Object[0]), 64, aYVal, 4210752);
- this.fontRendererObj.drawString(I18n.format("3 = 432l", new Object[0]), 8, aYVal+=8, 4210752);
- this.fontRendererObj.drawString(I18n.format("-> = Custom", new Object[0]), 59, aYVal, 4210752);
-
- }
-
- @Override
- protected void drawGuiContainerBackgroundLayer(final float f, final int i, final int j){
- GL11.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
- this.mc.renderEngine.bindTexture(mGuiTextures);
- final int x = (this.width - this.xSize) / 2;
- final int y = (this.height - this.ySize) / 2;
- this.drawTexturedModalRect(x, y, 0, 0, this.xSize, this.ySize);
- }
-
- public boolean isNumber(char c) {
- return ((c >= 48 && c <= 57) || c == 45);
- }
-
- protected String getText() {
- return this.mText.getText();
- }
-
- protected void sendUpdateToServer() {
- short aCustomValue = 0;
- if (getText().length() > 0) {
- try {
- aCustomValue = Short.parseShort(getText());
- PacketHandler.sendToServer(new Packet_VolumetricFlaskGui(mTile, aCustomValue));
- } catch (NumberFormatException ex) {
-
- }
- }
+ public void log(String aString) {
+ Logger.INFO("[Flask-GUI] "+aString);
}
-} \ No newline at end of file
+}
diff --git a/src/main/java/gtPlusPlus/core/gui/widget/GuiValueField.java b/src/main/java/gtPlusPlus/core/gui/widget/GuiValueField.java
index ac4c1a8aee..c9c294ea1c 100644
--- a/src/main/java/gtPlusPlus/core/gui/widget/GuiValueField.java
+++ b/src/main/java/gtPlusPlus/core/gui/widget/GuiValueField.java
@@ -2,7 +2,9 @@ package gtPlusPlus.core.gui.widget;
import java.lang.reflect.Field;
+import gtPlusPlus.core.gui.machine.GUI_VolumetricFlaskSetter;
import gtPlusPlus.core.util.reflect.ReflectionUtils;
+import gtPlusPlus.preloader.DevHelper;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.GuiTextField;
@@ -11,76 +13,86 @@ public class GuiValueField extends GuiTextField {
private final FontRenderer mFontRenderer;
private final int mScreenLocationX;
private final int mScreenLocationY;
-
- public GuiValueField(FontRenderer aFontRenderer, int aX, int aY, int aScreenLocationX, int aScreenLocationY, int aWidth, int aHeight) {
+ private final GUI_VolumetricFlaskSetter mGUI;
+
+ public GuiValueField(FontRenderer aFontRenderer, int aX, int aY, int aScreenLocationX, int aScreenLocationY, int aWidth, int aHeight, GUI_VolumetricFlaskSetter aGUI) {
super(aFontRenderer, aX, aY, aWidth, aHeight);
mFontRenderer = aFontRenderer;
mScreenLocationX = aScreenLocationX;
mScreenLocationY = aScreenLocationY;
+ mGUI = aGUI;
}
-
- public boolean canLoseFocus() {
- Field canLoseFocus = ReflectionUtils.getField(GuiTextField.class, "canLoseFocus");
+
+ public boolean canLoseFocus() {
+ Field canLoseFocus = ReflectionUtils.getField(GuiTextField.class, DevHelper.isObfuscatedEnvironment() ? "field_146212_n" : "canLoseFocus");
if (canLoseFocus != null) {
return (boolean) ReflectionUtils.getFieldValue(canLoseFocus, this);
}
return true;
}
-
+
+ @Override
public boolean isFocused() {
- Field isFocused = ReflectionUtils.getField(GuiTextField.class, "isFocused");
- if (isFocused != null) {
- return (boolean) ReflectionUtils.getFieldValue(isFocused, this);
- }
- return false;
+ return super.isFocused();
}
-
+
public boolean isBackgroundDrawingEnabled() {
- Field enableBackgroundDrawing = ReflectionUtils.getField(GuiTextField.class, "enableBackgroundDrawing");
+ Field enableBackgroundDrawing = ReflectionUtils.getField(GuiTextField.class, DevHelper.isObfuscatedEnvironment() ? "field_146215_m" : "enableBackgroundDrawing");
if (enableBackgroundDrawing != null) {
return (boolean) ReflectionUtils.getFieldValue(enableBackgroundDrawing, this);
}
return true;
}
+
public int getLineScrollOffset() {
- Field lineScrollOffset = ReflectionUtils.getField(GuiTextField.class, "lineScrollOffset");
+ Field lineScrollOffset = ReflectionUtils.getField(GuiTextField.class, DevHelper.isObfuscatedEnvironment() ? "field_146225_q" : "lineScrollOffset");
if (lineScrollOffset != null) {
return (int) ReflectionUtils.getFieldValue(lineScrollOffset, this);
}
return 0;
}
-
- /**
- * Args: x, y, buttonClicked
- */
- public void mouseClicked(int aX, int aY, int aButton){
-
- boolean flag = aX >= this.mScreenLocationX && aX < this.mScreenLocationX + this.width && aY >= this.mScreenLocationY && aY < this.mScreenLocationY + this.height;
- //Logger.INFO("Clicked X:"+aX);
- //Logger.INFO("Clicked Y:"+aY);
- //Logger.INFO("ScreenPos X:"+mScreenLocationX);
- //Logger.INFO("ScreenPos Y:"+mScreenLocationY);
- //Logger.INFO("Render X:"+xPosition);
- //Logger.INFO("Render Y:"+yPosition);
-
- if (canLoseFocus())
- {
- this.setFocused(flag);
- }
-
- if (isFocused() && aButton == 0)
- {
- int l = aX - this.mScreenLocationX;
+ public boolean didClickInTextField(int aX, int aY) {
+ mGUI.log("Clicked at X:"+aX+", Y:"+aY);
+ boolean aDidClick = aX >= this.mScreenLocationX && aX < this.mScreenLocationX + this.width && aY >= this.mScreenLocationY && aY < this.mScreenLocationY + this.height;
+ mGUI.log("Did click in textbox? "+aDidClick);
+ mGUI.log("Expected Region: X:"+mScreenLocationX+"-"+(this.mScreenLocationX + this.width));
+ mGUI.log("Expected Region: Y:"+mScreenLocationY+"-"+(this.mScreenLocationY + this.height));
+ return aDidClick;
+ }
- if (isBackgroundDrawingEnabled())
- {
- l -= 4;
- }
+ /**
+ * Args: x, y, buttonClicked
+ */
+ @Override
+ public void mouseClicked(int aX, int aY, int aButton){
+ boolean aDidClick = didClickInTextField(aX, aY);
- String s = this.mFontRenderer.trimStringToWidth(this.getText().substring(getLineScrollOffset()), this.getWidth());
- this.setCursorPosition(this.mFontRenderer.trimStringToWidth(s, l).length() + getLineScrollOffset());
- }
- }
+ mGUI.log("Did click inside text box? "+aDidClick);
+ mGUI.log("Focus 1: "+this.isFocused());
+ this.setFocused(aDidClick);
+ mGUI.log("Focus 2: "+this.isFocused());
+ if (isFocused()) {
+ int l = aX - this.mScreenLocationX;
+ if (isBackgroundDrawingEnabled()) {
+ l -= 4;
+ }
+ if (aButton == 0) {
+ mGUI.log("Left clicked in text box.");
+ String s = this.mFontRenderer.trimStringToWidth(this.getText().substring(getLineScrollOffset()), this.getWidth());
+ this.setCursorPosition(this.mFontRenderer.trimStringToWidth(s, l).length() + getLineScrollOffset());
+ }
+ else if (aButton == 1) {
+ mGUI.log("Right clicked in text box.");
+ mGUI.setText(0);
+ mGUI.sendUpdateToServer();
+ String s = this.mFontRenderer.trimStringToWidth(this.getText().substring(getLineScrollOffset()), this.getWidth());
+ this.setCursorPosition(this.mFontRenderer.trimStringToWidth(s, l).length() + getLineScrollOffset());
+ }
+ }
+ else {
+ mGUI.log("Clicked, but no focus.");
+ }
+ }
}
diff --git a/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java b/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java
index b55001f1c2..1db54a4933 100644
--- a/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java
+++ b/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java
@@ -162,6 +162,8 @@ public class COMPAT_HANDLER {
GregtechIndustrialForgeHammer.run();
GregtechMolecularTransformer.run();
GregtechIndustrialElementDuplicator.run();
+ GregtechIndustrialRockBreaker.run();
+ GregtechIndustrialChisel.run();
//New Horizons Content
NewHorizonsAccelerator.run();
diff --git a/src/main/java/gtPlusPlus/core/item/ModItems.java b/src/main/java/gtPlusPlus/core/item/ModItems.java
index fd3d8c7a2b..4004ab2724 100644
--- a/src/main/java/gtPlusPlus/core/item/ModItems.java
+++ b/src/main/java/gtPlusPlus/core/item/ModItems.java
@@ -14,6 +14,7 @@ import gtPlusPlus.core.common.compat.COMPAT_Baubles;
import gtPlusPlus.core.creative.AddToCreativeTab;
import gtPlusPlus.core.item.base.*;
import gtPlusPlus.core.item.base.BaseItemComponent.ComponentTypes;
+import gtPlusPlus.core.item.base.cell.BaseItemCell;
import gtPlusPlus.core.item.base.dusts.BaseItemDust;
import gtPlusPlus.core.item.base.foil.BaseItemFoil;
import gtPlusPlus.core.item.base.foods.BaseItemFood;
@@ -203,6 +204,8 @@ public final class ModItems {
public static Item dustIgnis;
public static Item dustTerra;
public static Item dustAqua;
+
+ public static Item cellHydrogenChlorideMix;
public static BaseEuItem metaItem2;
@@ -695,7 +698,10 @@ public final class ModItems {
dustAer = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AER, true)[0];
dustIgnis = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().IGNIS, true)[0];
dustTerra = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().TERRA, true)[0];
- dustAqua = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AQUA, true)[0];
+ dustAqua = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AQUA, true)[0];
+
+ ItemUtils.generateSpecialUseDusts(MISC_MATERIALS.WOODS_GLASS, false);
+ cellHydrogenChlorideMix = new BaseItemCell("hydrogenchloridemix", "Hydrogen Chloride Mix", MISC_MATERIALS.HYDROGEN_CHLORIDE.getRGB());
//Nuclear Fuel Dusts
dustLithiumCarbonate = ItemUtils.generateSpecialUseDusts("LithiumCarbonate", "Lithium Carbonate", "Li2CO3", Utils.rgbtoHexValue(240, 240, 240))[0]; //https://en.wikipedia.org/wiki/Lithium_carbonate
diff --git a/src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java b/src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java
index 688483b831..ad47adcf64 100644
--- a/src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java
+++ b/src/main/java/gtPlusPlus/core/item/base/cell/BaseItemCell.java
@@ -12,6 +12,7 @@ import gtPlusPlus.core.util.minecraft.ItemUtils;
import ic2.core.Ic2Items;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidContainerRegistry;
+import net.minecraftforge.fluids.FluidStack;
public class BaseItemCell extends BaseItemComponent{
@@ -26,7 +27,10 @@ public class BaseItemCell extends BaseItemComponent{
public BaseItemCell(final String unlocalName, final String localName, final short[] RGBa) {
super(unlocalName, localName, RGBa);
this.fluidColour = RGBa;
- FluidContainerRegistry.registerFluidContainer(FluidUtils.getFluidStack(unlocalName.toLowerCase(), 0), ItemUtils.getSimpleStack(this), Ic2Items.cell.copy());
+ FluidStack aFluid = FluidUtils.getFluidStack(unlocalName.toLowerCase(), 1000);
+ if (aFluid != null) {
+ FluidContainerRegistry.registerFluidContainer(aFluid, ItemUtils.getSimpleStack(this), Ic2Items.cell.copy());
+ }
}
public BaseItemCell(final String unlocalName, final String localName, final short[] RGBa, final Fluid cellFluid) {
diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java
index a42d179f65..43bd669829 100644
--- a/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java
+++ b/src/main/java/gtPlusPlus/core/item/chemistry/GenericChem.java
@@ -103,6 +103,7 @@ public class GenericChem extends ItemPackage {
public static ItemStack mPurpleCatalyst;
public static ItemStack mBrownCatalyst;
public static ItemStack mPinkCatalyst;
+ public static ItemStack mFormaldehydeCatalyst;
public static ItemStack mMillingBallAlumina;
public static ItemStack mMillingBallSoapstone;
@@ -151,6 +152,7 @@ public class GenericChem extends ItemPackage {
mSodiumEthylXanthate = ItemUtils.simpleMetaStack(mGenericChemItem1, 10, 1);
mPotassiumEthylXanthate = ItemUtils.simpleMetaStack(mGenericChemItem1, 11, 1);
mPotassiumHydroxide = ItemUtils.simpleMetaStack(mGenericChemItem1, 12, 1);
+ mFormaldehydeCatalyst = ItemUtils.simpleMetaStack(mGenericChemItem1, 13, 1);
}
@@ -169,6 +171,7 @@ public class GenericChem extends ItemPackage {
ItemUtils.addItemToOreDictionary(mSodiumEthylXanthate, "dustSodiumEthylXanthate");
ItemUtils.addItemToOreDictionary(mPotassiumEthylXanthate, "dustPotassiumEthylXanthate");
ItemUtils.addItemToOreDictionary(mPotassiumHydroxide, "dustPotassiumHydroxide");
+ ItemUtils.addItemToOreDictionary(mFormaldehydeCatalyst, "catalystFormaldehyde");
}
@@ -289,6 +292,7 @@ public class GenericChem extends ItemPackage {
recipeCatalystPurple();
recipeCatalystBrown();
recipeCatalystPink();
+ recipeCatalystFormaldehyde();
recipeGrindingBallAlumina();
recipeGrindingBallSoapstone();
@@ -773,6 +777,20 @@ public class GenericChem extends ItemPackage {
2000);
}
+
+ private void recipeCatalystFormaldehyde() {
+ // Assembly Recipe
+ CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] {
+ getTierThreeChip(),
+ CI.getEmptyCatalyst(4),
+ ItemUtils.getSimpleStack(RocketFuels.Formaldehyde_Catalyst_Dust, 8)
+ },
+ GT_Values.NF,
+ ItemUtils.getSimpleStack(mFormaldehydeCatalyst, 4),
+ 30 * 20,
+ 240);
+
+ }
private void recipeCadaverineAndPutrescine() {
diff --git a/src/main/java/gtPlusPlus/core/item/chemistry/RocketFuels.java b/src/main/java/gtPlusPlus/core/item/chemistry/RocketFuels.java
index b96e0c76ea..c9c5ca98f6 100644
--- a/src/main/java/gtPlusPlus/core/item/chemistry/RocketFuels.java
+++ b/src/main/java/gtPlusPlus/core/item/chemistry/RocketFuels.java
@@ -54,7 +54,7 @@ public class RocketFuels extends ItemPackage {
public static Fluid Monomethylhydrazine_Plus_Nitric_Acid;
public static Item Ammonium_Nitrate_Dust;
- public static Item Formaldehyde_Catalyst;
+ public static Item Formaldehyde_Catalyst_Dust;
public static ItemStack Formaldehyde_Catalyst_Stack;
public RocketFuels() {
@@ -246,7 +246,7 @@ public class RocketFuels extends ItemPackage {
CORE.RA.addChemicalPlantRecipe(
new ItemStack[] {
CI.getNumberedAdvancedCircuit(21),
- ItemUtils.getSimpleStack(Formaldehyde_Catalyst, 0),
+ ItemUtils.getSimpleStack(GenericChem.mFormaldehydeCatalyst, 0),
},
new FluidStack[] {
FluidUtils.getFluidStack("oxygen", 16000),
@@ -273,7 +273,7 @@ public class RocketFuels extends ItemPackage {
null,
null,
null,
- ItemUtils.getSimpleStack(Formaldehyde_Catalyst, 4),
+