diff options
author | Detrav <witalyezep@gmail.com> | 2016-04-09 13:13:59 +0300 |
---|---|---|
committer | Detrav <witalyezep@gmail.com> | 2016-04-09 13:13:59 +0300 |
commit | b7f94db4836f05420bf2f42c62c4ff7310242917 (patch) | |
tree | e26ea1b14d3511a2ae04774c5aed5436b96dd3f4 /src/main/java/com | |
parent | d5c10e25a86b10dd6871e11527bf1d3e3d14bed4 (diff) | |
download | GT5-Unofficial-b7f94db4836f05420bf2f42c62c4ff7310242917.tar.gz GT5-Unofficial-b7f94db4836f05420bf2f42c62c4ff7310242917.tar.bz2 GT5-Unofficial-b7f94db4836f05420bf2f42c62c4ff7310242917.zip |
Add Oil mod for electric propick scanner
Diffstat (limited to 'src/main/java/com')
-rw-r--r-- | src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java | 36 | ||||
-rw-r--r-- | src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java | 29 |
2 files changed, 58 insertions, 7 deletions
diff --git a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java index 32c879a1cc..12d4aa88da 100644 --- a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java +++ b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java @@ -8,6 +8,7 @@ import gregtech.api.enums.TC_Aspects; import gregtech.api.interfaces.IToolStats; import gregtech.api.items.GT_MetaGenerated_Tool; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; @@ -24,11 +25,11 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { super("detrav.metatool.01"); INSTANCE = this; addTool(0, "Prospector's Pick", "", new DetravToolProPick(), new Object[]{DetravToolDictNames.craftingToolProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}); - addTool(2, "Repair tools","",new DetravRepairTool(),new Object[]{DetravToolDictNames.craftingRepairTool, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 8L)}); + addTool(2, "Repair tools", "", new DetravRepairTool(), new Object[]{DetravToolDictNames.craftingRepairTool, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 8L)}); addTool(100, "Electric Prospector's Scanner (LV)", "", new DetravToolLVElectricProPick(), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L)); addTool(102, "Electric Prospector's Scanner (MV)", "", new DetravToolMVElectricProPick(), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L)); addTool(104, "Electric Prospector's Scanner (HV)", "", new DetravToolHVElectricProPick(), new Object[]{DetravToolDictNames.craftingToolElectricProPick, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L)); - addTool(106, "Portable Charger","", new DetravToolPortableCharger(), new Object[]{DetravToolDictNames.craftingToolPortableCharger, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.AURAM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L)); + addTool(106, "Portable Charger", "", new DetravToolPortableCharger(), new Object[]{DetravToolDictNames.craftingToolPortableCharger, new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.AURAM, 4L)}, new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L)); setCreativeTab(DetravScannerMod.TAB_DETRAV); } @@ -96,12 +97,13 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { } return 0L; } - public final ItemStack getToolWithStatsPlus(int aToolID, int aAmount, Materials aPrimaryMaterial, Materials aSecondaryMaterial, long[] aElectricArray,long aLoss) { - return getToolWithStatsPlus(aToolID,aAmount,aPrimaryMaterial,aSecondaryMaterial,aElectricArray,aLoss,10000L); + + public final ItemStack getToolWithStatsPlus(int aToolID, int aAmount, Materials aPrimaryMaterial, Materials aSecondaryMaterial, long[] aElectricArray, long aLoss) { + return getToolWithStatsPlus(aToolID, aAmount, aPrimaryMaterial, aSecondaryMaterial, aElectricArray, aLoss, 10000L); } - public final ItemStack getToolWithStatsPlus(int aToolID, int aAmount, Materials aPrimaryMaterial, Materials aSecondaryMaterial, long[] aElectricArray,long aLoss,long durability) { - ItemStack result = getToolWithStats(aToolID,aAmount,aPrimaryMaterial,aSecondaryMaterial,aElectricArray); + public final ItemStack getToolWithStatsPlus(int aToolID, int aAmount, Materials aPrimaryMaterial, Materials aSecondaryMaterial, long[] aElectricArray, long aLoss, long durability) { + ItemStack result = getToolWithStats(aToolID, aAmount, aPrimaryMaterial, aSecondaryMaterial, aElectricArray); NBTTagCompound aNBT = result.getTagCompound(); if (aNBT != null) { aNBT = aNBT.getCompoundTag("GT.ToolStats"); @@ -112,4 +114,26 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { } return result; } + + public Long getToolGTDetravData(ItemStack aStack) { + NBTTagCompound aNBT = aStack.getTagCompound(); + if (aNBT != null) { + aNBT = aNBT.getCompoundTag("GT.ToolStats"); + if (aNBT != null) + return aNBT.getLong("DetravData"); + } + return 0L; + } + + public boolean setToolGTDetravData(ItemStack aStack, long data) { + NBTTagCompound aNBT = aStack.getTagCompound(); + if (aNBT != null) { + aNBT = aNBT.getCompoundTag("GT.ToolStats"); + if (aNBT != null) { + aNBT.setLong("DetravData", data); + return true; + } + } + return false; + } }
\ No newline at end of file diff --git a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java index e7fcb07693..cee11d7907 100644 --- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java +++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java @@ -15,6 +15,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.ChatComponentText; import net.minecraft.world.World; import net.minecraft.world.chunk.Chunk; +import net.minecraftforge.fluids.FluidStack; import java.util.ArrayList; import java.util.List; @@ -31,6 +32,19 @@ public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPi public ItemStack onItemRightClick(GT_MetaBase_Item aItem, ItemStack aStack, World aWorld, EntityPlayer aPlayer) { if (!aWorld.isRemote) { + //Проверяем если нажат шифт + if (aPlayer.isSneaking()) { + long data = DetravMetaGeneratedTool01.INSTANCE.getToolGTDetravData(aStack); + if (data == 0) { + aPlayer.addChatMessage(new ChatComponentText("Set Mode: Oil, Any Block")); + DetravMetaGeneratedTool01.INSTANCE.setToolGTDetravData(aStack, 1); + } else { + aPlayer.addChatMessage(new ChatComponentText("Set Mode: Ore, Any Rock Block")); + DetravMetaGeneratedTool01.INSTANCE.setToolGTDetravData(aStack, 0); + } + return super.onItemRightClick(aItem, aStack, aWorld, aPlayer); + } + //aPlayer.openGui(); DetravMetaGeneratedTool01 tool = (DetravMetaGeneratedTool01) aItem; //aWorld.getChunkFromBlockCoords() @@ -83,6 +97,19 @@ public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPi } else if (value < 1) { aPlayer.addChatMessage(new ChatComponentText(foundTexts[0])); } else - aPlayer.addChatMessage(new ChatComponentText(foundTexts[6] + name +": "+value)); + aPlayer.addChatMessage(new ChatComponentText(foundTexts[6] + name + ": " + value)); + } + + public boolean onItemUse(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ) { + long data = DetravMetaGeneratedTool01.INSTANCE.getToolGTDetravData(aStack); + if (data == 0) + return super.onItemUse(aItem, aStack, aPlayer, aWorld, aX, aY, aZ, aSide, hitX, hitY, hitZ); + if (!aWorld.isRemote) { + FluidStack fStack = getUndergroundOil(aWorld,aX,aZ); + addChatMassageByValue(aPlayer,fStack.amount/5000,fStack.getLocalizedName()); + if (!aPlayer.capabilities.isCreativeMode) + ((DetravMetaGeneratedTool01)aItem).doDamage(aStack, this.mCosts); + } + return true; } }
\ No newline at end of file |