From b68f567fa1353f4d9d852db1e71682cc882ec8ee Mon Sep 17 00:00:00 2001 From: Jason Mitchell Date: Sun, 29 Jan 2023 21:48:33 -0800 Subject: [ci skip] spotlessApply with the new settings --- src/main/java/com/detrav/DetravScannerMod.java | 21 +- .../com/detrav/Detrav_AfterGTPreload_Loader.java | 5 +- .../com/detrav/commands/DetravScannerCommand.java | 103 +++-- src/main/java/com/detrav/enums/Textures01.java | 17 +- .../com/detrav/events/DetravLoginEventHandler.java | 3 +- src/main/java/com/detrav/gui/DetravScannerGUI.java | 74 ++-- src/main/java/com/detrav/gui/OresList.java | 33 +- .../com/detrav/gui/textures/DetravMapTexture.java | 75 ++-- .../detrav/items/DetravMetaGeneratedTool01.java | 339 ++++++++++++---- .../BehaviourDetravToolElectricProspector.java | 253 +++++++----- .../behaviours/BehaviourDetravToolProspector.java | 433 ++++++++++++--------- .../processing/ProcessingDetravToolProspector.java | 175 +++++++-- .../com/detrav/items/tools/DetravProspector.java | 48 +-- .../items/tools/DetravToolElectricProspector.java | 33 +- .../tools/DetravToolElectricProspectorBase.java | 53 ++- src/main/java/com/detrav/net/DetravNetwork.java | 26 +- src/main/java/com/detrav/net/DetravPacket.java | 4 +- .../java/com/detrav/net/ProspectingPacket.java | 119 +++--- src/main/java/com/detrav/proxies/ClientProxy.java | 19 +- src/main/java/com/detrav/proxies/CommonProxy.java | 9 +- src/main/java/com/detrav/proxies/ServerProxy.java | 3 +- .../java/com/detrav/utils/BartWorksHelper.java | 13 +- .../java/com/detrav/utils/DetravCreativeTab.java | 11 +- src/main/java/com/detrav/utils/FluidColors.java | 137 +++---- src/main/java/com/detrav/utils/GTppHelper.java | 93 ++--- 25 files changed, 1288 insertions(+), 811 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/com/detrav/DetravScannerMod.java b/src/main/java/com/detrav/DetravScannerMod.java index 9df8d230e3..a30dabe74d 100644 --- a/src/main/java/com/detrav/DetravScannerMod.java +++ b/src/main/java/com/detrav/DetravScannerMod.java @@ -1,11 +1,14 @@ package com.detrav; -import com.detrav.utils.FluidColors; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraftforge.common.config.Configuration; + import org.apache.logging.log4j.LogManager; import com.detrav.net.DetravNetwork; import com.detrav.proxies.CommonProxy; import com.detrav.utils.DetravCreativeTab; +import com.detrav.utils.FluidColors; import com.detrav.utils.GTppHelper; import cpw.mods.fml.common.Loader; @@ -17,12 +20,13 @@ import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.network.NetworkRegistry; import gregtech.api.GregTech_API; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraftforge.common.config.Configuration; -@Mod(modid = DetravScannerMod.MODID, version = DetravScannerMod.VERSION,dependencies = "required-after:IC2;required-after:gregtech;after:miscutils;after:bartworks") -public class DetravScannerMod -{ +@Mod( + modid = DetravScannerMod.MODID, + version = DetravScannerMod.VERSION, + dependencies = "required-after:IC2;required-after:gregtech;after:miscutils;after:bartworks") +public class DetravScannerMod { + public static final String MODID = "detravscannermod"; public static final String VERSION = "GRADLETOKEN_VERSION"; public static final String DEBUGOVERRIDE = "@false"; @@ -33,7 +37,7 @@ public class DetravScannerMod public static boolean isGTppLoaded = false; public static final org.apache.logging.log4j.Logger Logger = LogManager.getLogger("GT Scanner Mod"); - + @SidedProxy(clientSide = "com.detrav.proxies.ClientProxy", serverSide = "com.detrav.proxies.ServerProxy") public static CommonProxy proxy; @@ -54,8 +58,7 @@ public class DetravScannerMod Configuration Config = new Configuration(event.getSuggestedConfigurationFile()); Config.load(); - - if (Config.hasChanged()){ + if (Config.hasChanged()) { Config.save(); } diff --git a/src/main/java/com/detrav/Detrav_AfterGTPreload_Loader.java b/src/main/java/com/detrav/Detrav_AfterGTPreload_Loader.java index cff4e6eec9..5cdb2bff88 100644 --- a/src/main/java/com/detrav/Detrav_AfterGTPreload_Loader.java +++ b/src/main/java/com/detrav/Detrav_AfterGTPreload_Loader.java @@ -7,13 +7,14 @@ import com.detrav.items.processing.ProcessingDetravToolProspector; * Created by wital_000 on 18.03.2016. */ public class Detrav_AfterGTPreload_Loader implements Runnable { + @Override public void run() { - //items + // items new DetravMetaGeneratedTool01(); - //recipes and etc + // recipes and etc new ProcessingDetravToolProspector(); } diff --git a/src/main/java/com/detrav/commands/DetravScannerCommand.java b/src/main/java/com/detrav/commands/DetravScannerCommand.java index beeccc482f..ba16e47a6c 100644 --- a/src/main/java/com/detrav/commands/DetravScannerCommand.java +++ b/src/main/java/com/detrav/commands/DetravScannerCommand.java @@ -1,9 +1,9 @@ package com.detrav.commands; -import gregtech.api.GregTech_API; -import gregtech.api.enums.Materials; -import gregtech.api.util.GT_LanguageManager; -import gregtech.common.blocks.GT_TileEntity_Ores; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + import net.minecraft.block.Block; import net.minecraft.command.ICommand; import net.minecraft.command.ICommandSender; @@ -12,9 +12,10 @@ import net.minecraft.util.ChatComponentText; import net.minecraft.util.ChunkCoordinates; import net.minecraft.world.chunk.Chunk; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; +import gregtech.api.GregTech_API; +import gregtech.api.enums.Materials; +import gregtech.api.util.GT_LanguageManager; +import gregtech.common.blocks.GT_TileEntity_Ores; /** * Created by wital_000 on 17.03.2016. @@ -52,29 +53,26 @@ public class DetravScannerCommand implements ICommand { String name = null; ArrayList strs = new ArrayList<>(); - for(int i =0; i ores = new HashMap<>(); - for (int x = 0; x < 16; x++) - for (int z = 0; z < 16; z++) { - int ySize = c.getHeightValue(x, z); - for (int y = 1; y < ySize; y++) { - Block b = c.getBlock(x, y, z); - if (b == GregTech_API.sBlockOres1) { - TileEntity entity = c.getTileEntityUnsafe(x, y, z); - if (entity != null) { - GT_TileEntity_Ores gt_entity = (GT_TileEntity_Ores) entity; - short meta = gt_entity.getMetaData(); - String name = Materials.getLocalizedNameForItem( - GT_LanguageManager.getTranslation(b.getUnlocalizedName() + "." + meta + ".name"), meta%1000); - if(name.startsWith("Small")) continue; - if (fName == null || name.toLowerCase().contains(fName)) { - if (!ores.containsKey(name)) - ores.put(name, 1); - else { - int val = ores.get(name); - ores.put(name, val + 1); - } + private void process(ICommandSender sender, int aX, int aZ, String fName) { + Chunk c = sender.getEntityWorld().getChunkFromChunkCoords(aX, aZ); + if (c == null) sender.addChatMessage(new ChatComponentText("ERROR")); + HashMap ores = new HashMap<>(); + for (int x = 0; x < 16; x++) for (int z = 0; z < 16; z++) { + int ySize = c.getHeightValue(x, z); + for (int y = 1; y < ySize; y++) { + Block b = c.getBlock(x, y, z); + if (b == GregTech_API.sBlockOres1) { + TileEntity entity = c.getTileEntityUnsafe(x, y, z); + if (entity != null) { + GT_TileEntity_Ores gt_entity = (GT_TileEntity_Ores) entity; + short meta = gt_entity.getMetaData(); + String name = Materials.getLocalizedNameForItem( + GT_LanguageManager.getTranslation(b.getUnlocalizedName() + "." + meta + ".name"), + meta % 1000); + if (name.startsWith("Small")) continue; + if (fName == null || name.toLowerCase().contains(fName)) { + if (!ores.containsKey(name)) ores.put(name, 1); + else { + int val = ores.get(name); + ores.put(name, val + 1); } } } } - } + + } sender.addChatMessage(new ChatComponentText("*** Detrav Scanner Begin")); - for(String key : ores.keySet()) { + for (String key : ores.keySet()) { sender.addChatMessage(new ChatComponentText(String.format("%s : %d", key, ores.get(key)))); } sender.addChatMessage(new ChatComponentText("*** Detrav Scanner End")); } - private void sendHelpMessage(ICommandSender sender) - { + private void sendHelpMessage(ICommandSender sender) { sender.addChatMessage(new ChatComponentText(getCommandUsage(sender))); } - @Override public boolean canCommandSenderUseCommand(ICommandSender p_71519_1_) { return true; @@ -141,14 +134,14 @@ public class DetravScannerCommand implements ICommand { @Override public List addTabCompletionOptions(ICommandSender sender, String[] args) { - if(args.length !=1) return null; - if("help".startsWith(args[0].toLowerCase())) { + if (args.length != 1) return null; + if ("help".startsWith(args[0].toLowerCase())) { List result = new ArrayList(); result.add("help"); sendHelpMessage(sender); return result; } - return null; + return null; } @Override diff --git a/src/main/java/com/detrav/enums/Textures01.java b/src/main/java/com/detrav/enums/Textures01.java index 714883934c..cc65d4d1ca 100644 --- a/src/main/java/com/detrav/enums/Textures01.java +++ b/src/main/java/com/detrav/enums/Textures01.java @@ -7,12 +7,11 @@ import gregtech.api.interfaces.IIconContainer; * Created by wital_000 on 19.03.2016. */ public class Textures01 { - public static final IIconContainer[] mTextures = new IIconContainer[] - { - new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/PRO_PICK_HEAD"), - new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_LuV_PRO_PICK_HEAD"), - new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_ZPM_PRO_PICK_HEAD"), - new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_UV_PRO_PICK_HEAD"), - new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_UHV_PRO_PICK_HEAD"), - }; -} \ No newline at end of file + + public static final IIconContainer[] mTextures = new IIconContainer[] { + new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/PRO_PICK_HEAD"), + new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_LuV_PRO_PICK_HEAD"), + new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_ZPM_PRO_PICK_HEAD"), + new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_UV_PRO_PICK_HEAD"), + new Textures.ItemIcons.CustomIcon("gt.detrav.metatool.01/ELECTRIC_UHV_PRO_PICK_HEAD"), }; +} diff --git a/src/main/java/com/detrav/events/DetravLoginEventHandler.java b/src/main/java/com/detrav/events/DetravLoginEventHandler.java index 2307db4cee..5178516267 100644 --- a/src/main/java/com/detrav/events/DetravLoginEventHandler.java +++ b/src/main/java/com/detrav/events/DetravLoginEventHandler.java @@ -1,8 +1,9 @@ package com.detrav.events; -import cpw.mods.fml.common.FMLCommonHandler; import net.minecraftforge.common.MinecraftForge; +import cpw.mods.fml.common.FMLCommonHandler; + /** * Created by wital_000 on 18.04.2016. */ diff --git a/src/main/java/com/detrav/gui/DetravScannerGUI.java b/src/main/java/com/detrav/gui/DetravScannerGUI.java index 2eaeb96020..7c3070a55d 100644 --- a/src/main/java/com/detrav/gui/DetravScannerGUI.java +++ b/src/main/java/com/detrav/gui/DetravScannerGUI.java @@ -1,22 +1,23 @@ package com.detrav.gui; -import gregtech.api.util.GT_Utility; -import net.minecraft.util.StatCollector; -import org.lwjgl.opengl.GL11; - -import com.detrav.gui.textures.DetravMapTexture; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import net.minecraft.client.gui.GuiScreen; import net.minecraft.util.ResourceLocation; +import net.minecraft.util.StatCollector; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; +import org.lwjgl.opengl.GL11; + +import com.detrav.gui.textures.DetravMapTexture; +import gregtech.api.util.GT_Utility; /** * Created by wital_000 on 21.03.2016. */ public class DetravScannerGUI extends GuiScreen { + public static final int GUI_ID = 20; private static DetravMapTexture map = null; OresList oresList = null; @@ -44,42 +45,50 @@ public class DetravScannerGUI extends GuiScreen { @Override public void drawScreen(int x, int y, float f) { this.drawDefaultBackground(); - if(map == null) return; + if (map == null) return; int currentWidth = Math.max(map.width, minWidth); int currentHeight = Math.max(map.height, minHeight); - int aX = (this.width - currentWidth-100)/2; - int aY = (this.height - currentHeight)/2; + int aX = (this.width - currentWidth - 100) / 2; + int aY = (this.height - currentHeight) / 2; - if(oresList == null || (prevW != width || prevH != height)) { + if (oresList == null || (prevW != width || prevH != height)) { oresList = new OresList( - this, 100, currentHeight, aY, aY+currentHeight, aX+currentWidth, 10, map.packet.ores, - ((name, invert) -> { - if (map != null) map.loadTexture(null, name, invert); - }) - ); + this, + 100, + currentHeight, + aY, + aY + currentHeight, + aX + currentWidth, + 10, + map.packet.ores, + ((name, invert) -> { if (map != null) map.loadTexture(null, name, invert); })); prevW = width; prevH = height; } // draw back for ores - drawRect(aX,aY,aX+currentWidth+100,aY+currentHeight,0xFFC6C6C6); + drawRect(aX, aY, aX + currentWidth + 100, aY + currentHeight, 0xFFC6C6C6); map.glBindTexture(); - map.draw(aX,aY); + map.draw(aX, aY); oresList.drawScreen(x, y, f); mc.getTextureManager().bindTexture(back); GL11.glColor4f(0xFF, 0xFF, 0xFF, 0xFF); // draw corners - drawTexturedModalRect(aX-5,aY-5,0,0,5,5);//leftTop - drawTexturedModalRect(aX+currentWidth+100,aY-5,171,0,5,5);//RightTop - drawTexturedModalRect(aX-5,aY+currentHeight,0,161,5,5);//leftDown - drawTexturedModalRect(aX+currentWidth+100,aY+currentHeight,171,161,5,5);//RightDown - + drawTexturedModalRect(aX - 5, aY - 5, 0, 0, 5, 5);// leftTop + drawTexturedModalRect(aX + currentWidth + 100, aY - 5, 171, 0, 5, 5);// RightTop + drawTexturedModalRect(aX - 5, aY + currentHeight, 0, 161, 5, 5);// leftDown + drawTexturedModalRect(aX + currentWidth + 100, aY + currentHeight, 171, 161, 5, 5);// RightDown + // draw edges - for(int i = aX ; i [][] fluidInfo = map.packet.map; @@ -96,11 +105,10 @@ public class DetravScannerGUI extends GuiScreen { + map.packet.metaMap.get(fluidId)); info.add( StatCollector.translateToLocal("gui.detrav.scanner.tooltip.fluid_amount") - + GT_Utility.formatNumbers(fluidAmount) + " L"); - } - else info.add(StatCollector.translateToLocal("gui.detrav.scanner.tooltip.no_fluid")); - } - else { + + GT_Utility.formatNumbers(fluidAmount) + + " L"); + } else info.add(StatCollector.translateToLocal("gui.detrav.scanner.tooltip.no_fluid")); + } else { info.add(StatCollector.translateToLocal("gui.detrav.scanner.tooltip.no_fluid")); } func_146283_a(info, x, y); diff --git a/src/main/java/com/detrav/gui/OresList.java b/src/main/java/com/detrav/gui/OresList.java index a8847d3d64..54c2152f5a 100644 --- a/src/main/java/com/detrav/gui/OresList.java +++ b/src/main/java/com/detrav/gui/OresList.java @@ -1,33 +1,35 @@ package com.detrav.gui; -import cpw.mods.fml.client.GuiScrollingList; -import net.minecraft.client.gui.GuiScreen; -import net.minecraft.client.renderer.Tessellator; - import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.function.BiConsumer; -import java.util.function.Consumer; + +import net.minecraft.client.gui.GuiScreen; +import net.minecraft.client.renderer.Tessellator; + +import cpw.mods.fml.client.GuiScrollingList; class OresList extends GuiScrollingList { + private final HashMap ores; private final List keys; private final GuiScreen parent; private final BiConsumer onSelected; private boolean invert = false; - + private int selected = -1; - public OresList(GuiScreen parent, int width, int height, int top, int bottom, int left, int entryHeight, HashMap aOres, BiConsumer onSelected) { + public OresList(GuiScreen parent, int width, int height, int top, int bottom, int left, int entryHeight, + HashMap aOres, BiConsumer onSelected) { super(parent.mc, width, height, top, bottom, left, entryHeight); this.parent = parent; this.onSelected = onSelected; ores = aOres; keys = new ArrayList<>(ores.keySet()); Collections.sort(keys); - if(keys.size() > 1) keys.add(0, "All"); + if (keys.size() > 1) keys.add(0, "All"); selected = 0; } @@ -40,8 +42,8 @@ class OresList extends GuiScrollingList { protected void elementClicked(int index, boolean doubleClick) { selected = index; if (doubleClick) this.invert = !this.invert; - - if(onSelected != null) onSelected.accept(keys.get(index), this.invert); + + if (onSelected != null) onSelected.accept(keys.get(index), this.invert); } @Override @@ -55,11 +57,10 @@ class OresList extends GuiScrollingList { @Override protected void drawSlot(int slotIdx, int entryRight, int slotTop, int slotBuffer, Tessellator tess) { parent.drawString( - parent.mc.fontRenderer, - parent.mc.fontRenderer.trimStringToWidth(keys.get(slotIdx), listWidth - 10), - this.left + 3, - slotTop - 1, - ores.getOrDefault(keys.get(slotIdx), 0x7d7b76) - ); + parent.mc.fontRenderer, + parent.mc.fontRenderer.trimStringToWidth(keys.get(slotIdx), listWidth - 10), + this.left + 3, + slotTop - 1, + ores.getOrDefault(keys.get(slotIdx), 0x7d7b76)); } } diff --git a/src/main/java/com/detrav/gui/textures/DetravMapTexture.java b/src/main/java/com/detrav/gui/textures/DetravMapTexture.java index 444064594e..01c570d5a1 100644 --- a/src/main/java/com/detrav/gui/textures/DetravMapTexture.java +++ b/src/main/java/com/detrav/gui/textures/DetravMapTexture.java @@ -1,15 +1,17 @@ package com.detrav.gui.textures; -import com.detrav.net.ProspectingPacket; +import java.awt.Color; +import java.awt.image.BufferedImage; +import java.awt.image.WritableRaster; + import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.texture.AbstractTexture; import net.minecraft.client.renderer.texture.TextureUtil; import net.minecraft.client.resources.IResourceManager; + import org.lwjgl.opengl.GL11; -import java.awt.Color; -import java.awt.image.BufferedImage; -import java.awt.image.WritableRaster; +import com.detrav.net.ProspectingPacket; /** * Created by wital_000 on 21.03.2016. @@ -22,8 +24,7 @@ public class DetravMapTexture extends AbstractTexture { public int height = -1; public boolean invert = false; - public DetravMapTexture(ProspectingPacket aPacket) - { + public DetravMapTexture(ProspectingPacket aPacket) { packet = aPacket; } @@ -49,18 +50,20 @@ public class DetravMapTexture extends AbstractTexture { break; } } else if (packet.ptype == 2) { - final short fluidId = packet.map[i][j].get((byte) 1), fluidSize = packet.map[i][j].get((byte) 2); + final short fluidId = packet.map[i][j].get((byte) 1), + fluidSize = packet.map[i][j].get((byte) 2); final String name = packet.metaMap.get(fluidId); - + // Variables used to locate within a chunk. final int k = (i % 16), l = (j % 16); - - if( ( (k + l * 16) * 3) < (fluidSize + 48) && (selected.equals("All") || selected.equals(name))) { + + if (((k + l * 16) * 3) < (fluidSize + 48) + && (selected.equals("All") || selected.equals(name))) { image.setRGB(i, j, packet.ores.getOrDefault(name, Color.BLACK.getRGB()) | 0XFF000000); } - }else if (packet.ptype == 3) { + } else if (packet.ptype == 3) { final short meta = packet.map[i][j].get((byte) 1); - image.setRGB(i, j, ((meta & 0xFF) << 16) + ((meta & 0xFF) << 8) + ((meta & 0xFF)) | 0XFF000000); + image.setRGB(i, j, ((meta & 0xFF) << 16) + ((meta & 0xFF) << 8) + ((meta & 0xFF)) | 0XFF000000); } } // draw player pos @@ -78,28 +81,28 @@ public class DetravMapTexture extends AbstractTexture { } } - + return image; } - + @Override - public void loadTexture(IResourceManager resourceManager){ + public void loadTexture(IResourceManager resourceManager) { this.deleteGlTexture(); - if(packet != null) { + if (packet != null) { int tId = getGlTextureId(); - if(tId <0) return; + if (tId < 0) return; TextureUtil.uploadTextureImageAllocate(this.getGlTextureId(), getImage(), false, false); width = packet.getSize(); height = packet.getSize(); } } - public void loadTexture(IResourceManager resourceManager, boolean invert){ + public void loadTexture(IResourceManager resourceManager, boolean invert) { this.invert = invert; loadTexture(resourceManager); } - - public void loadTexture(IResourceManager resourceManager, String selected, boolean invert){ + + public void loadTexture(IResourceManager resourceManager, String selected, boolean invert) { this.selected = selected; loadTexture(resourceManager, invert); } @@ -111,15 +114,35 @@ public class DetravMapTexture extends AbstractTexture { } public void draw(int x, int y) { - float f = 1F / (float)width; - float f1 = 1F / (float)height; + float f = 1F / (float) width; + float f1 = 1F / (float) height; int u = 0, v = 0; Tessellator tessellator = Tessellator.instance; tessellator.startDrawingQuads(); - tessellator.addVertexWithUV((double)(x), (double)(y + height), 0, (double)((float)(u) * f), (double)((float)(v + height) * f1)); - tessellator.addVertexWithUV((double)(x + width), (double)(y + height), 0, (double)((float)(u + width) * f), (double)((float)(v + height) * f1)); - tessellator.addVertexWithUV((double)(x + width), (double)(y), 0, (double)((float)(u + width) * f), (double)((float)(v) * f1)); - tessellator.addVertexWithUV((double)(x), (double)(y), 0, (double)((float)(u) * f), (double)((float)(v) * f1)); + tessellator.addVertexWithUV( + (double) (x), + (double) (y + height), + 0, + (double) ((float) (u) * f), + (double) ((float) (v + height) * f1)); + tessellator.addVertexWithUV( + (double) (x + width), + (double) (y + height), + 0, + (double) ((float) (u + width) * f), + (double) ((float) (v + height) * f1)); + tessellator.addVertexWithUV( + (double) (x + width), + (double) (y), + 0, + (double) ((float) (u + width) * f), + (double) ((float) (v) * f1)); + tessellator.addVertexWithUV( + (double) (x), + (double) (y), + 0, + (double) ((float) (u) * f), + (double) ((float) (v) * f1)); tessellator.draw(); } diff --git a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java index c5fb63058c..c5b891784e 100644 --- a/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java +++ b/src/main/java/com/detrav/items/DetravMetaGeneratedTool01.java @@ -2,6 +2,14 @@ package com.detrav.items; import java.util.List; +import net.minecraft.creativetab.CreativeTabs; +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; +import net.minecraft.util.StatCollector; + import com.detrav.DetravScannerMod; import com.detrav.enums.DetravToolDictNames; import com.detrav.items.tools.DetravProspector; @@ -12,38 +20,144 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.TC_Aspects; import gregtech.api.interfaces.IToolStats; import gregtech.api.items.GT_MetaGenerated_Tool; -import net.minecraft.creativetab.CreativeTabs; -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; -import net.minecraft.util.StatCollector; /** * Created by wital_000 on 19.03.2016. */ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { + public static DetravMetaGeneratedTool01 INSTANCE; public DetravMetaGeneratedTool01() { super("detrav.metatool.01"); INSTANCE = this; - 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)); + 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); } @@ -52,35 +166,94 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { long tMaxDamage = getToolMaxDamage(aStack); Materials tMaterial = getPrimaryMaterial(aStack); IToolStats tStats = getToolStats(aStack); - int tOffset = aList.size(); + int tOffset = aList.size(); 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 ) { + 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")); - - } 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")); - aList.add(tOffset + 7, EnumChatFormatting.ITALIC+ StatCollector.translateToLocal("tooltip.detrav.scanner.usage.4")); + 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")); + aList.add( + tOffset + 7, + EnumChatFormatting.ITALIC + StatCollector.translateToLocal("tooltip.detrav.scanner.usage.4")); } } @@ -89,8 +262,7 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { NBTTagCompound aNBT = aStack.getTagCompound(); if (aNBT != null) { aNBT = aNBT.getCompoundTag("GT.ToolStats"); - if (aNBT != null) - return aNBT.getLong("DetravData"); + if (aNBT != null) return aNBT.getLong("DetravData"); } return 0L; } @@ -112,7 +284,7 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { ItemStack dStack; if (DetravScannerMod.isDreamcraftLoaded) { - //Materials at tiers + // Materials at tiers 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)); @@ -126,38 +298,63 @@ public class DetravMetaGeneratedTool01 extends GT_MetaGenerated_Tool { list.add(getToolWithStats(16, 1, Materials.InfinityCatalyst, Materials.InfinityCatalyst, null)); list.add(getToolWithStats(18, 1, Materials.Infinity, Materials.Infinity, null)); } - - //Steel for comparison - 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); + + // Steel for comparison + 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); + + dStack = getToolWithStats( + 102, + 1, + Materials.Neutronium, + Materials.TungstenSteel, + new long[] { 409600000L, GT_Values.V[7], 7L, -1L }); + setCharge(dStack, 409600000L); list.add(dStack); if (DetravScannerMod.isDreamcraftLoaded) { - dStack = getToolWithStats(104, 1, Materials.InfinityCatalyst, Materials.TungstenSteel, new long[]{1638400000L, GT_Values.V[8], 8L, -1L}); + 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}); + + dStack = getToolWithStats( + 106, + 1, + Materials.Infinity, + Materials.TungstenSteel, + new long[] { 6553600000L, GT_Values.V[9], 9L, -1L }); setCharge(dStack, 6553600000L); list.add(dStack); } else { - dStack = getToolWithStats(106, 1, Materials.Neutronium, Materials.TungstenSteel, new long[]{6553600000L, GT_Values.V[9], 9L, -1L}); + dStack = getToolWithStats( + 106, + 1, + Materials.Neutronium, + 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/BehaviourDetravToolElectricProspector.java b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProspector.java index edde4d77bd..8cd4e28fa4 100644 --- a/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProspector.java +++ b/src/main/java/com/detrav/items/behaviours/BehaviourDetravToolElectricProspector.java @@ -1,5 +1,20 @@ package com.detrav.items.behaviours; +import java.util.ArrayList; +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.EntityPlayerMP; +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 com.detrav.DetravScannerMod; import com.detrav.items.DetravMetaGeneratedTool01; import com.detrav.net.DetravNetwork; @@ -7,6 +22,7 @@ import com.detrav.net.ProspectingPacket; import com.detrav.utils.BartWorksHelper; import com.detrav.utils.GTppHelper; import com.sinthoras.visualprospecting.VisualProspecting_API; + import cpw.mods.fml.common.Loader; import gregtech.api.items.GT_MetaBase_Item; import gregtech.api.objects.ItemData; @@ -15,20 +31,6 @@ import gregtech.api.util.GT_OreDictUnificator; import gregtech.common.GT_UndergroundOil; import gregtech.common.blocks.GT_Block_Ores_Abstract; import gregtech.common.blocks.GT_TileEntity_Ores; -import net.minecraft.block.Block; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -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 java.util.ArrayList; -import java.util.List; /** * Created by wital_000 on 19.03.2016. @@ -39,7 +41,7 @@ public class BehaviourDetravToolElectricProspector extends BehaviourDetravToolPr super(aCosts); } - public ItemStack onItemRightClick(GT_MetaBase_Item aItem, ItemStack aStack, World aWorld, EntityPlayer aPlayer) { + public ItemStack onItemRightClick(GT_MetaBase_Item aItem, ItemStack aStack, World aWorld, EntityPlayer aPlayer) { if (!aWorld.isRemote) { int data = DetravMetaGeneratedTool01.INSTANCE.getToolGTDetravData(aStack).intValue(); if (aPlayer.isSneaking()) { @@ -47,19 +49,24 @@ public class BehaviourDetravToolElectricProspector extends BehaviourDetravToolPr if (data > 3) data = 0; switch (data) { case 0: - aPlayer.addChatMessage(new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.0"))); + aPlayer.addChatMessage( + new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.0"))); break; case 1: - aPlayer.addChatMessage(new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.1"))); + aPlayer.addChatMessage( + new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.1"))); break; case 2: - aPlayer.addChatMessage(new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.2"))); + aPlayer.addChatMessage( + new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.2"))); break; case 3: - aPlayer.addChatMessage(new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.3"))); + aPlayer.addChatMessage( + new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.3"))); break; default: - aPlayer.addChatMessage(new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.error"))); + aPlayer.addChatMessage( + new ChatComponentText(StatCollector.translateToLocal("detrav.scanner.mode.error"))); break; } DetravMetaGeneratedTool01.INSTANCE.setToolGTDetravData(aStack, (long) data); @@ -72,93 +79,129 @@ public class BehaviourDetravToolElectricProspector extends BehaviourDetravToolPr int size = aItem.getHarvestLevel(aStack, "") + 1; final List 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)); + 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; - final ProspectingPacket packet = new ProspectingPacket(cX, cZ, (int) aPlayer.posX, (int) aPlayer.posZ, size, data); + 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++) { - final int ySize = c.getHeightValue(x, z); - for (int y = 1; y < ySize; y++) { - switch (data) { - case 0: - case 1: - 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 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 (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 (data != 1 && name.contains(".small.")) continue; - packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, tMetaID); - } - } - } 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)); - if ((tAssotiation != null) && (tAssotiation.mPrefix.toString().startsWith("ore"))) { - packet.addBlock(c.xPosition * 16 + x, y, c.zPosition * 16 + z, (short) tAssotiation.mMaterial.mMaterial.mMetaItemSubID); + for (int x = 0; x < 16; x++) for (int z = 0; z < 16; z++) { + final int ySize = c.getHeightValue(x, z); + for (int y = 1; y < ySize; y++) { + switch (data) { + case 0: + case 1: +