From 1209f95bc278f81de4143a619696048c655313e8 Mon Sep 17 00:00:00 2001 From: Blood-Asp Date: Sat, 16 May 2015 02:51:56 +0200 Subject: update 5.08.13 Turbine items and achievements --- main/java/gregtech/common/GT_Proxy.java | 11 ++++++++-- .../gregtech/common/GT_Worldgen_GT_Ore_Layer.java | 10 ++++++++- .../common/items/GT_MetaGenerated_Item_02.java | 2 +- .../common/items/GT_MetaGenerated_Tool_01.java | 15 +++++++++++++ .../GT_MetaTileEntity_BronzeBlastFurnace.java | 4 +++- .../storage/GT_MetaTileEntity_QuantumChest.java | 5 ++++- .../gregtech/common/tools/GT_Tool_Chainsaw_LV.java | 11 +++++++++- .../gregtech/common/tools/GT_Tool_Drill_HV.java | 7 ++++++ .../gregtech/common/tools/GT_Tool_Drill_LV.java | 1 + .../gregtech/common/tools/GT_Tool_HardHammer.java | 10 ++++++++- .../gregtech/common/tools/GT_Tool_JackHammer.java | 7 ++++++ .../gregtech/common/tools/GT_Tool_Pickaxe.java | 1 + .../gregtech/common/tools/GT_Tool_Turbine.java | 25 ++++++++++++++++++++++ .../common/tools/GT_Tool_Turbine_Huge.java | 7 ++++++ .../common/tools/GT_Tool_Turbine_Large.java | 7 ++++++ .../common/tools/GT_Tool_Turbine_Normal.java | 7 ++++++ .../common/tools/GT_Tool_Turbine_Small.java | 7 ++++++ .../common/tools/GT_Tool_UniversalSpade.java | 6 +++++- 18 files changed, 134 insertions(+), 9 deletions(-) create mode 100644 main/java/gregtech/common/tools/GT_Tool_Turbine.java create mode 100644 main/java/gregtech/common/tools/GT_Tool_Turbine_Huge.java create mode 100644 main/java/gregtech/common/tools/GT_Tool_Turbine_Large.java create mode 100644 main/java/gregtech/common/tools/GT_Tool_Turbine_Normal.java create mode 100644 main/java/gregtech/common/tools/GT_Tool_Turbine_Small.java (limited to 'main/java/gregtech/common') 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) -- cgit