From b89f594fdf228335e6f69e42a2c2ecf653f641c3 Mon Sep 17 00:00:00 2001 From: Tony Grosinger Date: Thu, 15 Sep 2011 14:42:32 -0700 Subject: [PATCH] -Started implementing Inventory object -Revised how Objectives are generated Signed-off-by: Tony Grosinger --- bin/net/grosinger/nomads/DroneListItem.class | Bin 9370 -> 9416 bytes .../grosinger/nomads/NeighborBuilding.class | Bin 1495 -> 1495 bytes bin/net/grosinger/nomads/TownHall.class | Bin 2049 -> 1333 bytes bin/net/grosinger/nomads/World.class | Bin 9180 -> 9243 bytes src/net/grosinger/nomads/DroneListItem.java | 31 ++++++++---------- .../grosinger/nomads/NeighborBuilding.java | 2 +- src/net/grosinger/nomads/TownHall.java | 19 +++++------ src/net/grosinger/nomads/World.java | 16 +++++---- 8 files changed, 33 insertions(+), 35 deletions(-) diff --git a/bin/net/grosinger/nomads/DroneListItem.class b/bin/net/grosinger/nomads/DroneListItem.class index 4f08f8016938ab666ca296d43ccdf2ca9a3e31a7..bfe90a9b627af331b7dd334e9ebe0ef0558dd21e 100644 GIT binary patch literal 9416 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,HVR9Ahbj@D&nJuN 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 diff --git a/bin/net/grosinger/nomads/NeighborBuilding.class b/bin/net/grosinger/nomads/NeighborBuilding.class index 3a023a8cb6eedcdc530b64900e1c860775a3a8f8..f4f69c35f6ccfd90d17078356d5edeb4334b1cef 100644 GIT binary patch delta 14 Vcmcc4eVuzl5i=vp=3?d)CIBcS1bzSj delta 14 Vcmcc4eVuzl5i=vx=3?d)CIBcG1bhGh diff --git a/bin/net/grosinger/nomads/TownHall.class b/bin/net/grosinger/nomads/TownHall.class index 5d7e0c5e2f9a7ba5e392d15a29dca2c58633f58d..01f697cbc169eacb1f6e20e211cf66af1a6e311b 100644 GIT binary patch delta 614 zcmaKp&u&sd6vn?Pp~&SzD*+;{)NAXX3)-RawR{+fSp-#2VqBUQIqZ4GtuRARxezGS7F542Ra>40I$#W|d3 zDD;Jqox#@LfoR(n4`m?jfPtp6o5n>{Q}7w)XDi4!oa0ruQHtM3MCA;Vp2l(1;cHhntAbdhGJ>b5<_;|^7fN^ytl(? zvcn(A-DDOSs~lcUA=s5}8c)mDbSG zhGtgMdB^7dayHP->G4apw`|LlS-s|D99dmX76ihZR$0anLR3Wr-2#1C-ITd{wJ7a9 zt!PMrYgwzL83oPO-FbU4>>TPffr(%kr-YXU#E*P3e3}eqYE{qSf7l3IDR!7&;?&wB(-L|!+tI7XqwkI`TuV`Mcn3_|! z8U1CTo0VWpk4gPm@s%t&%d77ZDF%U26=N6|xZaSq{$0~QUC<1@tUF{8N+b_rn8XbQ zQvw5?rWYBhxQS^RR-_{kPh^tk%BYP+!N<&EU@e^?R*(=F4>a0l9-2G4!5W&yoQioY zFqaHSoONnMkeL{6;kJVGWj?%gxeBZJ1b0}1x>>TNR+AeVE51Z8VPY>tv50#L?h1?q zLdki}rs6X!38>n!tXWmLZ`nqfQU)i*+g*;~0ag^SScd~0dsZqw2b;0KB28&)j_eTk zI2IIqaTz^dX}v*-*07;s)0HSni8idd=``IGK2-4tkJ-cu6{A_1b zeCZa2qSqc)kK8(l>SvW54=ij7=ulpP$zT~e37`Z$rMhjiQT(6+Q^7~hii2k&4L{j~ z7jKH@(dlim6a?#i8ijcBj#m19TRUoBJOj4;p)PAqP9ArJ6}Wv~ul5a@3`V|V>89i5 z{3{h-gLhyjr{^4oUSzfeVtK1>m*gYXH<6s)YPZ~0!xTF-#H$~CQv!7Jt#D>=)XlFt zH!_+U3J*no!Ihsl??R047{5R-uA+|*uEAe_-|mBdNETZ6SFt zybuq!kop;)ws8M7;@n<4LGJ?h*IHQT)_kgkt^N5Ho}B#io695Y@pwR-U{r-MV;CW> zQI5uV;fy1R3H}f#ai1Ek;s)0F-NH2Mb{NmO>+)Xo5q5a*;wiEo?_F#oM+O6IqWxF8go9 p8!m=CD!rbxi!{H>AWI&+LH|$(UOx_)0zVwn?PlmD9dzNFe*se95jg+= diff --git a/bin/net/grosinger/nomads/World.class b/bin/net/grosinger/nomads/World.class index 958c25a46e2eed65b0b61ac4485473766cfafa12..9ea7016de0dc744f237ce6914816cfe3d7a510cd 100644 GIT binary patch delta 2525 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 inventory; + private ArrayList currentObjectives; + + // TODO - Implement max number of objectives /* * Default constructor, includes all references */ - public DroneListItem(DroneListItem theNext, DroneListItem thePrevious, - Drone theCurrent, DroneTeam theTeam) { + public DroneListItem(DroneListItem theNext, DroneListItem thePrevious, Drone theCurrent, + DroneTeam theTeam) { next = theNext; previous = thePrevious; current = theCurrent; @@ -404,8 +407,7 @@ public class DroneListItem { return; } - DroneListItem victimList = Nomads - .UIDToListItem(victimNeighbor.getUID()); + DroneListItem victimList = Nomads.UIDToListItem(victimNeighbor.getUID()); int victimDefence = victimList.getDefenses(); @@ -444,8 +446,7 @@ public class DroneListItem { return; } - DroneListItem victimList = Nomads - .UIDToListItem(victimNeighbor.getUID()); + DroneListItem victimList = Nomads.UIDToListItem(victimNeighbor.getUID()); int victimDefence = victimList.getDefenses(); @@ -481,13 +482,10 @@ public class DroneListItem { // Not sure what happened here } - int itemsToTake = (int) Math.ceil(itemsInVictimInventory - * percentToTake); - while (itemsToTake < 0 && !getInventoryIsFull() - && victimList.inventory.size() > 0) { + int itemsToTake = (int) Math.ceil(itemsInVictimInventory * percentToTake); + while (itemsToTake < 0 && !getInventoryIsFull() && victimList.inventory.size() > 0) { // Min + (int)(Math.random() * ((Max - Min) + 1)) - int randIndex = 0 + (int) (Math.random() * (((victimList.inventory - .size() - 1) - 0) + 1)); + int randIndex = 0 + (int) (Math.random() * (((victimList.inventory.size() - 1) - 0) + 1)); inventory.add(victimList.inventory.get(randIndex)); victimList.inventory.remove(randIndex); } @@ -526,16 +524,14 @@ public class DroneListItem { } } - if (getX() + amountE > Nomads.awesomeWorld.getWorldSize() - 1 - || getX() + amountE < 0 + if (getX() + amountE > Nomads.awesomeWorld.getWorldSize() - 1 || getX() + amountE < 0 || getY() + amountN > Nomads.awesomeWorld.getWorldSize() - 1 || getY() + amountN < 0) { return; } // Check to see if there is a MoneyPile or Objective there - GameObject objectHere = Nomads.awesomeWorld.getObjectAt(getX() - + amountE, getY() + amountN); + GameObject objectHere = Nomads.awesomeWorld.getObjectAt(getX() + amountE, getY() + amountN); if (objectHere != null) { if (inventory.size() < cargoSpace) { @@ -576,8 +572,7 @@ public class DroneListItem { private void killOtherDrone(DroneListItem victim) { while (inventory.size() < cargoSpace && !victim.inventory.isEmpty()) { // Take items from their inventory - int randIndex = 0 + (int) (Math.random() * (((victim.inventory - .size() - 1) - 0) + 1)); + int randIndex = 0 + (int) (Math.random() * (((victim.inventory.size() - 1) - 0) + 1)); inventory.add(victim.inventory.get(randIndex)); victim.inventory.remove(randIndex); } diff --git a/src/net/grosinger/nomads/NeighborBuilding.java b/src/net/grosinger/nomads/NeighborBuilding.java index 23d5d69..8b40dbe 100644 --- a/src/net/grosinger/nomads/NeighborBuilding.java +++ b/src/net/grosinger/nomads/NeighborBuilding.java @@ -11,7 +11,7 @@ public class NeighborBuilding implements GameObject { private int x; private int y; private Building building; - private DroneListItem drone; + protected DroneListItem drone; /** * Class Constructor diff --git a/src/net/grosinger/nomads/TownHall.java b/src/net/grosinger/nomads/TownHall.java index 9dfb6eb..7901906 100644 --- a/src/net/grosinger/nomads/TownHall.java +++ b/src/net/grosinger/nomads/TownHall.java @@ -9,8 +9,7 @@ public class TownHall extends NeighborBuilding { // TODO - Rewrite class to make more accessible to Drones - public TownHall(int x, int y, String name, Building building, - DroneListItem drone) { + public TownHall(int x, int y, String name, Building building, DroneListItem drone) { super(x, y, name, building, drone); } @@ -21,17 +20,19 @@ public class TownHall extends NeighborBuilding { * @param inventory * @param team */ - public void cashInventory(ArrayList inventory, DroneTeam team) { + public void cashInventory() { if (verifyObjectValidity()) { + Inventory inventory = drone.getInventory(); + DroneTeam team = drone.getTeam(); + while (!inventory.isEmpty()) { - GameObject currentObject = inventory.get(0); + GameObject currentObject = inventory.getItem(0); if (currentObject instanceof MoneyPile) { int value = ((MoneyPile) currentObject).getValue(); team.increaseBalance(value); Nomads.awesomeWorld.generateMoneyPile(); } else if (currentObject instanceof Objective) { - team.increaseBalance(((Objective) currentObject) - .getBounty()); + team.increaseBalance(((Objective) currentObject).getBounty()); } inventory.remove(currentObject); } @@ -43,14 +44,12 @@ public class TownHall extends NeighborBuilding { /** * Will generate a new objective for the drone that requests it. * - * @param UID - * Depreciated and going away soon. * @return Point Will return null if the NeighborBuilding was * created in a previous turn. */ - public Point requestNewObjective(String UID) { + public Point requestNewObjective() { if (verifyObjectValidity()) { - return Nomads.awesomeWorld.generateObjective(UID); + return Nomads.awesomeWorld.generateObjective(drone); } else { // Object not valid, do nothing return null; diff --git a/src/net/grosinger/nomads/World.java b/src/net/grosinger/nomads/World.java index 5981fbf..b59dfce 100644 --- a/src/net/grosinger/nomads/World.java +++ b/src/net/grosinger/nomads/World.java @@ -5,11 +5,12 @@ import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; +import java.math.BigInteger; +import java.security.SecureRandom; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; - /** * Main class where information about the world is stored * @@ -233,9 +234,11 @@ public class World { GameObject objectHere = theWorld[x + i][y + j]; if (objectHere != null) { String name = objectHere.getName(); - if (name.equalsIgnoreCase("TownHall") || name.equalsIgnoreCase("PoliceStation")) { + if (name.equalsIgnoreCase("TownHall") + || name.equalsIgnoreCase("PoliceStation")) { return true; - } else if ((name.equalsIgnoreCase("RepairShop") || name.equalsIgnoreCase("UpgradeShop")) && i <= 2 && j <= 2) { + } else if ((name.equalsIgnoreCase("RepairShop") || name + .equalsIgnoreCase("UpgradeShop")) && i <= 2 && j <= 2) { return true; } } @@ -297,7 +300,7 @@ public class World { * - The UID of the Drone that is allowed to pick it up. * @return - Point - Within 20x20 of the Objective. */ - public Point generateObjective(String UID) { + public Point generateObjective(DroneListItem drone) { // Min + (int)(Math.random() * ((Max - Min) + 1)) int randX = 0 + (int) (Math.random() * ((getWorldSize() - 0) + 1)); int randY = 0 + (int) (Math.random() * ((getWorldSize() - 0) + 1)); @@ -305,9 +308,10 @@ public class World { int varY = -10 + (int) (Math.random() * ((10 - -10) + 1)); int varX = -10 + (int) (Math.random() * ((10 - -10) + 1)); - int bounty = Nomads.MINOBJECTIVEBOUNTY + (int) (Math.random() * ((Nomads.MAXOBJECTIVEBOUNTY - Nomads.MINOBJECTIVEBOUNTY) + 1)); + int bounty = Nomads.MINOBJECTIVEBOUNTY + + (int) (Math.random() * ((Nomads.MAXOBJECTIVEBOUNTY - Nomads.MINOBJECTIVEBOUNTY) + 1)); - Objective newObjective = new Objective(bounty, UID); + Objective newObjective = new Objective(bounty, drone.getCurrent().getUID()); setObjectAt(randX, randY, newObjective); // Create a point to return that is somewhere nearby the actual location