aboutsummaryrefslogtreecommitdiff
path: root/main/java/gregtech/common
diff options
context:
space:
mode:
Diffstat (limited to 'main/java/gregtech/common')
-rw-r--r--main/java/gregtech/common/GT_Proxy.java11
-rw-r--r--main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java10
-rw-r--r--main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java2
-rw-r--r--main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java15
-rw-r--r--main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java4
-rw-r--r--main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java5
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java11
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Drill_HV.java7
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Drill_LV.java1
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_HardHammer.java10
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_JackHammer.java7
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Pickaxe.java1
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine.java25
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java7
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java7
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java7
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java7
-rw-r--r--main/java/gregtech/common/tools/GT_Tool_UniversalSpade.java6
18 files changed, 134 insertions, 9 deletions
diff --git a/main/java/gregtech/common/GT_Proxy.java b/main/java/gregtech/common/GT_Proxy.java
index 6b9cbf9686..e6dce1cd51 100644
--- a/main/java/gregtech/common/GT_Proxy.java
+++ b/main/java/gregtech/common/GT_Proxy.java
@@ -149,6 +149,8 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler {
public boolean mHungerEffect = true;
public boolean mOnline = true;
public boolean mIgnoreTcon = true;
+ public boolean mDisableIC2Cables = false;
+ public boolean mAchievements = true;
public int mSkeletonsShootGTArrows = 16;
public int mMaxEqualEntitiesAtOneSpot = 3;
public int mFlintChance = 30;
@@ -610,6 +612,11 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler {
GT_ModHandler.addCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 1L), tBits,
new Object[] { "Xx", Character.valueOf('X'), OrePrefixes.foil.get(aMaterial) });
+ GT_ModHandler.addCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.turbineBlade, aMaterial, 1L), tBits, new Object[] { "fPd", "SPS", " P ",
+ Character.valueOf('P'), aMaterial == Materials.Wood ? OrePrefixes.plank.get(aMaterial) : OrePrefixes.plateDouble.get(aMaterial),
+ Character.valueOf('R'), OrePrefixes.ring.get(aMaterial), Character.valueOf('S'), OrePrefixes.screw.get(aMaterial) });
+
+
GT_ModHandler.addCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.arrowGtWood, aMaterial, 1L), tBits, new Object[] { " A", " S ",
"F ", Character.valueOf('S'), OrePrefixes.stick.get(Materials.Wood), Character.valueOf('F'), OreDictNames.craftingFeather,
Character.valueOf('A'), OrePrefixes.toolHeadArrow.get(aMaterial) });
@@ -1310,11 +1317,11 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler {
GT_OreDictUnificator.set(OrePrefixes.ingot, Materials.RedAlloy, new ItemStack(aEvent.Ore.getItem(), 1, 0));
GT_OreDictUnificator.set(OrePrefixes.ingot, Materials.BlueAlloy, new ItemStack(aEvent.Ore.getItem(), 1, 1));
GT_OreDictUnificator.set(OrePrefixes.ingot, Materials.Brass, new ItemStack(aEvent.Ore.getItem(), 1, 2));
-
+ if(!mDisableIC2Cables){
GT_Values.RA.addWiremillRecipe(GT_ModHandler.getIC2Item("copperCableItem", 3L), new ItemStack(aEvent.Ore.getItem(), 1,
8), 400, 1);
GT_Values.RA.addWiremillRecipe(GT_ModHandler.getIC2Item("ironCableItem", 6L),
- new ItemStack(aEvent.Ore.getItem(), 1, 9), 400, 2);
+ new ItemStack(aEvent.Ore.getItem(), 1, 9), 400, 2);}
GT_Values.RA.addCutterRecipe(new ItemStack(aEvent.Ore.getItem(), 1, 3), new ItemStack(aEvent.Ore.getItem(), 16, 4),
null, 400, 8);
}
diff --git a/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java b/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java
index 745575a01e..44d8b330c6 100644
--- a/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java
+++ b/main/java/gregtech/common/GT_Worldgen_GT_Ore_Layer.java
@@ -1,12 +1,16 @@
/* 1: */ package gregtech.common;
/* 2: */
-/* 3: */ import gregtech.api.GregTech_API;
+/* 3: */ import gregtech.GT_Mod;
+import gregtech.api.GregTech_API;
/* 4: */ import gregtech.api.enums.Materials;
/* 5: */ import gregtech.api.util.GT_Config;
/* 6: */ import gregtech.api.world.GT_Worldgen;
/* 7: */ import gregtech.common.blocks.GT_TileEntity_Ores;
+import gregtech.loaders.misc.GT_Achievements;
+
/* 8: */ import java.util.ArrayList;
/* 9: */ import java.util.Random;
+
/* 10: */ import net.minecraft.world.World;
/* 11: */ import net.minecraft.world.chunk.IChunkProvider;
/* 12: */
@@ -44,6 +48,10 @@
/* 44:32 */ this.mBetweenMeta = ((short)GregTech_API.sWorldgenFile.get("worldgen." + this.mWorldGenName, "OreSporadiclyInbetween", aBetween.mMetaItemSubID));
/* 45:33 */ this.mSporadicMeta = ((short)GregTech_API.sWorldgenFile.get("worldgen." + this.mWorldGenName, "OreSporaticlyAround", aSporadic.mMetaItemSubID));
/* 46:34 */ if (this.mEnabled) {
+ GT_Achievements.registerOre(aPrimary,aMinY,aMaxY,aWeight,aOverworld,aNether,aEnd);
+/* 46:34 */ GT_Achievements.registerOre(aSecondary,aMinY,aMaxY,aWeight,aOverworld,aNether,aEnd);
+/* 46:34 */ GT_Achievements.registerOre(aBetween,aMinY,aMaxY,aWeight,aOverworld,aNether,aEnd);
+/* 46:34 */ GT_Achievements.registerOre(aSporadic,aMinY,aMaxY,aWeight,aOverworld,aNether,aEnd);
/* 47:34 */ sWeight += this.mWeight;
/* 48: */ }
/* 49: */ }
diff --git a/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java b/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java
index 137ed5d07b..3900fa02cf 100644
--- a/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java
+++ b/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java
@@ -44,7 +44,7 @@
/* 44: */
/* 45: */ public GT_MetaGenerated_Item_02()
/* 46: */ {
-/* 47: 36 */ super("metaitem.02", new OrePrefixes[] { OrePrefixes.toolHeadSword, OrePrefixes.toolHeadPickaxe, OrePrefixes.toolHeadShovel, OrePrefixes.toolHeadAxe, OrePrefixes.toolHeadHoe, OrePrefixes.toolHeadHammer, OrePrefixes.toolHeadFile, OrePrefixes.toolHeadSaw, OrePrefixes.toolHeadDrill, OrePrefixes.toolHeadChainsaw, OrePrefixes.toolHeadWrench, OrePrefixes.toolHeadUniversalSpade, OrePrefixes.toolHeadSense, OrePrefixes.toolHeadPlow, OrePrefixes.toolHeadArrow, OrePrefixes.toolHeadBuzzSaw, null, null, null, OrePrefixes.wireFine, OrePrefixes.gearGtSmall, OrePrefixes.rotor, OrePrefixes.stickLong, OrePrefixes.springSmall, OrePrefixes.spring, OrePrefixes.arrowGtWood, OrePrefixes.arrowGtPlastic, OrePrefixes.gemChipped, OrePrefixes.gemFlawed, OrePrefixes.gemFlawless, OrePrefixes.gemExquisite, OrePrefixes.gearGt });
+/* 47: 36 */ super("metaitem.02", new OrePrefixes[] { OrePrefixes.toolHeadSword, OrePrefixes.toolHeadPickaxe, OrePrefixes.toolHeadShovel, OrePrefixes.toolHeadAxe, OrePrefixes.toolHeadHoe, OrePrefixes.toolHeadHammer, OrePrefixes.toolHeadFile, OrePrefixes.toolHeadSaw, OrePrefixes.toolHeadDrill, OrePrefixes.toolHeadChainsaw, OrePrefixes.toolHeadWrench, OrePrefixes.toolHeadUniversalSpade, OrePrefixes.toolHeadSense, OrePrefixes.toolHeadPlow, OrePrefixes.toolHeadArrow, OrePrefixes.toolHeadBuzzSaw, OrePrefixes.turbineBlade , null, null, OrePrefixes.wireFine, OrePrefixes.gearGtSmall, OrePrefixes.rotor, OrePrefixes.stickLong, OrePrefixes.springSmall, OrePrefixes.spring, OrePrefixes.arrowGtWood, OrePrefixes.arrowGtPlastic, OrePrefixes.gemChipped, OrePrefixes.gemFlawed, OrePrefixes.gemFlawless, OrePrefixes.gemExquisite, OrePrefixes.gearGt});
/* 48: 37 */ INSTANCE = this;
/* 49: */
/* 50: 39 */ int tLastID = 0;
diff --git a/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java b/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java
index 155625dd8b..f6ed7f412c 100644
--- a/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java
+++ b/main/java/gregtech/common/items/GT_MetaGenerated_Tool_01.java
@@ -43,6 +43,11 @@ import gregtech.api.enums.ConfigCategories;
/* 42: */ import gregtech.common.tools.GT_Tool_SoftHammer;
import gregtech.common.tools.GT_Tool_Soldering_Iron;
/* 43: */ import gregtech.common.tools.GT_Tool_Sword;
+import gregtech.common.tools.GT_Tool_Turbine;
+import gregtech.common.tools.GT_Tool_Turbine_Huge;
+import gregtech.common.tools.GT_Tool_Turbine_Large;
+import gregtech.common.tools.GT_Tool_Turbine_Normal;
+import gregtech.common.tools.GT_Tool_Turbine_Small;
/* 44: */ import gregtech.common.tools.GT_Tool_UniversalSpade;
/* 45: */ import gregtech.common.tools.GT_Tool_WireCutter;
/* 46: */ import gregtech.common.tools.GT_Tool_Wrench;
@@ -94,6 +99,11 @@ import gregtech.common.tools.GT_Tool_Soldering_Iron;
/* 92: */ public static final short BUZZSAW = 140;
/* 93: */ public static final short SCREWDRIVER_LV = 150;
public static final short SOLDERING_IRON_LV = 160;
+ public static final short TURBINE_SMALL = 170;
+ public static final short TURBINE = 172;
+ public static final short TURBINE_LARGE = 174;
+ public static final short TURBINE_HUGE = 176;
+ public static final short TURBINE_BLADE = 178;
/* 94: */
/* 95: */ public GT_MetaGenerated_Tool_01()
/* 96: */ {
@@ -137,6 +147,11 @@ import gregtech.common.tools.GT_Tool_Soldering_Iron;
/* =4:57 */ addTool(140, "Buzzsaw (LV)", "Not suitable for harvesting Blocks", new GT_Tool_BuzzSaw(), new Object[] { ToolDictNames.craftingToolSaw, new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ARBOR, 2L) });
/* =5:58 */ GregTech_API.registerTool(addTool(150, "Screwdriver (LV)", "Adjusts Covers and Machines", new GT_Tool_Screwdriver_LV(), new Object[] { ToolDictNames.craftingToolScrewdriver, new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L) }), GregTech_API.sScrewdriverList);
/* =6: */ GregTech_API.registerTool(addTool(SOLDERING_IRON_LV, "Soldering Iron (LV)", "Fixes burned out Circuits. Needs soldering materials in inventory", new GT_Tool_Soldering_Iron(), new Object[] { ToolDictNames.craftingToolSolderingIron, new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.FABRICO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L) }), GregTech_API.sSolderingToolList);
+
+ addTool(TURBINE_SMALL, "Small Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Small(), new Object[] {});
+ addTool(TURBINE, "Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Normal(), new Object[] {});
+ addTool(TURBINE_LARGE, "Large Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Large(), new Object[] {});
+ addTool(TURBINE_HUGE, "Huge Turbine", "Turbine Rotors for your power station", new GT_Tool_Turbine_Huge(), new Object[] {});
/* =7:60 */ GT_ModHandler.addCraftingRecipe(INSTANCE.getToolWithStats(24, 1, Materials.Flint, Materials.Stone, null), GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[] { " I ", "SIS", "SSS", Character.valueOf('I'), new ItemStack(Items.flint, 1), Character.valueOf('S'), OrePrefixes.stone });
/* =8:61 */ GT_ModHandler.addCraftingRecipe(INSTANCE.getToolWithStats(24, 1, Materials.Bronze, Materials.Stone, null), GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[] { " I ", "SIS", "SSS", Character.valueOf('I'), OrePrefixes.ingot.get(Materials.Bronze), Character.valueOf('S'), OrePrefixes.stone });
diff --git a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java
index 5f66a7c54b..b139161228 100644
--- a/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java
+++ b/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java
@@ -1,6 +1,7 @@
/* 1: */ package gregtech.common.tileentities.machines.multi;
/* 2: */
-/* 3: */ import gregtech.api.GregTech_API;
+/* 3: */ import gregtech.GT_Mod;
+import gregtech.api.GregTech_API;
/* 4: */ import gregtech.api.enums.Materials;
/* 5: */ import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.Textures;
@@ -225,6 +226,7 @@ import gregtech.api.enums.Textures;
/* 224: */ {
/* 225:151 */ if (++this.mProgresstime >= this.mMaxProgresstime)
/* 226: */ {
+ GT_Mod.instance.achievements.issueAchievement(aBaseMetaTileEntity.getWorld().getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), "steel");
/* 227:152 */ addOutputProducts();
/* 228:153 */ this.mOutputItem1 = null;
/* 229:154 */ this.mOutputItem2 = null;
diff --git a/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java b/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java
index 3249ea4531..9b0b1683c2 100644
--- a/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java
+++ b/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumChest.java
@@ -132,7 +132,7 @@ public class GT_MetaTileEntity_QuantumChest extends GT_MetaTileEntity_TieredMach
this.mInventory[0] = null;
}
}
- if (this.mInventory[1] == null)
+ if (this.mInventory[1] == null&&mItemStack!=null)
{
this.mInventory[1] = mItemStack.copy();
this.mInventory[1].stackSize = Math.min(mItemStack.getMaxStackSize(), this.mItemCount);
@@ -188,12 +188,15 @@ public class GT_MetaTileEntity_QuantumChest extends GT_MetaTileEntity_TieredMach
@Override
public void saveNBTData(NBTTagCompound aNBT) {
aNBT.setInteger("mItemCount", this.mItemCount);
+ if(this.mItemStack!=null)
aNBT.setTag("mItemStack", this.mItemStack.writeToNBT(new NBTTagCompound()));
}
@Override
public void loadNBTData(NBTTagCompound aNBT) {
+ if(aNBT.hasKey("mItemCount"))
this.mItemCount = aNBT.getInteger("mItemCount");
+ if(aNBT.hasKey("mItemStack"))
this.mItemStack = ItemStack.loadItemStackFromNBT((NBTTagCompound) aNBT.getTag("mItemStack"));
}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java b/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java
index 391177bd66..66bed7d5bf 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java
@@ -1,6 +1,7 @@
/* 1: */ package gregtech.common.tools;
/* 2: */
-/* 3: */ import gregtech.api.GregTech_API;
+/* 3: */ import gregtech.GT_Mod;
+import gregtech.api.GregTech_API;
/* 4: */ import gregtech.api.enums.Materials;
import gregtech.api.enums.Textures;
/* 5: */ import gregtech.api.enums.Textures.ItemIcons;
@@ -10,6 +11,7 @@ import gregtech.api.enums.Textures;
/* 8: */ import java.util.Map;
/* 9: */ import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
/* 10: */ import net.minecraft.item.ItemStack;
/* 11: */ import net.minecraft.util.ChatComponentText;
/* 12: */ import net.minecraft.util.EnumChatFormatting;
@@ -87,6 +89,13 @@ import gregtech.api.enums.Textures;
/* 84: */ {
/* 85:82 */ return true;
/* 86: */ }
+
+ public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer)
+/* 117: */ {
+/* 118:117 */ super.onToolCrafted(aStack, aPlayer);
+ GT_Mod.achievements.issueAchievement(aPlayer, "brrrr");
+/* 121: */ }
+
/* 87: */
/* 88: */ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack)
/* 89: */ {
diff --git a/main/java/gregtech/common/tools/GT_Tool_Drill_HV.java b/main/java/gregtech/common/tools/GT_Tool_Drill_HV.java
index a71722a17d..bdf696c0c8 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Drill_HV.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Drill_HV.java
@@ -5,6 +5,7 @@ import gregtech.api.enums.Textures;
/* 4: */ import gregtech.api.enums.Textures.ItemIcons;
/* 5: */ import gregtech.api.interfaces.IIconContainer;
/* 6: */ import gregtech.common.GT_Proxy;
+import net.minecraft.entity.player.EntityPlayer;
/* 7: */ import net.minecraft.item.ItemStack;
/* 8: */
/* 9: */ public class GT_Tool_Drill_HV
@@ -49,6 +50,12 @@ import gregtech.api.enums.Textures;
/* 48: */ {
/* 49:48 */ return 4.0F;
/* 50: */ }
+
+ public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer)
+/* 117: */ {
+/* 118:117 */ super.onToolCrafted(aStack, aPlayer);
+ GT_Mod.achievements.issueAchievement(aPlayer, "highpowerdrill");
+/* 121: */ }
/* 51: */
/* 52: */ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack)
/* 53: */ {
diff --git a/main/java/gregtech/common/tools/GT_Tool_Drill_LV.java b/main/java/gregtech/common/tools/GT_Tool_Drill_LV.java
index 941b3c037b..625f20593c 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Drill_LV.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Drill_LV.java
@@ -122,6 +122,7 @@ import gregtech.api.enums.Textures;
/* 119:118 */ super.onToolCrafted(aStack, aPlayer);
/* 120:119 */ aPlayer.triggerAchievement(AchievementList.buildPickaxe);
/* 121:120 */ aPlayer.triggerAchievement(AchievementList.buildBetterPickaxe);
+ GT_Mod.achievements.issueAchievement(aPlayer, "driltime");
/* 122: */ }
/* 123: */
/* 124: */ public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity)
diff --git a/main/java/gregtech/common/tools/GT_Tool_HardHammer.java b/main/java/gregtech/common/tools/GT_Tool_HardHammer.java
index 67cb45ff24..eeb323f8be 100644
--- a/main/java/gregtech/common/tools/GT_Tool_HardHammer.java
+++ b/main/java/gregtech/common/tools/GT_Tool_HardHammer.java
@@ -1,6 +1,7 @@
/* 1: */ package gregtech.common.tools;
/* 2: */
-/* 3: */ import gregtech.api.GregTech_API;
+/* 3: */ import gregtech.GT_Mod;
+import gregtech.api.GregTech_API;
/* 4: */ import gregtech.api.enums.Materials;
/* 5: */ import gregtech.api.interfaces.IIconContainer;
/* 6: */ import gregtech.api.items.GT_MetaGenerated_Tool;
@@ -20,6 +21,7 @@
/* 18: */ import net.minecraft.entity.monster.EntityIronGolem;
/* 19: */ import net.minecraft.entity.player.EntityPlayer;
/* 20: */ import net.minecraft.item.ItemStack;
+import net.minecraft.stats.AchievementList;
/* 21: */ import net.minecraft.util.ChatComponentText;
/* 22: */ import net.minecraft.util.EnumChatFormatting;
/* 23: */ import net.minecraft.util.IChatComponent;
@@ -179,6 +181,12 @@ import net.minecraftforge.event.world.BlockEvent;
/* 176: */ {
/* 177:173 */ return new ChatComponentText(EnumChatFormatting.RED + aEntity.getCommandSenderName() + EnumChatFormatting.WHITE + " was squashed by " + EnumChatFormatting.GREEN + aPlayer.getCommandSenderName() + EnumChatFormatting.WHITE);
/* 178: */ }
+
+ public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer)
+/* 117: */ {
+/* 118:117 */ super.onToolCrafted(aStack, aPlayer);
+ GT_Mod.achievements.issueAchievement(aPlayer, "tools");
+/* 121: */ }
/* 179: */ }
diff --git a/main/java/gregtech/common/tools/GT_Tool_JackHammer.java b/main/java/gregtech/common/tools/GT_Tool_JackHammer.java
index 17f8c6be64..cb50cfbd8d 100644
--- a/main/java/gregtech/common/tools/GT_Tool_JackHammer.java
+++ b/main/java/gregtech/common/tools/GT_Tool_JackHammer.java
@@ -101,6 +101,13 @@ import net.minecraftforge.event.world.BlockEvent;
/* 97: */ }
/* 98: 91 */ return rConversions;
/* 99: */ }
+
+ public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer)
+/* 117: */ {
+/* 118:117 */ super.onToolCrafted(aStack, aPlayer);
+ GT_Mod.achievements.issueAchievement(aPlayer, "hammertime");
+/* 121: */ }
+
/* 100: */
/* 101: */ public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack)
/* 102: */ {
diff --git a/main/java/gregtech/common/tools/GT_Tool_Pickaxe.java b/main/java/gregtech/common/tools/GT_Tool_Pickaxe.java
index e4bca9b7af..d535fd4a48 100644
--- a/main/java/gregtech/common/tools/GT_Tool_Pickaxe.java
+++ b/main/java/gregtech/common/tools/GT_Tool_Pickaxe.java
@@ -118,6 +118,7 @@
/* 118:117 */ super.onToolCrafted(aStack, aPlayer);
/* 119:118 */ aPlayer.triggerAchievement(AchievementList.buildPickaxe);
/* 120:119 */ aPlayer.triggerAchievement(AchievementList.buildBetterPickaxe);
+ GT_Mod.achievements.issueAchievement(aPlayer, "flintpick");
/* 121: */ }
/* 122: */
/* 123: */ public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity)
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine.java b/main/java/gregtech/common/tools/GT_Tool_Turbine.java
new file mode 100644
index 0000000000..bf79012661
--- /dev/null
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine.java
@@ -0,0 +1,25 @@
+package gregtech.common.tools;
+
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.items.GT_MetaGenerated_Tool;
+import net.minecraft.block.Block;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.ChatComponentText;
+import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.util.IChatComponent;
+
+public abstract class GT_Tool_Turbine extends GT_Tool{
+ public abstract float getBaseDamage();
+ @Override public boolean isMinableBlock(Block aBlock, byte aMetaData) {return false;}
+ @Override public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack) {return aIsToolHead ? Textures.ItemIcons.TURBINE : null;}
+ @Override public short[] getRGBa(boolean aIsToolHead, ItemStack aStack) {return aIsToolHead ? GT_MetaGenerated_Tool.getPrimaryMaterial(aStack).mRGBa : null;}
+ public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity)
+ {
+ return new ChatComponentText(EnumChatFormatting.GREEN + aPlayer.getCommandSenderName() + EnumChatFormatting.WHITE + " put " + EnumChatFormatting.RED +
+ aEntity.getCommandSenderName()+"s" + EnumChatFormatting.WHITE + " head into a turbine");
+ }
+ public abstract float getSpeedMultiplier();
+ public abstract float getMaxDurabilityMultiplier();
+}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java b/main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java
new file mode 100644
index 0000000000..0bf3b783a5
--- /dev/null
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java
@@ -0,0 +1,7 @@
+package gregtech.common.tools;
+
+public class GT_Tool_Turbine_Huge extends GT_Tool_Turbine {
+ @Override public float getSpeedMultiplier() {return 4.0F;}
+ @Override public float getMaxDurabilityMultiplier() {return 4.0F;}
+ @Override public float getBaseDamage() {return 3.0F;}
+}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java b/main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java
new file mode 100644
index 0000000000..57947aea7a
--- /dev/null
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java
@@ -0,0 +1,7 @@
+package gregtech.common.tools;
+
+public class GT_Tool_Turbine_Large extends GT_Tool_Turbine {
+ @Override public float getSpeedMultiplier() {return 3.0F;}
+ @Override public float getMaxDurabilityMultiplier() {return 3.0F;}
+ @Override public float getBaseDamage() {return 5.0F;}
+}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java b/main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java
new file mode 100644
index 0000000000..8327a74332
--- /dev/null
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java
@@ -0,0 +1,7 @@
+package gregtech.common.tools;
+
+public class GT_Tool_Turbine_Normal extends GT_Tool_Turbine {
+ @Override public float getSpeedMultiplier() {return 2.0F;}
+ @Override public float getMaxDurabilityMultiplier() {return 2.0F;}
+ @Override public float getBaseDamage() {return 2.5F;}
+}
diff --git a/main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java b/main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java
new file mode 100644
index 0000000000..fb93a2b290
--- /dev/null
+++ b/main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java
@@ -0,0 +1,7 @@
+package gregtech.common.tools;
+
+public class GT_Tool_Turbine_Small extends GT_Tool_Turbine {
+ @Override public float getSpeedMultiplier() {return 1.0F;}
+ @Override public float getMaxDurabilityMultiplier() {return 1.0F;}
+ @Override public float getBaseDamage() {return 0.0F;}
+}
diff --git a/main/java/gregtech/common/tools/GT_Tool_UniversalSpade.java b/main/java/gregtech/common/tools/GT_Tool_UniversalSpade.java
index 78c4fecb4c..431654124d 100644
--- a/main/java/gregtech/common/tools/GT_Tool_UniversalSpade.java
+++ b/main/java/gregtech/common/tools/GT_Tool_UniversalSpade.java
@@ -1,11 +1,14 @@
/* 1: */ package gregtech.common.tools;
/* 2: */
-/* 3: */ import gregtech.api.GregTech_API;
+/* 3: */ import gregtech.GT_Mod;
+import gregtech.api.GregTech_API;
/* 4: */ import gregtech.api.enums.Materials;
/* 5: */ import gregtech.api.interfaces.IIconContainer;
/* 6: */ import gregtech.api.items.GT_MetaGenerated_Tool;
/* 7: */ import gregtech.common.items.behaviors.Behaviour_Crowbar;
+
/* 8: */ import java.util.Map;
+
/* 9: */ import net.minecraft.block.Block;
/* 10: */ import net.minecraft.block.material.Material;
/* 11: */ import net.minecraft.entity.EntityLivingBase;
@@ -124,6 +127,7 @@
/* 124: */ {
/* 125:122 */ super.onToolCrafted(aStack, aPlayer);
/* 126:123 */ aPlayer.triggerAchievement(AchievementList.buildSword);
+ GT_Mod.achievements.issueAchievement(aPlayer, "unitool");
/* 127: */ }
/* 128: */
/* 129: */ public IChatComponent getDeathMessage(EntityLivingBase aPlayer, EntityLivingBase aEntity)