diff options
author | Martin Robertz <dream-master@gmx.net> | 2021-01-25 18:47:09 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-25 18:47:09 +0100 |
commit | c1c87c9f07db900cb3c59e32b2c5032d94e637eb (patch) | |
tree | 66e32403f5c10be3c74735c36d4e26c831c4cfa6 /src/main/java/com/detrav/items | |
parent | 88287f7769c4e1bf122175a698bb3ac1726f1f5d (diff) | |
parent | c52efb53533390f7e3b3ef14558501121b35affe (diff) | |
download | GT5-Unofficial-c1c87c9f07db900cb3c59e32b2c5032d94e637eb.tar.gz GT5-Unofficial-c1c87c9f07db900cb3c59e32b2c5032d94e637eb.tar.bz2 GT5-Unofficial-c1c87c9f07db900cb3c59e32b2c5032d94e637eb.zip |
Merge pull request #12 from GTNewHorizons/selectable_ores
Selectable ores - Inspired by Gregicality
Diffstat (limited to 'src/main/java/com/detrav/items')
-rw-r--r-- | src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java | 355 | ||||
-rw-r--r-- | src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProspector.java (renamed from src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java) | 65 | ||||
-rw-r--r-- | src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProspector.java (renamed from src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java) | 50 | ||||
-rw-r--r-- | src/main/java/com/detrav/items/processing/ProcessingDetravToolProspector.java (renamed from src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java) | 21 | ||||
-rw-r--r-- | src/main/java/com/detrav/items/tools/DetravProspector.java (renamed from src/main/java/com/detrav/items/tools/DetravProPick.java) | 16 | ||||
-rw-r--r-- | src/main/java/com/detrav/items/tools/DetravToolElectricProspector.java (renamed from src/main/java/com/detrav/items/tools/DetravToolElectricProPick.java) | 6 | ||||
-rw-r--r-- | src/main/java/com/detrav/items/tools/DetravToolElectricProspectorBase.java (renamed from src/main/java/com/detrav/items/tools/DetravToolElectricProPickBase.java) | 8 |
7 files changed, 136 insertions, 385 deletions
diff --git a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java index 7144454b16..96ec1842ef 100644 --- a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java +++ b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java @@ -4,10 +4,9 @@ import java.util.List; import com.detrav.DetravScannerMod; import com.detrav.enums.DetravToolDictNames; -import com.detrav.items.tools.DetravProPick; -import com.detrav.items.tools.DetravToolElectricProPick; +import com.detrav.items.tools.DetravProspector; +import com.detrav.items.tools.DetravToolElectricProspector; -import cpw.mods.fml.common.Loader; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.TC_Aspects; @@ -20,9 +19,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.StatCollector; -import net.minecraftforge.fluids.FluidStack; - -import static com.detrav.DetravScannerMod.DEBUGBUILD; /** * Created by wital_000 on 19.03.2016. @@ -33,137 +29,59 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { public DetravMetaGeneratedTool01() { super("detrav.metatool.01"); INSTANCE = this; - addTool(0,"Prospector's Scanner(ULV)","", new DetravProPick(0), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - addTool(2,"Prospector's Scanner(LV)","", new DetravProPick(1), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - addTool(4,"Prospector's Scanner(MV)","", new DetravProPick(2), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - addTool(6,"Prospector's Scanner(HV)","", new DetravProPick(3), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - addTool(8,"Prospector's Scanner(EV)","", new DetravProPick(4), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - addTool(10,"Prospector's Scanner(IV)","", new DetravProPick(5), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - addTool(12,"Prospector's Scanner(LuV)","", new DetravProPick(6), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - addTool(14,"Prospector's Scanner(ZPM)","", new DetravProPick(7), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - addTool(16,"Prospector's Scanner(UV)","", new DetravProPick(8), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - addTool(18,"Prospector's Scanner(UHV)","", new DetravProPick(9), new Object[]{DetravToolDictNames.craftingToolProPick, 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.PERFODIO, 4L)); - - addTool(100, "Electric Prospector's Scanner (LuV)", "", new DetravToolElectricProPick(6), 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 (ZPM)", "", new DetravToolElectricProPick(7), 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 (UV)", "", new DetravToolElectricProPick(8), 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, "Electric Prospector's Scanner (UHV)", "", new DetravToolElectricProPick(9), 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(0, "Prospector's Scanner(ULV)", "", new DetravProspector(0), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + addTool(2, "Prospector's Scanner(LV)", "", new DetravProspector(1), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + addTool(4, "Prospector's Scanner(MV)", "", new DetravProspector(2), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + addTool(6, "Prospector's Scanner(HV)", "", new DetravProspector(3), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + addTool(8, "Prospector's Scanner(EV)", "", new DetravProspector(4), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + addTool(10, "Prospector's Scanner(IV)", "", new DetravProspector(5), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + addTool(12, "Prospector's Scanner(LuV)", "", new DetravProspector(6), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + addTool(14, "Prospector's Scanner(ZPM)", "", new DetravProspector(7), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + addTool(16, "Prospector's Scanner(UV)", "", new DetravProspector(8), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + addTool(18, "Prospector's Scanner(UHV)", "", new DetravProspector(9), DetravToolDictNames.craftingToolProspector.toString(), 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.PERFODIO, 4L)); + + addTool(100, "Electric Prospector's Scanner (LuV)", "", new DetravToolElectricProspector(6), DetravToolDictNames.craftingToolElectricProspector, 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 (ZPM)", "", new DetravToolElectricProspector(7), DetravToolDictNames.craftingToolElectricProspector, 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 (UV)", "", new DetravToolElectricProspector(8), DetravToolDictNames.craftingToolElectricProspector, 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, "Electric Prospector's Scanner (UHV)", "", new DetravToolElectricProspector(9), DetravToolDictNames.craftingToolElectricProspector, 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)); setCreativeTab(DetravScannerMod.TAB_DETRAV); } + @SuppressWarnings("unchecked") public void addAdditionalToolTips(List aList, ItemStack aStack, EntityPlayer aPlayer) { - //getElectricStats() - //super.addAdditionalToolTips(); long tMaxDamage = getToolMaxDamage(aStack); Materials tMaterial = getPrimaryMaterial(aStack); IToolStats tStats = getToolStats(aStack); int tOffset = aList.size(); - //getElectricStats(aStack) != null ? 2 : 1; - if (tStats != null) { - String name = aStack.getUnlocalizedName(); - String num = name.substring("gt.detrav.metatool.01.".length()); - int meta = Integer.parseInt(num); - int range = getHarvestLevel(aStack, "")/2+(meta/4); - if ((range % 2) == 0 ) { - range += 1; - } - if (meta<100) { - aList.add(tOffset + 0, EnumChatFormatting.WHITE + StatCollector.translateToLocal("tooltip.detrav.scanner.durability") + EnumChatFormatting.GREEN + Long.toString(tMaxDamage - getToolDamage(aStack)) + " / " + Long.toString(tMaxDamage) + EnumChatFormatting.GRAY); - aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.getLocalizedNameForItem("%material") + EnumChatFormatting.GRAY); - aList.add(tOffset + 2, EnumChatFormatting.WHITE + StatCollector.translateToLocal("tooltip.detrav.scanner.range") + - Integer.toString(range) + - "x"+ - Integer.toString(range) + - EnumChatFormatting.GRAY); - aList.add(tOffset + 3, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.0") + EnumChatFormatting.GRAY); - aList.add(tOffset + 4, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.1") + EnumChatFormatting.GRAY); - aList.add(tOffset + 5, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.success.chance")+EnumChatFormatting.RESET+Integer.toString(((((1+meta)*8) <= 100)? ((1+meta)*8) : 100))+EnumChatFormatting.GRAY+"%"); - aList.add(tOffset + 6, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.distance.0")); - aList.add(tOffset + 7, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.distance.1")); - - /*aList.add(tOffset + 4, "Traces: 1-9"); - aList.add(tOffset + 5, "Small: 10-29"); - aList.add(tOffset + 6, "Medium: 30-59"); - aList.add(tOffset + 7, "Large: 60-99"); - aList.add(tOffset + 8, "Very large: 100-***");*/ - }else if (meta >=100 && meta<200) { - aList.add(tOffset + 0, EnumChatFormatting.WHITE + StatCollector.translateToLocal("tooltip.detrav.scanner.durability") + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY); - aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.getLocalizedNameForItem("%material") + EnumChatFormatting.GRAY); - aList.add(tOffset + 2, EnumChatFormatting.WHITE + StatCollector.translateToLocal("tooltip.detrav.scanner.range") + EnumChatFormatting.YELLOW + (getHarvestLevel(aStack, "") * 2 + 1) + "x" + (getHarvestLevel(aStack, "") * 2 + 1) + EnumChatFormatting.GRAY); - aList.add(tOffset + 3, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.0")); - aList.add(tOffset + 4, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.1")); - aList.add(tOffset + 5, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.2")); - } - - /* unused - case 106: - case 107: - aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Loss/Tick EU: " + EnumChatFormatting.GREEN + getElectricStatsLoss(aStack) + EnumChatFormatting.GRAY); - aList.add(tOffset + 1, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY); - aList.add(tOffset + 2, "Can use as normal battery"); - aList.add(tOffset + 3, "x4 charge speed for tools"); - aList.add(tOffset + 4, "Right click to open GUI"); - break; - case 108: - aList.add(tOffset + 0, EnumChatFormatting.WHITE + "It can configure any programmed circuit" + EnumChatFormatting.GRAY); - break; - case 200: - int count; - count = ((int)(getLevel(aStack,0)*100)); if(count > 0) {aList.add(tOffset, "Bonus 0 level: +" + count + "%");tOffset++;} - count = ((int)(getLevel(aStack,1)*100)); if(count > 0) {aList.add(tOffset, "Bonus 1 level: +" + count + "%");tOffset++;} - count = ((int)(getLevel(aStack,2)*100)); if(count > 0) {aList.add(tOffset, "Bonus 2 level: +" + count + "%");tOffset++;} - count = ((int)(getLevel(aStack,3)*100)); if(count > 0) {aList.add(tOffset, "Bonus 3 level: +" + count + "%");tOffset++;} - count = ((int)(getLevel(aStack,4)*100)); if(count > 0) {aList.add(tOffset, "Bonus 4 level: +" + count + "%");tOffset++;} - count = ((int)(getLevel(aStack,5)*100)); if(count > 0) {aList.add(tOffset, "Bonus 5 level: +" + count + "%");tOffset++;} - count = ((int)(getLevel(aStack,6)*100)); if(count > 0) {aList.add(tOffset, "Bonus 6 level: +" + count + "%");tOffset++;} - count = ((int)(getLevel(aStack,7)*100)); if(count > 0) {aList.add(tOffset, "Bonus 7 level: +" + count + "%");tOffset++;} - count = ((int)(getLevel(aStack,8)*100)); if(count > 0) {aList.add(tOffset, "Bonus 8 level: +" + count + "%");tOffset++;} - break; - case 220: - aList.add(tOffset + 0, EnumChatFormatting.WHITE + "Durability: " + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY); - aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.mDefaultLocalName + EnumChatFormatting.YELLOW + " lvl " + getHarvestLevel(aStack, "") + EnumChatFormatting.GRAY); - aList.add(tOffset + 2, "It can suck in fluid"); - FluidStack stack = getFluidStackFromDetravData(aStack); - if(stack!=null && stack.amount >0) - { - aList.add(tOffset +3, "Fluid: "+stack.getLocalizedName()+" : "+stack.amount); - } - else - { - aList.add(tOffset +3, "Fluid: empty"); - } - break; - - } - */ + if (tStats == null) return; + + String name = aStack.getUnlocalizedName(); + String num = name.substring("gt.detrav.metatool.01.".length()); + int meta = Integer.parseInt(num); + int range = getHarvestLevel(aStack, "")/2+(meta/4); + if ((range % 2) == 0 ) { + range += 1; } - } - - public Long getElectricStatsLoss(ItemStack aStack) { - NBTTagCompound aNBT = aStack.getTagCompound(); - if (aNBT != null) { - aNBT = aNBT.getCompoundTag("GT.ToolStats"); - if (aNBT != null && aNBT.getBoolean("Electric")) - return aNBT.getLong("Loss"); + if (meta<100) { + aList.add(tOffset + 0, EnumChatFormatting.WHITE + StatCollector.translateToLocal("tooltip.detrav.scanner.durability") + EnumChatFormatting.GREEN + Long.toString(tMaxDamage - getToolDamage(aStack)) + " / " + Long.toString(tMaxDamage) + EnumChatFormatting.GRAY); + aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.getLocalizedNameForItem("%material") + EnumChatFormatting.GRAY); + aList.add(tOffset + 2, EnumChatFormatting.WHITE + StatCollector.translateToLocal("tooltip.detrav.scanner.range") + Integer.toString(range) + "x"+ Integer.toString(range) + EnumChatFormatting.GRAY); + aList.add(tOffset + 3, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.0") + EnumChatFormatting.GRAY); + aList.add(tOffset + 4, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.1") + EnumChatFormatting.GRAY); + aList.add(tOffset + 5, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.success.chance")+EnumChatFormatting.RESET+Integer.toString(((((1+meta)*8) <= 100)? ((1+meta)*8) : 100))+EnumChatFormatting.GRAY+"%"); + aList.add(tOffset + 6, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.distance.0")); + aList.add(tOffset + 7, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.distance.1")); + + } else if (meta >=100 && meta<200) { + aList.add(tOffset + 0, EnumChatFormatting.WHITE + StatCollector.translateToLocal("tooltip.detrav.scanner.durability") + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " / " + tMaxDamage + EnumChatFormatting.GRAY); + aList.add(tOffset + 1, EnumChatFormatting.WHITE + tMaterial.getLocalizedNameForItem("%material") + EnumChatFormatting.GRAY); + aList.add(tOffset + 2, EnumChatFormatting.WHITE + StatCollector.translateToLocal("tooltip.detrav.scanner.range") + EnumChatFormatting.YELLOW + (getHarvestLevel(aStack, "") * 2 + 1) + "x" + (getHarvestLevel(aStack, "") * 2 + 1) + EnumChatFormatting.GRAY); + aList.add(tOffset + 3, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.0")); + aList.add(tOffset + 4, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.1")); + aList.add(tOffset + 5, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.2")); + aList.add(tOffset + 6, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.3")); } - 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, long durability) { - ItemStack result = getToolWithStats(aToolID, aAmount, aPrimaryMaterial, aSecondaryMaterial, aElectricArray); - NBTTagCompound aNBT = result.getTagCompound(); - if (aNBT != null) { - aNBT = aNBT.getCompoundTag("GT.ToolStats"); - if (aNBT != null && aNBT.getBoolean("Electric")) { - aNBT.setLong("Loss", aLoss); - } - aNBT.setLong("MaxDamage", durability); - } - return result; } public Long getToolGTDetravData(ItemStack aStack) { @@ -188,183 +106,52 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { return false; } - public void setLevelToItemStack(ItemStack aStack, int level, float percent) - { - if(aStack == null) return; - NBTTagCompound aNBT = aStack.getTagCompound(); - if(aNBT == null) { - aNBT = new NBTTagCompound(); - NBTTagCompound detravLevel = new NBTTagCompound(); - aNBT.setTag("DetravLevel", detravLevel); - aStack.setTagCompound(aNBT); - } - { - NBTTagCompound detravLevel = aNBT.getCompoundTag("DetravLevel"); - if (detravLevel == null || hasnolevel(detravLevel)) { - detravLevel = new NBTTagCompound(); - aNBT.setTag("DetravLevel", detravLevel); - } - detravLevel.setFloat("level"+Integer.toString(level),percent); - } - } - - - private boolean hasnolevel(NBTTagCompound detravLevel) - { - for(int i=0;i<9;i++) - { - if(detravLevel.hasKey("level"+Integer.toString(i))) - return false; - } - return true; - } - - public float getLevel(ItemStack aStack, int level) - { - if(aStack == null) return 0; - NBTTagCompound aNBT = aStack.getTagCompound(); - if(aNBT ==null) return 0; - NBTTagCompound detravLevel = aNBT.getCompoundTag("DetravLevel"); - if(detravLevel == null) return 0; - return detravLevel.getFloat("level"+Integer.toString(level)); - } - - public boolean setItemStackToDetravData(ItemStack aStack, ItemStack what) - { - if(aStack == null) return false; - NBTTagCompound aNBT = aStack.getTagCompound(); - if(aNBT == null) { - aNBT = new NBTTagCompound(); - NBTTagCompound detravData = new NBTTagCompound(); - aNBT.setTag("DetravData", detravData); - aStack.setTagCompound(aNBT); - } - { - NBTTagCompound detravData = aNBT.getCompoundTag("DetravData"); - if (detravData == null || detravData.getShort("id") == 0) { - detravData = new NBTTagCompound(); - aNBT.setTag("DetravData", detravData); - } - if (what == null) - aNBT.removeTag("DetravData"); - else - what.writeToNBT(detravData); - return true; - } - } - - public ItemStack getItemStackFromDetravData(ItemStack aStack) - { - if(aStack == null) return null; - NBTTagCompound aNBT = aStack.getTagCompound(); - if(aNBT ==null) return null; - NBTTagCompound detravData = aNBT.getCompoundTag("DetravData"); - if(detravData == null) return null; - return ItemStack.loadItemStackFromNBT(detravData); - } - - - public boolean setFluidStackToDetravData(ItemStack aStack, FluidStack what) - { - if(aStack == null) return false; - NBTTagCompound aNBT = aStack.getTagCompound(); - if(aNBT == null) { - aNBT = new NBTTagCompound(); - NBTTagCompound detravData = new NBTTagCompound(); - aNBT.setTag("DetravData", detravData); - aStack.setTagCompound(aNBT); - } - { - NBTTagCompound detravData = aNBT.getCompoundTag("DetravData"); - if (detravData == null || detravData.getShort("id") == 0) { - detravData = new NBTTagCompound(); - aNBT.setTag("DetravData", detravData); - } - if (what == null) - aNBT.removeTag("DetravData"); - else - what.writeToNBT(detravData); - return true; - } - } - - public FluidStack getFluidStackFromDetravData(ItemStack aStack) - { - if(aStack == null) return null; - NBTTagCompound aNBT = aStack.getTagCompound(); - if(aNBT ==null) return null; - NBTTagCompound detravData = aNBT.getCompoundTag("DetravData"); - if(detravData == null) return null; - return FluidStack.loadFluidStackFromNBT(detravData); - } - - //SubItems TODO + @SuppressWarnings("unchecked") public void getDetravSubItems(Item item, CreativeTabs detravCreativeTab, List list) { ItemStack dStack; - if (Loader.isModLoaded("dreamcraft")) { + if (DetravScannerMod.isDreamcraftLoaded) { //Materials at tiers - dStack = getToolWithStats(0, 1, Materials.Polycaprolactam, Materials.Polycaprolactam, null); - list.add(dStack); - dStack = getToolWithStats(2, 1, Materials.Steel, Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(2, 1, Materials.Bronze, Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(4, 1, Materials.Manyullyn, Materials.Aluminium, null); - list.add(dStack); - dStack = getToolWithStats(6, 1, Materials.DamascusSteel, Materials.DamascusSteel, null); - list.add(dStack); - dStack = getToolWithStats(8, 1, Materials.Titanium, Materials.Titanium, null); - list.add(dStack); - dStack = getToolWithStats(10, 1, Materials.TungstenSteel, Materials.TungstenSteel, null); - list.add(dStack); - dStack = getToolWithStats(12, 1, Materials.Iridium, Materials.Iridium, null); - list.add(dStack); - dStack = getToolWithStats(12, 1, Materials.Osmium, Materials.Osmium, null); - list.add(dStack); - dStack = getToolWithStats(14, 1, Materials.Neutronium, Materials.Neutronium, null); - list.add(dStack); - - dStack = getToolWithStats(16, 1, Materials.InfinityCatalyst, Materials.InfinityCatalyst, null); - list.add(dStack); - dStack = getToolWithStats(18, 1, Materials.Infinity, Materials.Infinity, null); - list.add(dStack); + list.add(getToolWithStats(0, 1, Materials.Polycaprolactam, Materials.Polycaprolactam, null)); + list.add(getToolWithStats(2, 1, Materials.Steel, Materials.Steel, null)); + list.add(getToolWithStats(2, 1, Materials.Bronze, Materials.Steel, null)); + list.add(getToolWithStats(4, 1, Materials.Manyullyn, Materials.Aluminium, null)); + list.add(getToolWithStats(6, 1, Materials.DamascusSteel, Materials.DamascusSteel, null)); + list.add(getToolWithStats(8, 1, Materials.Titanium, Materials.Titanium, null)); + list.add(getToolWithStats(10, 1, Materials.TungstenSteel, Materials.TungstenSteel, null)); + list.add(getToolWithStats(12, 1, Materials.Iridium, Materials.Iridium, null)); + list.add(getToolWithStats(12, 1, Materials.Osmium, Materials.Osmium, null)); + list.add(getToolWithStats(14, 1, Materials.Neutronium, Materials.Neutronium, null)); + list.add(getToolWithStats(16, 1, Materials.InfinityCatalyst, Materials.InfinityCatalyst, null)); + list.add(getToolWithStats(18, 1, Materials.Infinity, Materials.Infinity, null)); } //Steel for comparison - dStack = getToolWithStats(0,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(2,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(4,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(6,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(8,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(10,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(12,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(14,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(16,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); - dStack = getToolWithStats(18,1,Materials.Steel,Materials.Steel, null); - list.add(dStack); + list.add(getToolWithStats(0,1,Materials.Steel,Materials.Steel, null)); + list.add(getToolWithStats(2,1,Materials.Steel,Materials.Steel, null)); + list.add(getToolWithStats(4,1,Materials.Steel,Materials.Steel, null)); + list.add(getToolWithStats(6,1,Materials.Steel,Materials.Steel, null)); + list.add(getToolWithStats(8,1,Materials.Steel,Materials.Steel, null)); + list.add(getToolWithStats(10,1,Materials.Steel,Materials.Steel, null)); + list.add(getToolWithStats(12,1,Materials.Steel,Materials.Steel, null)); + list.add(getToolWithStats(14,1,Materials.Steel,Materials.Steel, null)); + list.add(getToolWithStats(16,1,Materials.Steel,Materials.Steel, null)); + list.add(getToolWithStats(18,1,Materials.Steel,Materials.Steel, null)); //Electric Scanners dStack = getToolWithStats(100, 1, Materials.Iridium, Materials.TungstenSteel, new long[]{102400000L, GT_Values.V[6], 6L, -1L}); setCharge(dStack,102400000L); list.add(dStack); + dStack = getToolWithStats(102, 1, Materials.Neutronium, Materials.TungstenSteel, new long[]{409600000L, GT_Values.V[7], 7L, -1L}); setCharge(dStack,409600000L); list.add(dStack); - if (Loader.isModLoaded("dreamcraft")) { + if (DetravScannerMod.isDreamcraftLoaded) { dStack = getToolWithStats(104, 1, Materials.InfinityCatalyst, Materials.TungstenSteel, new long[]{1638400000L, GT_Values.V[8], 8L, -1L}); setCharge(dStack, 1638400000L); list.add(dStack); + dStack = getToolWithStats(106, 1, Materials.Infinity, Materials.TungstenSteel, new long[]{6553600000L, GT_Values.V[9], 9L, -1L}); setCharge(dStack, 6553600000L); list.add(dStack); diff --git a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProspector.java index fecec059dc..36f35fb35b 100644 --- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProPick.java +++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProspector.java @@ -1,11 +1,11 @@ package com.detrav.items.behaviours; +import com.detrav.DetravScannerMod; import com.detrav.items.DetravMetaGeneratedTool01; import com.detrav.net.DetravNetwork; -import com.detrav.net.DetravProPickPacket00; +import com.detrav.net.ProspectingPacket; import com.detrav.utils.BartWorksHelper; import com.detrav.utils.GTppHelper; -import cpw.mods.fml.common.Loader; import gregtech.api.items.GT_MetaBase_Item; import gregtech.api.objects.ItemData; import gregtech.api.util.GT_LanguageManager; @@ -20,10 +20,10 @@ import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.ChatComponentText; +import net.minecraft.util.StatCollector; import net.minecraft.world.World; import net.minecraft.world.chunk.Chunk; import net.minecraftforge.fluids.FluidStack; -import net.minecraft.util.StatCollector; import java.util.ArrayList; import java.util.List; @@ -31,9 +31,9 @@ import java.util.List; /** * Created by wital_000 on 19.03.2016. */ -public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPick { +public class BehaviourDetravToolElectricProspector extends BehaviourDetravToolProspector { - public BehaviourDetravToolElectricProPick(int aCosts) { + public BehaviourDetravToolElectricProspector(int aCosts) { super(aCosts); } @@ -64,61 +64,49 @@ public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPi return super.onItemRightClick(aItem, aStack, aWorld, aPlayer); } - //aPlayer.openGui(); - DetravMetaGeneratedTool01 tool = (DetravMetaGeneratedTool01) aItem; - //aWorld.getChunkFromBlockCoords() - int cX = ((int) aPlayer.posX) >> 4; - int cZ = ((int) aPlayer.posZ) >> 4; + final DetravMetaGeneratedTool01 tool = (DetravMetaGeneratedTool01) aItem; + final int cX = ((int) aPlayer.posX) >> 4; + final int cZ = ((int) aPlayer.posZ) >> 4; int size = aItem.getHarvestLevel(aStack, "") + 1; - List<Chunk> chunks = new ArrayList<Chunk>(); - //aPlayer.addChatMessage(new ChatComponentText("Scanning Begin, wait!")); - //DetravProPickPacket00 packet = new DetravProPickPacket00(); + final List<Chunk> chunks = new ArrayList<>(); + aPlayer.addChatMessage(new ChatComponentText("Scanning...")); + for (int i = -size; i <= size; i++) for (int j = -size; j <= size; j++) if (i != -size && i != size && j != -size && j != size) chunks.add(aWorld.getChunkFromChunkCoords(cX + i, cZ + j)); size = size - 1; - //c.gene - DetravProPickPacket00 packet = new DetravProPickPacket00(); - packet.ptype = (int) data; - packet.chunkX = cX; - packet.chunkZ = cZ; - packet.size = size; - String small_ore_keyword = StatCollector.translateToLocal("detrav.scanner.small_ore.keyword"); + + final ProspectingPacket packet = new ProspectingPacket(cX, cZ, (int) aPlayer.posX, (int) aPlayer.posZ, size, data); + final String small_ore_keyword = StatCollector.translateToLocal("detrav.scanner.small_ore.keyword"); for (Chunk c : chunks) { for (int x = 0; x < 16; x++) for (int z = 0; z < 16; z++) { - int ySize = c.getHeightValue(x, z);//(int)aPlayer.posY;//c.getHeightValue(x, z); + final int ySize = c.getHeightValue(x, z); for (int y = 1; y < ySize; y++) { switch (data) { case 0: case 1: - Block tBlock = c.getBlock(x, y, z); + final Block tBlock = c.getBlock(x, y, z); short tMetaID = (short) c.getBlockMetadata(x, y, z); if (tBlock instanceof GT_Block_Ores_Abstract) { TileEntity tTileEntity = c.getTileEntityUnsafe(x, y, z); - if ((tTileEntity != null) - && (tTileEntity instanceof GT_TileEntity_Ores) - && ((GT_TileEntity_Ores) tTileEntity).mNatural == true) { + if ((tTileEntity instanceof GT_TileEntity_Ores) && ((GT_TileEntity_Ores) tTileEntity).mNatural) { tMetaID = (short) ((GT_TileEntity_Ores) tTileEntity).getMetaData(); try { - - String name = GT_LanguageManager.getTranslation( - tBlock.getUnlocalizedName() + "." + tMetaID + ".name"); - if (name.startsWith(small_ore_keyword)) if (data != 1) continue; + String name = GT_LanguageManager.getTranslation(tBlock.getUnlocalizedName() + "." + tMetaID + ".name"); + if (data != 1 && name.startsWith(small_ore_keyword)) continue; packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, tMetaID); } catch (Exception e) { String name = tBlock.getUnlocalizedName() + "."; - if (name.contains(".small.")) if (data != 1) continue; + if (data != 1 && name.contains(".small.")) continue; packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, tMetaID); } } - } else if (Loader.isModLoaded("miscutils") && GTppHelper.isGTppBlock(tBlock)) { - short meta = GTppHelper.getGTppMeta(tBlock); - packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, meta); - } else if (Loader.isModLoaded("bartworks") && BartWorksHelper.isOre(tBlock)) { - if (data != 1 && BartWorksHelper.isSmallOre(tBlock)) - continue; + } else if (DetravScannerMod.isGTppLoaded && GTppHelper.isGTppBlock(tBlock)) { + packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, GTppHelper.getGTppMeta(tBlock)); + } else if (DetravScannerMod.isBartWorksLoaded && BartWorksHelper.isOre(tBlock)) { + if (data != 1 && BartWorksHelper.isSmallOre(tBlock)) continue; packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, BartWorksHelper.getMetaFromBlock(c, x, y, z, tBlock)); } else if (data == 1) { ItemData tAssotiation = GT_OreDictUnificator.getAssociation(new ItemStack(tBlock, 1, tMetaID)); @@ -133,8 +121,8 @@ public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPi } FluidStack fStack = GT_UndergroundOil.undergroundOil(aWorld.getChunkFromBlockCoords(c.xPosition * 16 + x, c.zPosition * 16 + z), -1); if (fStack.amount > 0) { - packet.addBlock(c.xPosition * 16 + x, 2, c.zPosition * 16 + z, (short) fStack.amount); packet.addBlock(c.xPosition * 16 + x, 1, c.zPosition * 16 + z, (short) fStack.getFluidID()); + packet.addBlock(c.xPosition * 16 + x, 2, c.zPosition * 16 + z, (short) fStack.amount); } break; case 3: @@ -183,14 +171,11 @@ public class BehaviourDetravToolElectricProPick extends BehaviourDetravToolProPi return true; } else { - //if (aWorld.getBlock(aX, aY, aZ).getMaterial() == Material.rock || aWorld.getBlock(aX, aY, aZ) == GregTech_API.sBlockOres1) { if (!aWorld.isRemote) { prospectSingleChunk( (DetravMetaGeneratedTool01) aItem, aStack, aPlayer, aWorld, aX, aY, aZ ); } return true; } - //} - //return false; } if (data < 3) if (!aWorld.isRemote) { diff --git a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProspector.java index 19cbe655f5..a2961f5689 100644 --- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProPick.java +++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolProspector.java @@ -4,7 +4,6 @@ import com.detrav.DetravScannerMod; import com.detrav.items.DetravMetaGeneratedTool01; import com.detrav.utils.BartWorksHelper; import com.detrav.utils.GTppHelper; -import cpw.mods.fml.common.Loader; import gregtech.api.GregTech_API; import gregtech.api.enums.Materials; import gregtech.api.items.GT_MetaBase_Item; @@ -35,14 +34,9 @@ import java.util.SplittableRandom; /** * Created by wital_000 on 19.03.2016. */ -public class BehaviourDetravToolProPick extends Behaviour_None { +public class BehaviourDetravToolProspector extends Behaviour_None { - static final int[] DISTANCEINTS = new int[] { - 0, - 4, - 25, - 64, - }; + static final int[] DISTANCEINTS = new int[] {0, 4, 25, 64}; int distTextIndex; HashMap<String, Integer> ores; @@ -50,7 +44,7 @@ public class BehaviourDetravToolProPick extends Behaviour_None { protected final int mCosts; - public BehaviourDetravToolProPick(int aCosts) { + public BehaviourDetravToolProspector(int aCosts) { mCosts = aCosts; } @@ -92,7 +86,7 @@ public class BehaviourDetravToolProPick extends Behaviour_None { int bZ = aZ; badluck = 0; - ores = new HashMap<String, Integer>(); + ores = new HashMap<>(); int range = ((DetravMetaGeneratedTool01)aItem).getHarvestLevel(aStack, "")/2+(aStack.getItemDamage()/4); if ((range % 2) == 0 ) { @@ -134,7 +128,7 @@ public class BehaviourDetravToolProPick extends Behaviour_None { // Used by Electric scanner when scanning the chunk whacked by the scanner. 100% chance find rate protected void prospectSingleChunk(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ ) { - ores = new HashMap<String, Integer>(); + ores = new HashMap<>(); aPlayer.addChatMessage(new ChatComponentText(EnumChatFormatting.GOLD+ StatCollector.translateToLocal("detrav.scanner.prospecting") + EnumChatFormatting.BLUE + "(" + aX + ", " + aZ + ")" )); processOreProspecting((DetravMetaGeneratedTool01) aItem, aStack, aPlayer, aWorld.getChunkFromBlockCoords(aX, aZ), aWorld.getTileEntity(aX, aY, aZ),GT_OreDictUnificator.getAssociation(new ItemStack(aWorld.getBlock(aX, aY, aZ), 1, aWorld.getBlockMetadata(aX, aY, aZ))), new SplittableRandom(), 1000); @@ -157,9 +151,7 @@ public class BehaviourDetravToolProPick extends Behaviour_None { return; } } else if (tAssotiation!=null){ - //if (aTileEntity instanceof GT_TileEntity_Ores) { try { - GT_TileEntity_Ores gt_entity = (GT_TileEntity_Ores) aTileEntity; String name = tAssotiation.toString(); addChatMassageByValue(aPlayer, -1, name); if (!aPlayer.capabilities.isCreativeMode) @@ -171,7 +163,8 @@ public class BehaviourDetravToolProPick extends Behaviour_None { addChatMassageByValue(aPlayer, -1, "ERROR, lol ^_^"); } }else if (aRandom.nextInt(100) < chance) { - int data = DetravMetaGeneratedTool01.INSTANCE.getToolGTDetravData(aStack).intValue(); + final int data = DetravMetaGeneratedTool01.INSTANCE.getToolGTDetravData(aStack).intValue(); + final String small_ore_keyword = StatCollector.translateToLocal("detrav.scanner.small_ore.keyword"); for (int x = 0; x < 16; x++) for (int z = 0; z < 16; z++) { int ySize = aChunk.getHeightValue(x, z); @@ -181,30 +174,27 @@ public class BehaviourDetravToolProPick extends Behaviour_None { short tMetaID = (short)aChunk.getBlockMetadata(x,y,z); if (tBlock instanceof GT_Block_Ores_Abstract) { TileEntity tTileEntity = aChunk.getTileEntityUnsafe(x,y,z); - if ((tTileEntity!=null) - && (tTileEntity instanceof GT_TileEntity_Ores) - && ((GT_TileEntity_Ores) tTileEntity).mNatural == true) { + if ((tTileEntity instanceof GT_TileEntity_Ores) + && ((GT_TileEntity_Ores) tTileEntity).mNatural) { tMetaID = (short)((GT_TileEntity_Ores) tTileEntity).getMetaData(); try { - String name = Materials.getLocalizedNameForItem( - GT_LanguageManager.getTranslation(tBlock.getUnlocalizedName() + "." + tMetaID + ".name"), tMetaID%1000); - if (name.startsWith(StatCollector.translateToLocal("detrav.scanner.small_ore.keyword"))) if (data != 1) continue; + String name = Materials.getLocalizedNameForItem(GT_LanguageManager.getTranslation(tBlock.getUnlocalizedName() + "." + tMetaID + ".name"), tMetaID%1000); + if (data != 1 && name.startsWith(small_ore_keyword)) continue; addOreToHashMap(name, aPlayer); } catch(Exception e) { String name = tBlock.getUnlocalizedName() + "."; - if (name.contains(".small.")) if (data != 1) continue; + if (data != 1 && name.contains(".small.")) continue; addOreToHashMap(name, aPlayer); } } - } else if (Loader.isModLoaded("miscutils") && GTppHelper.isGTppBlock(tBlock) ) { + } else if (DetravScannerMod.isGTppLoaded && GTppHelper.isGTppBlock(tBlock) ) { String name = GTppHelper.getGTppVeinName(tBlock); if (!name.isEmpty()) addOreToHashMap(name, aPlayer); - } else if (Loader.isModLoaded("bartworks") && BartWorksHelper.isOre(tBlock)){ - if (data != 1 && BartWorksHelper.isSmallOre(tBlock)) - continue; - addOreToHashMap(GT_LanguageManager.getTranslation((BartWorksHelper.isSmallOre(tBlock) ? "bw.blockores.02." : "bw.blockores.01.") + ((BartWorksHelper.getMetaFromBlock(aChunk,x,y,z,tBlock))*-1) + ".name"), aPlayer); + } else if (DetravScannerMod.isBartWorksLoaded && BartWorksHelper.isOre(tBlock)){ + if (data != 1 && BartWorksHelper.isSmallOre(tBlock)) continue; + addOreToHashMap(GT_LanguageManager.getTranslation((BartWorksHelper.isSmallOre(tBlock) ? "bw.blockores.02." : "bw.blockores.01.") + ((BartWorksHelper.getMetaFromBlock(aChunk,x,y,z,tBlock))*-1) + ".name"), aPlayer); } else if (data == 1) { tAssotiation = GT_OreDictUnificator.getAssociation(new ItemStack(tBlock, 1, tMetaID)); if ((tAssotiation != null) && (tAssotiation.mPrefix.toString().startsWith("ore"))) { @@ -212,18 +202,14 @@ public class BehaviourDetravToolProPick extends Behaviour_None { try { tMetaID = (short)tAssotiation.mMaterial.mMaterial.mMetaItemSubID; - String name = Materials.getLocalizedNameForItem(GT_LanguageManager.getTranslation( - "gt.blockores." + tMetaID + ".name"), tMetaID%1000); + String name = Materials.getLocalizedNameForItem(GT_LanguageManager.getTranslation("gt.blockores." + tMetaID + ".name"), tMetaID%1000); addOreToHashMap(name, aPlayer); } catch (Exception e1) { String name = tAssotiation.toString(); addOreToHashMap(name, aPlayer); } } - catch (Exception e) - { - - } + catch (Exception ignored) { } } } diff --git a/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java b/src/main/java/com/detrav/items/processing/ProcessingDetravToolProspector.java index 0dd97fb0fc..df0c37db60 100644 --- a/src/main/java/com/detrav/items/processing/ProcessingDetravToolProPick.java +++ b/src/main/java/com/detrav/items/processing/ProcessingDetravToolProspector.java @@ -15,17 +15,14 @@ import static com.detrav.DetravScannerMod.DEBUGBUILD; /** * Created by wital_000 on 18.03.2016. */ -public class ProcessingDetravToolProPick implements gregtech.api.interfaces.IOreRecipeRegistrator { - public ProcessingDetravToolProPick() { +public class ProcessingDetravToolProspector implements gregtech.api.interfaces.IOreRecipeRegistrator { + public ProcessingDetravToolProspector() { OrePrefixes.toolHeadPickaxe.add(this); - } public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { - if(!aPrefix.doGenerateItem(aMaterial)) - return; - if (DEBUGBUILD) - return; + if(!aPrefix.doGenerateItem(aMaterial)) return; + if (DEBUGBUILD) return; try { //ULV disabled //GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(0, 1, aMaterial, Materials.Lead, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE","CPC","PXP",'E',OreDictionary.getOres("cellSulfuricAcid").get(0),'S',OreDictionary.getOres("cellHydroxide").get(0),'H',OrePrefixes.toolHeadDrill.get(aMaterial),'P',OrePrefixes.plate.get(aMaterial),'C',OrePrefixes.circuit.get(Materials.Primitive),'X',gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList.Sensor_ULV}); @@ -42,11 +39,11 @@ public class ProcessingDetravToolProPick implements gregtech.api.interfaces.IOre GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(18, 1, aMaterial, Materials.Steel, null), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"SHE", "CPC", "PXP", 'E', OreDictionary.getOres("cellHydrofluoricAcid").get(0), 'S', OreDictionary.getOres("cellHydrogenPeroxide").get(0), 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'C', OrePrefixes.circuit.get(Materials.Infinite), 'X', ItemList.Sensor_UHV}); - GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(100, 1, aMaterial, Materials.Iridium, new long[]{102400000L, GT_Values.V[6], 6L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_LuV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_LuV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Master), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Iridium), Character.valueOf('B'), CustomItemList.BatteryHull_LuV_Full.get(1L)}); - GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(102, 1, aMaterial, Materials.Osmium, new long[]{409600000L, GT_Values.V[7], 7L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_ZPM, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_ZPM, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Ultimate), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Osmium), Character.valueOf('B'), CustomItemList.BatteryHull_ZPM_Full.get(1L)}); - GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(104, 1, aMaterial, Materials.Neutronium, new long[]{1638400000L, GT_Values.V[8], 8L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_UV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_UV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Superconductor), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Neutronium), Character.valueOf('B'), CustomItemList.BatteryHull_UV_Full.get(1L)}); - GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(106, 1, aMaterial, Materials.Infinity, new long[]{6553600000L, GT_Values.V[9], 9L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", Character.valueOf('S'), ItemList.Cover_Screen, Character.valueOf('R'), ItemList.Sensor_UHV, Character.valueOf('H'), OrePrefixes.toolHeadDrill.get(aMaterial), Character.valueOf('E'), ItemList.Emitter_UHV, Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Infinite), Character.valueOf('P'), OrePrefixes.plate.get(Materials.Infinity), Character.valueOf('B'), CustomItemList.BatteryHull_UHV_Full.get(1L)}); - }catch (Exception ignored){} + GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(100, 1, aMaterial, Materials.Iridium, new long[]{102400000L, GT_Values.V[6], 6L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", 'S', ItemList.Cover_Screen, 'R', ItemList.Sensor_LuV, 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'E', ItemList.Emitter_LuV, 'C', OrePrefixes.circuit.get(Materials.Master), 'P', OrePrefixes.plate.get(Materials.Iridium), 'B', CustomItemList.BatteryHull_LuV_Full.get(1L)}); + GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(102, 1, aMaterial, Materials.Osmium, new long[]{409600000L, GT_Values.V[7], 7L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", 'S', ItemList.Cover_Screen, 'R', ItemList.Sensor_ZPM, 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'E', ItemList.Emitter_ZPM, 'C', OrePrefixes.circuit.get(Materials.Ultimate), 'P', OrePrefixes.plate.get(Materials.Osmium), 'B', CustomItemList.BatteryHull_ZPM_Full.get(1L)}); + GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(104, 1, aMaterial, Materials.Neutronium, new long[]{1638400000L, GT_Values.V[8], 8L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", 'S', ItemList.Cover_Screen, 'R', ItemList.Sensor_UV, 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'E', ItemList.Emitter_UV, 'C', OrePrefixes.circuit.get(Materials.Superconductor), 'P', OrePrefixes.plate.get(Materials.Neutronium), 'B', CustomItemList.BatteryHull_UV_Full.get(1L)}); + GT_ModHandler.addCraftingRecipe(DetravMetaGeneratedTool01.INSTANCE.getToolWithStats(106, 1, aMaterial, Materials.Infinity, new long[]{6553600000L, GT_Values.V[9], 9L, -1L}), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"EHR", "CSC", "PBP", 'S', ItemList.Cover_Screen, 'R', ItemList.Sensor_UHV, 'H', OrePrefixes.toolHeadDrill.get(aMaterial), 'E', ItemList.Emitter_UHV, 'C', OrePrefixes.circuit.get(Materials.Infinite), 'P', OrePrefixes.plate.get(Materials.Infinity), 'B', CustomItemList.BatteryHull_UHV_Full.get(1L)}); + } catch (Exception ignored){} } } diff --git a/src/main/java/com/detrav/items/tools/DetravProPick.java b/src/main/java/com/detrav/items/tools/DetravProspector.java index 9d3b2de50c..b06d083a87 100644 --- a/src/main/java/com/detrav/items/tools/DetravProPick.java +++ b/src/main/java/com/detrav/items/tools/DetravProspector.java @@ -1,18 +1,17 @@ package com.detrav.items.tools; import com.detrav.enums.Textures01; -import com.detrav.items.behaviours.BehaviourDetravToolProPick; +import com.detrav.items.behaviours.BehaviourDetravToolProspector; -import cpw.mods.fml.common.FMLLog; import gregtech.api.interfaces.IIconContainer; import gregtech.api.items.GT_MetaGenerated_Tool; import net.minecraft.item.ItemStack; -public class DetravProPick extends DetravToolElectricProPickBase { +public class DetravProspector extends DetravToolElectricProspectorBase { - private int tier; + private final int tier; - public DetravProPick(int tier) { + public DetravProspector(int tier) { this.tier=tier; } @@ -20,10 +19,7 @@ public class DetravProPick extends DetravToolElectricProPickBase { return tier; } public float getMaxDurabilityMultiplier() { - /*if (tier == 0) - return 0.02F; - return ((float) Math.pow(tier,((float)tier/5F)))/24F;*/ - double x = tier+1; + double x = tier + 1; return (float) (((float) 0.005D+Math.tanh(Math.pow(x,(x/8D))/25D)*(x/6D))*1.25); } @@ -32,6 +28,6 @@ public class DetravProPick extends DetravToolElectricProPickBase { } public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) { - aItem.addItemBehavior(aID, new BehaviourDetravToolProPick(100)); + aItem.addItemBehavior(aID, new BehaviourDetravToolProspector(100)); } } diff --git a/src/main/java/com/detrav/items/tools/DetravToolElectricProPick.java b/src/main/java/com/detrav/items/tools/DetravToolElectricProspector.java index 6d1140038b..d2bc52b61b 100644 --- a/src/main/java/com/detrav/items/tools/DetravToolElectricProPick.java +++ b/src/main/java/com/detrav/items/tools/DetravToolElectricProspector.java @@ -7,11 +7,11 @@ import net.minecraft.item.ItemStack; /** * Created by wital_000 on 19.03.2016. */ -public class DetravToolElectricProPick extends DetravToolElectricProPickBase { +public class DetravToolElectricProspector extends DetravToolElectricProspectorBase { - private int tier; + private final int tier; - public DetravToolElectricProPick(int tier) { + public DetravToolElectricProspector(int tier) { this.tier=tier; } public int getBaseQuality() { diff --git a/src/main/java/com/detrav/items/tools/DetravToolElectricProPickBase.java b/src/main/java/com/detrav/items/tools/DetravToolElectricProspectorBase.java index 12a28e343c..d2d3cd108a 100644 --- a/src/main/java/com/detrav/items/tools/DetravToolElectricProPickBase.java +++ b/src/main/java/com/detrav/items/tools/DetravToolElectricProspectorBase.java @@ -1,7 +1,7 @@ package com.detrav.items.tools; import com.detrav.enums.Textures01; -import com.detrav.items.behaviours.BehaviourDetravToolElectricProPick; +import com.detrav.items.behaviours.BehaviourDetravToolElectricProspector; import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.damagesources.GT_DamageSources; @@ -28,7 +28,7 @@ import java.util.List; * Created by wital_000 on 19.03.2016. * modified by bartimaeusnek on 05.06.2018 */ -public class DetravToolElectricProPickBase implements IToolStats { +public class DetravToolElectricProspectorBase implements IToolStats { public int getToolDamagePerBlockBreak() { return GT_Mod.gregtechproxy.mHardRock ? 50 : 100; @@ -81,7 +81,7 @@ public class DetravToolElectricProPickBase implements IToolStats { } public String getBreakingSound() { - return (String) GregTech_API.sSoundList.get(Integer.valueOf(0)); + return (String) GregTech_API.sSoundList.get(0); } @Override @@ -169,7 +169,7 @@ public class DetravToolElectricProPickBase implements IToolStats { } public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID) { - aItem.addItemBehavior(aID, new BehaviourDetravToolElectricProPick(getToolDamagePerBlockBreak())); + aItem.addItemBehavior(aID, new BehaviourDetravToolElectricProspector(getToolDamagePerBlockBreak())); } public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer) { |