diff options
Diffstat (limited to 'src/main/java/com/detrav/commands/DetravScannerCommand.java')
-rw-r--r-- | src/main/java/com/detrav/commands/DetravScannerCommand.java | 103 |
1 files changed, 48 insertions, 55 deletions
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<String> strs = new ArrayList<>(); - for(int i =0; i<args.length;i++) - { + for (int i = 0; i < args.length; i++) { strs.add(args[i]); - if(args[i].startsWith("\"")) { + if (args[i].startsWith("\"")) { for (i++; i < args.length; i++) { - String temp = (String)strs.get(strs.size()-1); + String temp = (String) strs.get(strs.size() - 1); temp = temp + " " + args[i]; - temp = temp.replace("\"",""); - strs.set(strs.size()-1,temp); - if(args[i].endsWith("\"")) - break; + temp = temp.replace("\"", ""); + strs.set(strs.size() - 1, temp); + if (args[i].endsWith("\"")) break; } } } args = new String[strs.size()]; args = strs.toArray(args); - switch (args.length) - { + switch (args.length) { case 0: break; case 1: - if(args[0].toLowerCase() == "help") { + if (args[0].toLowerCase() == "help") { sendHelpMessage(sender); return; } @@ -82,58 +80,53 @@ public class DetravScannerCommand implements ICommand { break; default: sendHelpMessage(sender); - return ; + return; } ChunkCoordinates c = sender.getPlayerCoordinates(); - if(name!=null) name = name.toLowerCase(); - process(sender,(int)Math.floor(c.posX/16.0),(int)Math.floor(c.posZ/16.0),name); + if (name != null) name = name.toLowerCase(); + process(sender, (int) Math.floor(c.posX / 16.0), (int) Math.floor(c.posZ / 16.0), name); } - 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<String,Integer> 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<String, Integer> 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 |