From 862230008eb92db8b0e460b598f0e8ab839f4127 Mon Sep 17 00:00:00 2001 From: FatBoy-DOTC Date: Sat, 8 Apr 2023 17:15:34 -0500 Subject: [PATCH] revert simulatebooty command --- src/engine/devcmd/cmds/simulateBootyCmd.java | 114 +++++++------------ 1 file changed, 42 insertions(+), 72 deletions(-) diff --git a/src/engine/devcmd/cmds/simulateBootyCmd.java b/src/engine/devcmd/cmds/simulateBootyCmd.java index fa6dd2bb..9b170b6c 100644 --- a/src/engine/devcmd/cmds/simulateBootyCmd.java +++ b/src/engine/devcmd/cmds/simulateBootyCmd.java @@ -1,15 +1,21 @@ package engine.devcmd.cmds; + import engine.Enum; import engine.devcmd.AbstractDevCmd; import engine.gameManager.*; import engine.objects.*; import java.util.ArrayList; +import java.util.concurrent.ThreadLocalRandom; +import static engine.loot.LootManager.getGenTableItem; + public class simulateBootyCmd extends AbstractDevCmd { public simulateBootyCmd() { super("simulatebooty"); } + @Override - protected void _doCmd(PlayerCharacter pc, String[] words, AbstractGameObject target) { + protected void _doCmd(PlayerCharacter pc, String[] words, + AbstractGameObject target) { // Arg Count Check if (words.length != 1) { this.sendUsage(pc); @@ -18,19 +24,9 @@ public class simulateBootyCmd extends AbstractDevCmd { if (pc == null) { return; } - int iterations = 100; + String newline = "\r\n "; - if(words[1].length() > 0){ - try{ - iterations = Integer.parseInt(words[1]); - }catch(Exception ex){ - iterations = 100; - } - } - boolean isZone = false; - if(words[2].length() > 0 && words[2].toLowerCase().equals("zone")){ - isZone = true; - } + try { int targetID = Integer.parseInt(words[0]); Building b = BuildingManager.getBuilding(targetID); @@ -41,6 +37,7 @@ public class simulateBootyCmd extends AbstractDevCmd { target = b; } catch (Exception e) { } + if (target == null) { throwbackError(pc, "Target is unknown or of an invalid type." + newline + "Type ID: 0x" @@ -48,17 +45,26 @@ public class simulateBootyCmd extends AbstractDevCmd { + " Table ID: " + pc.getLastTargetID()); return; } + + Enum.GameObjectType objType = target.getObjectType(); + int objectUUID = target.getObjectUUID(); String output; - output = "Booty Simulation:" + newline; + + output = "Loot Simulation:" + newline; switch (objType) { case Building: + + break; case PlayerCharacter: + + break; + case NPC: - default: - output += "Target is Not a Mob! Please Select a Mob to Simulate Booty" + newline; + break; + case Mob: Mob mob = (Mob) target; ArrayList GlassItems = new ArrayList(); @@ -68,18 +74,13 @@ public class simulateBootyCmd extends AbstractDevCmd { ArrayList Offerings = new ArrayList(); ArrayList OtherDrops = new ArrayList(); int failures = 0; - ArrayList simulatedBooty = new ArrayList<>(); - if(isZone == false){ - //simulate individual mob booty - output += "Simulated " + iterations + " Iterations 0n " + mob.parentZone.zoneMobSet.size() + " Mobs." + newline; - simulatedBooty = simulateMobBooty(mob, iterations); - } - else { - output += "Simulated " + iterations + " Iterations 0n " + mob.getName() + newline; - simulatedBooty = simulateZoneBooty(mob.getParentZone(), iterations); - } + for(int i = 0; i < 100; ++i) { + try { - for (Item lootItem : simulatedBooty) { + mob.loadInventory(); + for (Item lootItem : mob.getCharItemManager().getInventory()) { + ItemBase ib = lootItem.getItemBase(); + int ordinal = ib.getType().ordinal(); switch (lootItem.getItemBase().getType()) { case CONTRACT: //CONTRACT Contracts.add(lootItem); @@ -108,58 +109,27 @@ public class simulateBootyCmd extends AbstractDevCmd { } catch (Exception ex) { failures++; } - output += "Time Required To Gain Simulated Booty: " + mob.getMobBase().getSpawnTime() * iterations + " Seconds" + newline; - output += "Glass Drops:" + GlassItems.size() + newline; - for(Item glassItem : GlassItems){ - output += glassItem.getName() + newline; } - output += "Rune Drops:" + Runes.size() + newline; - for(Item runeItem : Runes){ - output += runeItem.getName() + newline; - } - output += "Contract Drops:" + Contracts.size() + newline; - for(Item contractItem : Contracts){ - output += contractItem.getName() + newline; - } - output += "Resource Drops:" + Resources.size() + newline; - for(Item resourceItem : Contracts){ - output += resourceItem.getName() + newline; - } - output += "OFFERINGS DROPPED: " + Offerings.size() + newline; - output += "OTHER ITEMS DROPPED: " + OtherDrops.size() + newline; - output += "FAILED ROLLS: " + failures + newline; - break; + output += "GLASS ITEMS DROPPED: " + GlassItems.size() + newline; + output += "RESOURCE STACKS DROPPED: " + Resources.size() + newline; + output += "RUNES DROPPED: " + Runes.size() + newline; + output += "CONTRACTS DROPPED: " + Contracts.size() + newline; + output += "OFFERINGS DROPPED: " + Offerings.size() + newline; + output += "OTHERS DROPPED: " + OtherDrops.size() + newline; + output += "FAILED ROLLS: " + failures + newline; + break; } + throwbackInfo(pc, output); } + @Override protected String _getHelpString() { - return "simulates mob loot X amount of times for mob or zone"; + return "Gets information on an Object."; } + @Override protected String _getUsageString() { - return "' ./simluatebooty "; - } - public static ArrayList simulateMobBooty(Mob mob, int iterations){ - ArrayList producedBooty = new ArrayList<>(); - for(int i = 0; i < iterations; ++i) { - mob.loadInventory(); - for (Item lootItem : mob.getCharItemManager().getInventory()) { - producedBooty.add(lootItem); - } - } - return producedBooty; - } - public static ArrayList simulateZoneBooty(Zone zone, int iterations){ - ArrayList producedBooty = new ArrayList<>(); - for(Mob mob : zone.zoneMobSet) { - for (int i = 0; i < iterations; ++i) { - mob.loadInventory(); - for (Item lootItem : mob.getCharItemManager().getInventory()) { - producedBooty.add(lootItem); - } - } - } - return producedBooty; + return "' /info targetID'"; } -} \ No newline at end of file +}