aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gregtech/api/enums/Textures.java9
-rw-r--r--src/main/java/gregtech/api/util/GT_LanguageManager.java1
-rw-r--r--src/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java78
-rw-r--r--src/main/java/gregtech/common/items/behaviors/Behaviour_Switch_Metadata.java73
-rw-r--r--src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_BranchCutter.java37
-rw-r--r--src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_File.java37
-rw-r--r--src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Knife.java37
-rw-r--r--src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Multitool.java48
-rw-r--r--src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Saw.java37
-rw-r--r--src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Screwdriver.java37
-rw-r--r--src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_WireCutter.java37
-rw-r--r--src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java23
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_BRANCHCUTTER.pngbin0 -> 552 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_BRANCHCUTTER_OVERLAY.pngbin0 -> 365 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_CLOSED.pngbin0 -> 389 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_CLOSED_OVERLAY.pngbin0 -> 365 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_FILE.pngbin0 -> 597 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_FILE_OVERLAY.pngbin0 -> 365 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_KNIFE.pngbin0 -> 438 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_KNIFE_OVERLAY.pngbin0 -> 365 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SAW.pngbin0 -> 570 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SAW_OVERLAY.pngbin0 -> 365 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SCREWDRIVER.pngbin0 -> 457 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SCREWDRIVER_OVERLAY.pngbin0 -> 365 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_WIRECUTTER.pngbin0 -> 514 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_WIRECUTTER_OVERLAY.pngbin0 -> 365 bytes
26 files changed, 453 insertions, 1 deletions
diff --git a/src/main/java/gregtech/api/enums/Textures.java b/src/main/java/gregtech/api/enums/Textures.java
index 77e28482ce..176841dc0c 100644
--- a/src/main/java/gregtech/api/enums/Textures.java
+++ b/src/main/java/gregtech/api/enums/Textures.java
@@ -2159,7 +2159,14 @@ public class Textures {
TURBINE,
TURBINE_SMALL,
TURBINE_LARGE,
- TURBINE_HUGE;
+ TURBINE_HUGE,
+ POCKET_MULTITOOL_CLOSED,
+ POCKET_MULTITOOL_BRANCHCUTTER,
+ POCKET_MULTITOOL_FILE,
+ POCKET_MULTITOOL_KNIFE,
+ POCKET_MULTITOOL_SAW,
+ POCKET_MULTITOOL_SCREWDRIVER,
+ POCKET_MULTITOOL_WIRECUTTER;
public static final IIconContainer[]
DURABILITY_BAR =
{
diff --git a/src/main/java/gregtech/api/util/GT_LanguageManager.java b/src/main/java/gregtech/api/util/GT_LanguageManager.java
index 956dfa5de4..382ccf3d8f 100644
--- a/src/main/java/gregtech/api/util/GT_LanguageManager.java
+++ b/src/main/java/gregtech/api/util/GT_LanguageManager.java
@@ -472,6 +472,7 @@ public class GT_LanguageManager {
addStringLocalization("Interaction_DESCRIPTION_Index_327", "Private");
addStringLocalization("Interaction_DESCRIPTION_Index_328", "Channel");
addStringLocalization("Interaction_DESCRIPTION_Index_329", "Public/Private");
+ addStringLocalization("Interaction_DESCRIPTION_Index_330", "Sneak Rightclick to switch Mode");
addStringLocalization("Interaction_DESCRIPTION_Index_500", "Fitting: Loose - More Flow");
addStringLocalization("Interaction_DESCRIPTION_Index_501", "Fitting: Tight - More Efficiency");
addStringLocalization("Interaction_DESCRIPTION_Index_502", "Mining chunk loading enabled");
diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java
index 29ea0d94ab..b2fb154339 100644
--- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java
+++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java
@@ -6,6 +6,7 @@ import gregtech.api.items.GT_MetaGenerated_Tool;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.common.tools.*;
+import gregtech.common.tools.pocket.*;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
@@ -73,6 +74,14 @@ public class GT_MetaGenerated_Tool_01 extends GT_MetaGenerated_Tool {
@Deprecated
public static final short TURBINE_BLADE = 178;
+ public static final short POCKET_MULTITOOL = 180;
+ public static final short POCKET_BRANCHCUTTER = 182;
+ public static final short POCKET_FILE = 184;
+ public static final short POCKET_KNIFE = 186;
+ public static final short POCKET_SAW = 188;
+ public static final short POCKET_SCREWDRIVER = 190;
+ public static final short POCKET_WIRECUTTER = 192;
+
public static GT_MetaGenerated_Tool_01 INSTANCE;
public GT_MetaGenerated_Tool_01() {
@@ -491,6 +500,75 @@ public class GT_MetaGenerated_Tool_01 extends GT_MetaGenerated_Tool {
addTool(TURBINE_LARGE, "Large Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Large());
addTool(TURBINE_HUGE, "Huge Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Huge());
+ addTool(
+ POCKET_MULTITOOL,
+ "Pocket Multitool",
+ "6 useful Tools in one!",
+ new GT_Tool_Pocket_Multitool(POCKET_KNIFE),
+ null,
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 6),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 3),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3));
+ addTool(
+ POCKET_KNIFE,
+ "Pocket Multitool (Knife)",
+ "",
+ new GT_Tool_Pocket_Knife(POCKET_SAW),
+ ToolDictNames.craftingToolKnife,
+ ToolDictNames.craftingToolBlade,
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 6),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 3),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3));
+ addTool(
+ POCKET_SAW,
+ "Pocket Multitool (Saw)",
+ "Can also harvest Ice",
+ new GT_Tool_Pocket_Saw(POCKET_FILE),
+ ToolDictNames.craftingToolSaw,
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 6),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 3),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3));
+ addTool(
+ POCKET_FILE,
+ "Pocket Multitool (File)",
+ "",
+ new GT_Tool_Pocket_File(POCKET_SCREWDRIVER),
+ ToolDictNames.craftingToolFile,
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 6),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 3),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3));
+ GregTech_API.registerTool(
+ addTool(
+ POCKET_SCREWDRIVER,
+ "Pocket Multitool (Screwdriver)",
+ "Adjusts Covers and Machines",
+ new GT_Tool_Pocket_Screwdriver(POCKET_WIRECUTTER),
+ ToolDictNames.craftingToolScrewdriver,
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 6),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 3),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3)),
+ GregTech_API.sScrewdriverList);
+ GregTech_API.registerTool(
+ addTool(
+ POCKET_WIRECUTTER,
+ "Pocket Multitool (Wire Cutter)",
+ "",
+ new GT_Tool_Pocket_WireCutter(POCKET_BRANCHCUTTER),
+ ToolDictNames.craftingToolWireCutter,
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 6),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 3),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3)),
+ GregTech_API.sWireCutterList);
+ addTool(
+ POCKET_BRANCHCUTTER,
+ "Pocket Multitool (Branch Cutter)",
+ "",
+ new GT_Tool_Pocket_BranchCutter(POCKET_MULTITOOL),
+ ToolDictNames.craftingToolBranchCutter,
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 6),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 3),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 3));
+
GT_ModHandler.addCraftingRecipe(
INSTANCE.getToolWithStats(MORTAR, 1, Materials.Flint, Materials.Stone, null),
GT_ModHandler.RecipeBits.NOT_REMOVABLE,
diff --git a/src/main/java/gregtech/common/items/behaviors/Behaviour_Switch_Metadata.java b/src/main/java/gregtech/common/items/behaviors/Behaviour_Switch_Metadata.java
new file mode 100644
index 0000000000..69e5cb8a81
--- /dev/null
+++ b/src/main/java/gregtech/common/items/behaviors/Behaviour_Switch_Metadata.java
@@ -0,0 +1,73 @@
+package gregtech.common.items.behaviors;
+
+import gregtech.api.items.GT_Generic_Block;
+import gregtech.api.items.GT_MetaBase_Item;
+import gregtech.api.util.GT_Util;
+import gregtech.api.util.GT_Utility;
+import java.util.List;
+import net.minecraft.block.Block;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.init.Blocks;
+import net.minecraft.init.Items;
+import net.minecraft.item.ItemStack;
+import net.minecraft.world.World;
+
+public class Behaviour_Switch_Metadata extends Behaviour_None {
+ public final int mSwitchIndex;
+ public final boolean mCheckTarget, mShowModeSwitchTooltip;
+
+ public Behaviour_Switch_Metadata(int aSwitchIndex) {
+ this(aSwitchIndex, false);
+ }
+
+ public Behaviour_Switch_Metadata(int aSwitchIndex, boolean aCheckTarget) {
+ this(aSwitchIndex, aCheckTarget, false);
+ }
+
+ public Behaviour_Switch_Metadata(int aSwitchIndex, boolean aCheckTarget, boolean aShowModeSwitchTooltip) {
+ mSwitchIndex = aSwitchIndex;
+ mCheckTarget = aCheckTarget;
+ mShowModeSwitchTooltip = aShowModeSwitchTooltip;
+ }
+
+ @Override
+ public List<String> getAdditionalToolTips(GT_MetaBase_Item aItem, List<String> aList, ItemStack aStack) {
+ if (mShowModeSwitchTooltip) aList.add(GT_Utility.trans("330", "Sneak Rightclick to switch Mode"));
+ return aList;
+ }
+
+ @Override
+ public boolean onItemUseFirst(
+ GT_MetaBase_Item aItem,
+ ItemStack aStack,
+ EntityPlayer aPlayer,
+ World aWorld,
+ int aX,
+ int aY,
+ int aZ,
+ int aSide,
+ float aHitX,
+ float aHitY,
+ float aHitZ) {
+ if (aStack != null && (aPlayer == null || aPlayer.isSneaking()) && !aWorld.isRemote) {
+ if (mCheckTarget) {
+ Block aBlock = aWorld.blockExists(aX, aY, aZ) ? aWorld.getBlock(aX, aY, aZ) : Blocks.air;
+ if (aBlock instanceof GT_Generic_Block) {
+ Items.feather.setDamage(aStack, (short) mSwitchIndex);
+ GT_Utility.updateItemStack(aStack);
+ return true;
+ }
+ if (GT_Util.getTileEntity(aWorld, aX, aY, aZ, true) == null) {
+ Items.feather.setDamage(aStack, (short) mSwitchIndex);
+ GT_Utility.updateItemStack(aStack);
+ return true;
+ }
+ return false;
+ }
+ Items.feather.setDamage(aStack, (short) mSwitchIndex);
+ GT_Utility.updateItemStack(aStack);
+ return true;
+ }
+ return false;
+ }
+}
diff --git a/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_BranchCutter.java b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_BranchCutter.java
new file mode 100644
index 0000000000..0265fc899a
--- /dev/null
+++ b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_BranchCutter.java
@@ -0,0 +1,37 @@
+package gregtech.common.tools.pocket;
+
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.items.GT_MetaGenerated_Tool;
+import gregtech.common.items.behaviors.Behaviour_Switch_Metadata;
+import gregtech.common.tools.GT_Tool_BranchCutter;
+import net.minecraft.item.ItemStack;
+
+public class GT_Tool_Pocket_BranchCutter extends GT_Tool_BranchCutter {
+ public final int mSwitchIndex;
+
+ public GT_Tool_Pocket_BranchCutter(int aSwitchIndex) {
+ mSwitchIndex = aSwitchIndex;
+ }
+
+ @Override
+ public float getMaxDurabilityMultiplier() {
+ return 4.0F;
+ }
+
+ @Override
+ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
+ return aIsToolHead ? Textures.ItemIcons.POCKET_MULTITOOL_BRANCHCUTTER : Textures.ItemIcons.VOID;
+ }
+
+ @Override
+ public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
+ return GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa;
+ }
+
+ @Override
+ public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
+ super.onStatsAddedToTool(aItem, aID);
+ aItem.addItemBehavior(aID, new Behaviour_Switch_Metadata(mSwitchIndex, true, true));
+ }
+}
diff --git a/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_File.java b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_File.java
new file mode 100644
index 0000000000..eb114ef6a1
--- /dev/null
+++ b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_File.java
@@ -0,0 +1,37 @@
+package gregtech.common.tools.pocket;
+
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.items.GT_MetaGenerated_Tool;
+import gregtech.common.items.behaviors.Behaviour_Switch_Metadata;
+import gregtech.common.tools.GT_Tool_File;
+import net.minecraft.item.ItemStack;
+
+public class GT_Tool_Pocket_File extends GT_Tool_File {
+ public final int mSwitchIndex;
+
+ public GT_Tool_Pocket_File(int aSwitchIndex) {
+ mSwitchIndex = aSwitchIndex;
+ }
+
+ @Override
+ public float getMaxDurabilityMultiplier() {
+ return 4.0F;
+ }
+
+ @Override
+ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
+ return aIsToolHead ? Textures.ItemIcons.POCKET_MULTITOOL_FILE : Textures.ItemIcons.VOID;
+ }
+
+ @Override
+ public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
+ return GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa;
+ }
+
+ @Override
+ public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
+ super.onStatsAddedToTool(aItem, aID);
+ aItem.addItemBehavior(aID, new Behaviour_Switch_Metadata(mSwitchIndex, true, true));
+ }
+}
diff --git a/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Knife.java b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Knife.java
new file mode 100644
index 0000000000..8073b3449a
--- /dev/null
+++ b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Knife.java
@@ -0,0 +1,37 @@
+package gregtech.common.tools.pocket;
+
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.items.GT_MetaGenerated_Tool;
+import gregtech.common.items.behaviors.Behaviour_Switch_Metadata;
+import gregtech.common.tools.GT_Tool_Knife;
+import net.minecraft.item.ItemStack;
+
+public class GT_Tool_Pocket_Knife extends GT_Tool_Knife {
+ public final int mSwitchIndex;
+
+ public GT_Tool_Pocket_Knife(int aSwitchIndex) {
+ mSwitchIndex = aSwitchIndex;
+ }
+
+ @Override
+ public float getMaxDurabilityMultiplier() {
+ return 4.0F;
+ }
+
+ @Override
+ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
+ return aIsToolHead ? Textures.ItemIcons.POCKET_MULTITOOL_KNIFE : Textures.ItemIcons.VOID;
+ }
+
+ @Override
+ public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
+ return GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa;
+ }
+
+ @Override
+ public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
+ super.onStatsAddedToTool(aItem, aID);
+ aItem.addItemBehavior(aID, new Behaviour_Switch_Metadata(mSwitchIndex, true, true));
+ }
+}
diff --git a/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Multitool.java b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Multitool.java
new file mode 100644
index 0000000000..c071b6b072
--- /dev/null
+++ b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Multitool.java
@@ -0,0 +1,48 @@
+package gregtech.common.tools.pocket;
+
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.items.GT_MetaGenerated_Tool;
+import gregtech.common.items.behaviors.Behaviour_Switch_Metadata;
+import gregtech.common.tools.GT_Tool;
+import net.minecraft.block.Block;
+import net.minecraft.item.ItemStack;
+
+public class GT_Tool_Pocket_Multitool extends GT_Tool {
+ public final int mSwitchIndex;
+
+ public GT_Tool_Pocket_Multitool(int aSwitchIndex) {
+ mSwitchIndex = aSwitchIndex;
+ }
+
+ @Override
+ public float getMaxDurabilityMultiplier() {
+ return 4.0F;
+ }
+
+ @Override
+ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
+ return aIsToolHead ? Textures.ItemIcons.POCKET_MULTITOOL_CLOSED : Textures.ItemIcons.VOID;
+ }
+
+ @Override
+ public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
+ return GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa;
+ }
+
+ @Override
+ public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
+ super.onStatsAddedToTool(aItem, aID);
+ aItem.addItemBehavior(aID, new Behaviour_Switch_Metadata(mSwitchIndex, true, true));
+ }
+
+ @Override
+ public float getBaseDamage() {
+ return 0;
+ }
+
+ @Override
+ public boolean isMinableBlock(Block aBlock, byte aMetaData) {
+ return false;
+ }
+}
diff --git a/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Saw.java b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Saw.java
new file mode 100644
index 0000000000..2bcbc1513e
--- /dev/null
+++ b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Saw.java
@@ -0,0 +1,37 @@
+package gregtech.common.tools.pocket;
+
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.items.GT_MetaGenerated_Tool;
+import gregtech.common.items.behaviors.Behaviour_Switch_Metadata;
+import gregtech.common.tools.GT_Tool_Saw;
+import net.minecraft.item.ItemStack;
+
+public class GT_Tool_Pocket_Saw extends GT_Tool_Saw {
+ public final int mSwitchIndex;
+
+ public GT_Tool_Pocket_Saw(int aSwitchIndex) {
+ mSwitchIndex = aSwitchIndex;
+ }
+
+ @Override
+ public float getMaxDurabilityMultiplier() {
+ return 4.0F;
+ }
+
+ @Override
+ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
+ return aIsToolHead ? Textures.ItemIcons.POCKET_MULTITOOL_SAW : Textures.ItemIcons.VOID;
+ }
+
+ @Override
+ public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
+ return GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa;
+ }
+
+ @Override
+ public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
+ super.onStatsAddedToTool(aItem, aID);
+ aItem.addItemBehavior(aID, new Behaviour_Switch_Metadata(mSwitchIndex, true, true));
+ }
+}
diff --git a/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Screwdriver.java b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Screwdriver.java
new file mode 100644
index 0000000000..0ac6782a3b
--- /dev/null
+++ b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_Screwdriver.java
@@ -0,0 +1,37 @@
+package gregtech.common.tools.pocket;
+
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.items.GT_MetaGenerated_Tool;
+import gregtech.common.items.behaviors.Behaviour_Switch_Metadata;
+import gregtech.common.tools.GT_Tool_Screwdriver;
+import net.minecraft.item.ItemStack;
+
+public class GT_Tool_Pocket_Screwdriver extends GT_Tool_Screwdriver {
+ public final int mSwitchIndex;
+
+ public GT_Tool_Pocket_Screwdriver(int aSwitchIndex) {
+ mSwitchIndex = aSwitchIndex;
+ }
+
+ @Override
+ public float getMaxDurabilityMultiplier() {
+ return 4.0F;
+ }
+
+ @Override
+ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
+ return aIsToolHead ? Textures.ItemIcons.POCKET_MULTITOOL_SCREWDRIVER : Textures.ItemIcons.VOID;
+ }
+
+ @Override
+ public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
+ return GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa;
+ }
+
+ @Override
+ public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
+ super.onStatsAddedToTool(aItem, aID);
+ aItem.addItemBehavior(aID, new Behaviour_Switch_Metadata(mSwitchIndex, true, true));
+ }
+}
diff --git a/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_WireCutter.java b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_WireCutter.java
new file mode 100644
index 0000000000..13bfe896d1
--- /dev/null
+++ b/src/main/java/gregtech/common/tools/pocket/GT_Tool_Pocket_WireCutter.java
@@ -0,0 +1,37 @@
+package gregtech.common.tools.pocket;
+
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.items.GT_MetaGenerated_Tool;
+import gregtech.common.items.behaviors.Behaviour_Switch_Metadata;
+import gregtech.common.tools.GT_Tool_WireCutter;
+import net.minecraft.item.ItemStack;
+
+public class GT_Tool_Pocket_WireCutter extends GT_Tool_WireCutter {
+ public final int mSwitchIndex;
+
+ public GT_Tool_Pocket_WireCutter(int aSwitchIndex) {
+ mSwitchIndex = aSwitchIndex;
+ }
+
+ @Override
+ public float getMaxDurabilityMultiplier() {
+ return 4.0F;
+ }
+
+ @Override
+ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {
+ return aIsToolHead ? Textures.ItemIcons.POCKET_MULTITOOL_WIRECUTTER : Textures.ItemIcons.VOID;
+ }
+
+ @Override
+ public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {
+ return GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa;
+ }
+
+ @Override
+ public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) {
+ super.onStatsAddedToTool(aItem, aID);
+ aItem.addItemBehavior(aID, new Behaviour_Switch_Metadata(mSwitchIndex, true, true));
+ }
+}
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java
index 3c2a4a2306..fffd939ec9 100644
--- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java
+++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java
@@ -178,6 +178,29 @@ public class ProcessingToolOther implements gregtech.api.interfaces.IOreRecipeRe
'L',
ItemList.Battery_RE_HV_Lithium.get(1L)
});
+ GT_ModHandler.addCraftingRecipe(
+ (GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(
+ GT_MetaGenerated_Tool_01.POCKET_MULTITOOL, 1, aMaterial, aMaterial, null)),
+ GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED,
+ new Object[] {
+ "ABC",
+ "DEF",
+ "CFG",
+ 'A',
+ OrePrefixes.stickLong.get(aMaterial),
+ 'B',
+ OrePrefixes.toolHeadSaw.get(aMaterial),
+ 'C',
+ OrePrefixes.ring.get(aMaterial),
+ 'D',
+ OrePrefixes.toolHeadFile.get(aMaterial),
+ 'E',
+ OrePrefixes.plate.get(aMaterial),
+ 'F',
+ OrePrefixes.toolHeadSword.get(aMaterial),
+ 'G',
+ Dyes.dyeBlue
+ });
}
}
}
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_BRANCHCUTTER.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_BRANCHCUTTER.png
new file mode 100644
index 0000000000..fac1799bfb
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_BRANCHCUTTER.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_BRANCHCUTTER_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_BRANCHCUTTER_OVERLAY.png
new file mode 100644
index 0000000000..841753f628
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_BRANCHCUTTER_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_CLOSED.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_CLOSED.png
new file mode 100644
index 0000000000..27d1e594a6
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_CLOSED.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_CLOSED_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_CLOSED_OVERLAY.png
new file mode 100644
index 0000000000..841753f628
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_CLOSED_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_FILE.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_FILE.png
new file mode 100644
index 0000000000..157f967b2e
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_FILE.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_FILE_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_FILE_OVERLAY.png
new file mode 100644
index 0000000000..841753f628
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_FILE_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_KNIFE.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_KNIFE.png
new file mode 100644
index 0000000000..5f146f3179
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_KNIFE.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_KNIFE_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_KNIFE_OVERLAY.png
new file mode 100644
index 0000000000..841753f628
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_KNIFE_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SAW.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SAW.png
new file mode 100644
index 0000000000..14677a6525
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SAW.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SAW_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SAW_OVERLAY.png
new file mode 100644
index 0000000000..841753f628
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SAW_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SCREWDRIVER.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SCREWDRIVER.png
new file mode 100644
index 0000000000..916222f548
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SCREWDRIVER.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SCREWDRIVER_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SCREWDRIVER_OVERLAY.png
new file mode 100644
index 0000000000..841753f628
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_SCREWDRIVER_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_WIRECUTTER.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_WIRECUTTER.png
new file mode 100644
index 0000000000..e229ca4686
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_WIRECUTTER.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_WIRECUTTER_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_WIRECUTTER_OVERLAY.png
new file mode 100644
index 0000000000..841753f628
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/iconsets/POCKET_MULTITOOL_WIRECUTTER_OVERLAY.png
Binary files differ