From 89a6f1e559d417a43021988fc14abdf8ca0f3b36 Mon Sep 17 00:00:00 2001 From: Tony Grosinger Date: Sat, 10 Sep 2011 21:57:45 -0700 Subject: [PATCH] -Refactored Neighbor to NeighborDrone -Created NeighborBuilding Signed-off-by: Tony Grosinger --- bin/net/grosinger/nomads/Drone.class | Bin 613 -> 618 bytes bin/net/grosinger/nomads/DroneListItem.class | Bin 10799 -> 10814 bytes bin/net/grosinger/nomads/DroneTools.class | Bin 5782 -> 6203 bytes .../grosinger/nomads/NeighborBuilding.class | Bin 0 -> 1390 bytes .../{Neighbor.class => NeighborDrone.class} | Bin 999 -> 1014 bytes bin/net/grosinger/nomads/Police.class | Bin 1545 -> 1550 bytes src/net/grosinger/nomads/Drone.java | 4 +- src/net/grosinger/nomads/DroneListItem.java | 7 +- src/net/grosinger/nomads/DroneTools.java | 24 ++++- .../grosinger/nomads/NeighborBuilding.java | 82 ++++++++++++++++++ .../{Neighbor.java => NeighborDrone.java} | 6 +- src/net/grosinger/nomads/Police.java | 4 +- 12 files changed, 114 insertions(+), 13 deletions(-) create mode 100644 bin/net/grosinger/nomads/NeighborBuilding.class rename bin/net/grosinger/nomads/{Neighbor.class => NeighborDrone.class} (58%) create mode 100644 src/net/grosinger/nomads/NeighborBuilding.java rename src/net/grosinger/nomads/{Neighbor.java => NeighborDrone.java} (81%) diff --git a/bin/net/grosinger/nomads/Drone.class b/bin/net/grosinger/nomads/Drone.class index c8918d6f8916035609fd05800f02214fb3ee39cb..d679c5ff4a844bcc29024981e9a007a4ba3c09bc 100644 GIT binary patch delta 24 fcmaFL@``1H0wbf^WJN{=R+pmuywuH(j4F%(U4I6= delta 18 ZcmaFG@|0zR0wbg1WJN}W&2Ee;i~u*(1it_P diff --git a/bin/net/grosinger/nomads/DroneListItem.class b/bin/net/grosinger/nomads/DroneListItem.class index f1268025c5a17bce5f8659ce2aa55c05067d78ed..03ebfc5d994dc10bbffd3885eadbada33c78fdb0 100644 GIT binary patch delta 1093 zcmY+=eN2^Q7{~GNbsdk$o2JM)a5x3%5T`Ev1O8Bm7kMoZhfoTM3PZsxP&B2byhtya ze>i%~Ibn`5VP>Y}skSyEXD?e;x|X>pQPI^1Dyu(QFLQP6`J>G}yYKsR-OuyebKUp3 z%8|;Ub&;~bnH?S%U$%K`Lt|ZYOMXjp)8>o_Zg4A%o5DQjt+3eW``$YJkrUnJ{`)sW zuSdm%ugYK=j}T54Gsz}~9OB6(k(H#7$0G7sN&#sUvYaCOs@QfPwdXO)D51*cO_Z~f zHFQwng!}5H#*sj*)8$K*Ev_z@nqA#9wYpm2PnAwrdrYsmdfVi<`pwkq>fyLl8F01D zbk@}=(|fMIH(hi!FFsX1bG6ZQ)m5))%+;vr2UDipb?b^in*8Y;2o!o1uXvoq1iv#G zSmuqgD%z?dug~On_xC3(^Cnr9>{gepT4dE?w+aN)y=g>9x>Fe}^=6r}odHvUsnGc& znBy&DhOBln9vp99XM5E|+sKg`R>~$yrIre*<8i5Htu#<8jWo(uo|0`mEluo}X76yPOFU3B{%4no7VO%PRls& z$Zdw@4i{yDkL5=$+4`kSa#eojy8Oa~ty6NBf8|#RkB~`;l_^P--$Q4TPfGh=*3aL} zk$ zbpbTo8jezvr)AWSout(nZxZ02eXKFuZG zMyBSGrTOG)5qVlnp_WjrrIhGuR_PN|>RQ&@TB}uT(Q0<-lkC;?9Ml@Rbpt)RkwL9x zNb7iC>lx8TYw#Ja=ytx+9gJxUQhrKq!=oKUYNy>rhqbVuCE7*0w%PAq NqFi4N^({E;`49Ea1quKF delta 1066 zcmX|-ZA_H~6vuz(&;_}da6;S*7w}4ru2M5w@B!sb5Ks^nhA$Wygb8zok!CKXi`k3L z4-KBoCOM6vYoJ5DI^BF*IzQ-au4yk8px9cNW@~FJTbmu85AE4`&hLNr{P+CNIa@ze ze|VWsvYaXLsm@;Cq=Y$MM!6NoO(D}c5|=VDbPoE)CFIn_`X^NMWI}R$&1@c_fOrZ? zq=;mSNuz`ibIGQZ9LjixdE`<~J{9&wrA_9uz@A#FXrP8Bo@X6(bg{@u^{K|QHq>2*hiM*S|mZFI<`6GkUp`qSu3 zm!3@v%Vn3^jjp*gXf*87xY5rpWe3A@-=$ZAx$>8@D_G$XJfhCb^nmjqILqTRm0+sU zlVap|=iTYEJRwulTs2~9hN&D^&B(~}Jcn0uotBJ+omZ-lGHj? znPZWqHf!Kfs}gCXR9)9c1 z(jy!AST^#BY+|=;<}-<~PrB%ntsIc|_(HbP3iwfb570)ebuaszfvNrZj%CU_ z^x~J@1Y{2x@;TF`pFG)5fecb62dS1rERrD_irK$1`*q6Y8?%3B_U~CPH*BpRY^5LBD8p=(5xQm6V&7yyZgE`3I4!q1FTZe6 z#<^_$Yq`U9xyP{l#<=yna-WCtyTp6tj-<%15|Tfnr?UDb^0(!AK$84pS^l*w56QNz zr(3O5rCnp_&{#HU9Pg-?ZR%r(CbCl}^Qk7$r^)PBKSLVes0KN$>73K4T+$F%^l`q` z9LDr1ZtG0m_6xU1`&zU+Hhoy2GapLP+jo~B!PTHhs4JMDMxQ>Pz9ho1Z>=0AEL B|EB-| diff --git a/bin/net/grosinger/nomads/DroneTools.class b/bin/net/grosinger/nomads/DroneTools.class index 3e063676802a8e5b6481ac933ee25129c78d36b9..2bf1f3e41518efc9236215323b3bd77d6e7bb8c2 100644 GIT binary patch literal 6203 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 GL*Yjw6Yrb= literal 5782 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 diff --git a/bin/net/grosinger/nomads/NeighborBuilding.class b/bin/net/grosinger/nomads/NeighborBuilding.class new file mode 100644 index 0000000000000000000000000000000000000000..ef0dc2d50e610f7f4a8f834da3f7232febbe979e GIT binary patch literal 1390 zcmaJ>?M@R>5IwhFTk0wZ6s)Bb5v5&(Rs15s5EY}=5HJCW{@j+EvZQRy?pEbJd<=hR zVm0xH58y)?&%IlrDVwI*ow>7f&YYRq?VrEDegjy=nt_DC4Nr!4({Bf^*Ob2PwU3>H zz}}W_^RV9bpLX2V0iPI135*>%9~`^ocujk!ek2>Afs8;omf(eRETbfWl*fa>_|_SI zH}uK6E+9Vfs_{AzNWQ5(6Uf$kHA%e{%l%&z;h9IS=Y|^sFDtd$dH$HlaK`FB9(*byceSBM_J}F@l`(u9&zGc~?ys$g0?k2{ZC$O-Edm_j_;~-FPI7s-9TV5zS+S|uxX(i+Sk#Tf6GdHT%!4DFot6XRB~i@Y_{#k95DMZqehx+q$ObQh&>nxV}5 zEE#|zQYf*~EIG@Vz#IxxQ^q_!U?bvWWS%FoYfVCXN>xI8N^eqoN?}TSN@JSZu4AF6 z(56+$wDlc@uXGYD0~S!ho1_L`RGrW($3FqaqxSm2`7ccE2ivjW#aQt4Ab2en%-5z@ zd6ibF%2Iae2dqKmPx|oLQ{^kMZ5Ic@ulm60Q?QNOz2Y0}Q_VPIEpd-$yNf2j!wJ9E g3{z27k3kLf4mTkfUDdO?i+i*=M(*>=dHA^S55w*N4FCWD literal 0 HcmV?d00001 diff --git a/bin/net/grosinger/nomads/Neighbor.class b/bin/net/grosinger/nomads/NeighborDrone.class similarity index 58% rename from bin/net/grosinger/nomads/Neighbor.class rename to bin/net/grosinger/nomads/NeighborDrone.class index 93fb9618792a608701b0d4ca0fe61784aef4df0f..a76a08f58bd552a694730de56333869c4cfb8ad6 100644 GIT binary patch delta 70 zcmaFP{*7JW)W2Q(7#J9g7_`_Km>3z9CJM;1x)kN-rEb*aWn@zEf%7LvGFI^k`K4y2 QXC&npft75&!^q790M+^w;s5{u delta 54 zcmeyy{+wOl)W2Q(7#J9g7_`_Km>3ykCp$9AZZzU$WR#!mz$iC4nX!tK*Dp0QJtHZ< KX!C1EZYBV!G7l91 diff --git a/bin/net/grosinger/nomads/Police.class b/bin/net/grosinger/nomads/Police.class index 9abe438b3323308a732e159d3692905428b47618..486e19453f96fa952f91d63b597985dafd009799 100644 GIT binary patch delta 24 fcmeC=>EqcDz{IFFIgm+#)ukvuFLiSv(+p++R#OKZ delta 18 ZcmeC<>EziEz{IFHIgm+Va~abNW&kow1t0(b diff --git a/src/net/grosinger/nomads/Drone.java b/src/net/grosinger/nomads/Drone.java index c9bd3e6..0dcb26b 100644 --- a/src/net/grosinger/nomads/Drone.java +++ b/src/net/grosinger/nomads/Drone.java @@ -43,7 +43,7 @@ public interface Drone extends GameObject { * * @return Neighbor; */ - public Neighbor steal(); + public NeighborDrone steal(); /** * Asks for which drone should be attacked. Will be called whenever the Move @@ -51,7 +51,7 @@ public interface Drone extends GameObject { * * @return Neighbor */ - public Neighbor attack(); + public NeighborDrone attack(); /** * Asks what the drone would like to upgrade. Will be called whenever the Move diff --git a/src/net/grosinger/nomads/DroneListItem.java b/src/net/grosinger/nomads/DroneListItem.java index a31efa7..9ea899f 100644 --- a/src/net/grosinger/nomads/DroneListItem.java +++ b/src/net/grosinger/nomads/DroneListItem.java @@ -32,7 +32,8 @@ public class DroneListItem { // Statistics about this robot - private int visibleDistance; + private int visibleDistance; // Distance that this drone can see buildings + // and other drones private int lumaLocatorDistance; private int objectLocatorDistance; private int reliability; @@ -400,7 +401,7 @@ public class DroneListItem { * Finds who the drone wants to attack and attempts to perform attack. */ private void doAttack() { - Neighbor victimNeighbor = current.attack(); + NeighborDrone victimNeighbor = current.attack(); if (victimNeighbor == null) { // Seems they did something wrong. Turn wasted. @@ -440,7 +441,7 @@ public class DroneListItem { * Finds who the drone wants to steal from and attempts to perform steal. */ private void doSteal() { - Neighbor victimNeighbor = current.steal(); + NeighborDrone victimNeighbor = current.steal(); if (victimNeighbor == null) { // Seems they did something wrong. Turn wasted. diff --git a/src/net/grosinger/nomads/DroneTools.java b/src/net/grosinger/nomads/DroneTools.java index 7502ef1..20ba9eb 100644 --- a/src/net/grosinger/nomads/DroneTools.java +++ b/src/net/grosinger/nomads/DroneTools.java @@ -14,6 +14,7 @@ public class DroneTools { private DroneListItem listItem; private DroneTeam currentTeam; private World worldReference; + private Point townCenter; private int worldSize; public DroneTools(Drone aDrone, DroneListItem droneParent, World theWorld) { @@ -122,14 +123,31 @@ public class DroneTools { return worldReference.inSafeZone(getX(), getY(), listItem); } + /** + * Return the location of the center of the main town. Buildings are located + * on the corners of this point. + * + * @return Point + */ + public Point getTownCenter() { + if (townCenter == null) { + townCenter = new Point(30, 50); + } + return townCenter; + } + + public ArrayList checkBuildings() { + return worldReference.buildingsInRange(getX(), getY(), listItem.getVisibleDistance()); + } + /** * Retrieve a list of all Drones that are visible within your sight range. * (Sight range can be upgraded) * * @return ArrayList of Neighbors */ - public ArrayList checkRadar() { - ArrayList neighbors = new ArrayList(); + public ArrayList checkRadar() { + ArrayList neighbors = new ArrayList(); int maxDistance = listItem.getVisibleDistance(); for (int i = maxDistance * -1; i <= maxDistance; i++) { for (int j = maxDistance * -1; j <= maxDistance; j++) { @@ -143,7 +161,7 @@ public class DroneTools { Drone droneHere = (Drone) objectHere; DroneListItem listItemHere = Nomads .droneToListItem(droneHere); - Neighbor aWildNeighbor = new Neighbor( + NeighborDrone aWildNeighbor = new NeighborDrone( listItemHere.getX(), listItemHere.getY(), droneHere.getName(), droneHere.getUID()); neighbors.add(aWildNeighbor); diff --git a/src/net/grosinger/nomads/NeighborBuilding.java b/src/net/grosinger/nomads/NeighborBuilding.java new file mode 100644 index 0000000..4c0f1da --- /dev/null +++ b/src/net/grosinger/nomads/NeighborBuilding.java @@ -0,0 +1,82 @@ +package net.grosinger.nomads; + +import net.grosinger.nomads.Building.Structure; + +/** + * An array of NeigborBuildings will be given to a drone that is searching for + * the buildings it is near. This is typically done from the town center. + */ +public class NeighborBuilding implements GameObject { + + private String name; + private int x; + private int y; + private String UID; + private Building building; + + /** + * Class Constructor + * + * @param x + * - X location of the Building + * @param y + * - Y location of the Building + * @param name + * - Name of the Building + */ + public NeighborBuilding(int x, int y, String name, String UID, + Building building) { + this.x = x; + this.y = y; + this.name = name; + this.UID = UID; + this.building = building; + } + + @Override + public String getName() { + return name; + } + + /** + * Retrieve x location + * + * @return int - x Location + */ + public int getX() { + return x; + } + + /** + * Retrieve y location + * + * @return int - y Location + */ + public int getY() { + return y; + } + + /** + * Retrieve type of building that this is + * + * @return Structure + */ + public Structure getType() { + return building.getType(); + } + + /** + * Retrieve UID of this Neighbor + * + * @return String - UID + */ + public String getUID() { + return UID; + } + + @Override + public void setName(String newName) { + name = newName; + } + +} diff --git a/src/net/grosinger/nomads/Neighbor.java b/src/net/grosinger/nomads/NeighborDrone.java similarity index 81% rename from src/net/grosinger/nomads/Neighbor.java rename to src/net/grosinger/nomads/NeighborDrone.java index cfbf37d..eaa9985 100644 --- a/src/net/grosinger/nomads/Neighbor.java +++ b/src/net/grosinger/nomads/NeighborDrone.java @@ -1,9 +1,9 @@ package net.grosinger.nomads; /** - * An array of Neighbors will be given to a drone that is using it's radar + * An array of NeighborDrones will be given to a drone that is using it's radar */ -public class Neighbor implements GameObject { +public class NeighborDrone implements GameObject { private String name; private int x; @@ -20,7 +20,7 @@ public class Neighbor implements GameObject { * @param name * - Name of the Drone */ - public Neighbor(int x, int y, String name, String UID) { + public NeighborDrone(int x, int y, String name, String UID) { this.x = x; this.y = y; this.name = name; diff --git a/src/net/grosinger/nomads/Police.java b/src/net/grosinger/nomads/Police.java index 5266a50..31b4a97 100644 --- a/src/net/grosinger/nomads/Police.java +++ b/src/net/grosinger/nomads/Police.java @@ -66,13 +66,13 @@ public class Police implements Drone { } @Override - public Neighbor steal() { + public NeighborDrone steal() { // This method is not used by the police drones return null; } @Override - public Neighbor attack() { + public NeighborDrone attack() { // When attacked, a police drone will automatically retaliate, dealing // 2x the damage that was done to itself. // TODO - Implement Police Attack