From 4f7140b45a4d55eece470d0679b1f68fe305797f Mon Sep 17 00:00:00 2001 From: Tony Grosinger Date: Tue, 26 Apr 2011 12:59:04 -0700 Subject: [PATCH] -Added houses -Almost finished with adding ability to build a house -Houses included in safezone if they are on the same team Signed-off-by: Tony Grosinger --- .../grosinger/nomads/Building$Structure.class | Bin 1270 -> 1318 bytes bin/net/grosinger/nomads/Building.class | Bin 2096 -> 2173 bytes .../nomads/DroneListItem$Direction.class | Bin 1272 -> 1272 bytes .../nomads/DroneListItem$EnumMove.class | Bin 1480 -> 1480 bytes bin/net/grosinger/nomads/DroneListItem.class | Bin 5662 -> 5892 bytes bin/net/grosinger/nomads/DroneTeam.class | Bin 2908 -> 3324 bytes bin/net/grosinger/nomads/DroneTools.class | Bin 3040 -> 4024 bytes bin/net/grosinger/nomads/House.class | Bin 0 -> 1180 bytes bin/net/grosinger/nomads/Nomads.class | Bin 3872 -> 3916 bytes bin/net/grosinger/nomads/World.class | Bin 6711 -> 7255 bytes src/net/grosinger/nomads/Building.java | 6 +- src/net/grosinger/nomads/DroneListItem.java | 15 ++++- src/net/grosinger/nomads/DroneTeam.java | 31 +++++++++-- src/net/grosinger/nomads/DroneTools.java | 52 ++++++++++++++---- src/net/grosinger/nomads/House.java | 50 +++++++++++++++++ src/net/grosinger/nomads/Nomads.java | 8 ++- src/net/grosinger/nomads/World.java | 19 +++++-- 17 files changed, 157 insertions(+), 24 deletions(-) create mode 100644 bin/net/grosinger/nomads/House.class create mode 100644 src/net/grosinger/nomads/House.java diff --git a/bin/net/grosinger/nomads/Building$Structure.class b/bin/net/grosinger/nomads/Building$Structure.class index 7065ade3daac60f52a59ee34ed015278e3626d63..2179df05dfd3d4cace010e3b0b99a344bff62196 100644 GIT binary patch delta 578 zcmZ{h%P#{_6vn@6+B==;Emc~rK0Hb>Mb-Nq5)z4s#l&Llx{yYL4Ut$iv9YjfCh;Gz zlhjxcLahBiEXBE3!^+%b&i&2I_nq&a`7~}!^Zo1T6~H)_YvwigZ*1?_>$Tfm9ua6m zyBlJ;wU~e(JOJGQLqb585Ri}(2uLs_bO{&|ObNXLCb-=72?QbB3d^&Id&O2W!x+^u z!Vs>MPD_P@(owl!pBtNaY+M8etwTJI56(BV@MSJ3HKkW`T73Ni}1bp<_v7jn=% zL~Y0CA#OW<4@tY~a1R;V(LMCo_sHH+uO{@<-J}X6u!=Zx>ZyD~Q*0zFLZb!fRzCHB zfj=Rq56}<^wbwByk4OU@g4K{u(_bKY6)_K4XH&CYokf{&OG`c?KU`NGWsV;^_M5?= pVU9OUEJ`GsnGt3^V&V<#f1QSDxCy01ZuW zibNnHYJLzUV%D*s!InJx?d+R*o_*54H2w4YwGUt!n=SpZ)jd$c91)B;F;=X{ID$|@ zP&F_lIaC250U3^v08PL+hXzHg3LH9yoF*%=u=C7z#^+$Fm}f9f8rO}=Y2*B;V%=U| z9iDNNP?%Dci-=pHiU%@I~BPtC)sDdm3g?^yM|0u8_xF3Q+IR3B6u)z(m1s(n|DXSUzW>sO^~ekp!@RrfpNK4)Sb`z*3ajNz zh|YqEqWi`lnJJklOINs*DW>O2;-WO(GqEm>9jnD`DLtE! z!8$hFpZ>RDaRxpF2zlFm9f;NQlmtm5^^uaK>!c}C&arzA(YuR2$L?1`%&{*j!FKFH zC4?ON5(OuIh@_J^L~4(Teq1KM1B*P)#}WwP98A(U&SMfiNb|8Q`ca?90E!r7Z$reK zL=7W&jB9vG6wffm!2*tl7o)gJjmYUY6zXk8ne0c}#whvu01!d&m_k5@&=D7G&)`pE z#tqygw;7Y-myQ%P=RJBGwD=V0ptRzade>C4)_hmcI^llNqCK)XFK)JN+--L}7_Xm1 zEwzoBL1iDA^{)stDj$(O`W#+x_Ob8*F{7}HK!r-4ir!L|sc0=_g-W2MRHy_!W&Hq| z2GLmP=2=#GmKS(=Ro>Sq@2L8mCp68bs%&kEM_Fy&vA1eVwIC-gPiz1kIUTiQbjcg5 aNmj)|8^)pEXS@#&@Q`0Q@HpwwboU>RP=M_K delta 1011 zcmZ`%+fEZv6kXHKtz{yUAvURPiA_aifTEycxY=4REv>W`#-U0gn)syu(2tlme}F`d zDbyNc439qe=98b|lj1sOiXxYXb7t>7>+HSu-s_j$vF&faKOX>?!nT2kf=uu|lG&U1 zp$x{LVBEq0EMeul!;!pVFIl*N!8p=bv9OAAupOOO*DO?n_t8Y@frWLL3gXS>MzPY| zDAyY?LK_wyimXD>kWBMT)B+ZRH+rfqaB(>R9~!nKHX(ie z@3?f_BS!RFK(SA3kr**H-A!>}Vprh+!d%ao>-jmk#K1+a`yy9c4)ecca`DHLy=1ai z=Ohz5Q*4t0xzs1tfzVmd-hImF5a{6h>0HTmN5 aQ0-sYzRBrr$r-jNT(J>_)f7A_B>w>CC34FE diff --git a/bin/net/grosinger/nomads/DroneListItem$Direction.class b/bin/net/grosinger/nomads/DroneListItem$Direction.class index 810fd9ee3eb8ef7ac9a3f4889d73d0071126badd..eb5ce2e69adfe22fc4552cdb53252d33da7d128d 100644 GIT binary patch delta 23 ecmeyt`Ga!<9}BBIg9(G&WMLK)M!CrzEE@n!{RPJW delta 23 ecmeyt`Ga!<9}BA-g9(G|WMLK)M%l?8EE@n!-UY+} diff --git a/bin/net/grosinger/nomads/DroneListItem$EnumMove.class b/bin/net/grosinger/nomads/DroneListItem$EnumMove.class index 25ad3e630a78077acdcda0d3cf0a8ab01cfb5ece..7285ecf821a18c06225e3f1834b7440ee19ad91d 100644 GIT binary patch delta 23 fcmX@XeS&+#Jr-7JhAalD$&Xn~7^Nmlux&Ut6Q zXXeHKJbMMeU3krp41rluGhWeSTd`2I$FwV=R>bIzRn*&7)NBgH;*D`L;)hS5u+JDY zD#Avzr(#oQpV<``@I}qN1SL(cFQQT)r{6XQL)Jh{z~41s+h&x!Q`7L0#}_w^h`@|A zRIQ{SW$r#}z;3myFvZVIN3KXnUoaSog*wA#J#93iU8aC&6qpzuh!{;)ml3z@(UaRO zZSWX;o^6IhMrSA-itnR+-R3Sc8Z)UtR;=GNy9EMWhTUVe^czZkR=n5TMUyj)9`&}p ze8{!3q@}&FwQk*x)|%R;h7x+RBpHknCm1C+1f!%OIuO}t4N^wNcB;JU4GX9b*$iLE ziV9?}4n;%pDuH*Ertw)K4=Vppnsod+jAd;Md7ag529SxF62+KBf0dTC<$`G@k%erv znk(UVR;3a-$W^$Y#4RXLs|6CbI;(Pt0P=FN2zU9hSYV20o;K@@msojc>`*@;ArghYNG>d@dv{dneU{Up}nO*B7d#z*yKEYoSJ zZK_ncP|y^Ln#}`|PSb8RSgZm?stChvhRwPQn=aB9?+vN0!UAj79Vw5idz0NJz+GLU z;V2@NYb5V6;|}@U(z2V$Y=JzoTql>iq}*v~Ww7BCk-9Cl=P8*&d+jM#_BezXez&j)k;GL8i(Ji?mtyzg0OZIT~5cXb)J8_UA zO3Su425<1-ewxr_M3u_TmL2cS#bF%r zI)L5 zG*!F6!ke)+aUrwF^IPIZ*Y1r*zwS&bxThti;$VPpe_UZ7~TuS+t#JBMbrPRcgkqY%4iSH_u&++gfyd?2`P19_toKrME zl=zWCWw{A>2tSedsm8eBJA|K0yzF4&rV&;ffv(=QAv4_FVB41M#}ws+SC#wegv0oQa>5@47T=`pqq)a9j+)wC=Gu_H zf^-TeaCvc5w|k@@UA0ts#4~hHT6lvL9>6HVhO7RBC8Q?+`zQniXRj zKc{ndl{#e+HU%$WMsWTRW(OAxVNP)25atC73x-e@^bKKta56s^o<&7)7Aj%FL*NBhNtJbtvR)lWmTDiWH4I|U7`>*j z)uqaMjk5kej;y_Gu1XefXfIijR9XL^tbdLp>mgSb?|m;>{VB58+p>fhN7h?hS&t-T z)v-}3-{%E8&ZBI~&asAy00JWKI)Qn~0OaAVTHpjcidn95D=AR*S1qv5M}d8*8cv|V zA}!GAvn5)6u^ctqTd zN5yi^psP6VSK_c(jU%Fpvu7=y6l*y$ug6ouxtp9CIPQiZfFrc@8G7Q2)Z|v={|nWA z91=zDzhEW^HFUdP<@Ckt5a`QXlUa2UU!p(HIQ|3{6R!fN&S&tM!zak6!nfuG3NrW+ z@Kv2aRz{U`)1T#Se|~E5FovfdLw->2b`Im&Vt048n7hj=_Kt^Y`2`lDjXyQE^Jm1Z zSRl5cTx{p>F%Mvg*nwrD6Dvd)D#b3W5n*f;7VZ=M*e)K#4q+oCVmfDnjs?ji?86lt zrREvv#aEb)89d*GuX2^Cy^;_AzxguZ^Z7(^eqoOKj^(;znwzWp&*J%xtMHv}zlg72 zxg6NQMENFDtwDCWYSXnzL&jK2`7ar-dM`D^uL_78!-RZspO#01{2 literal 5662 zcmbtYdt4OP75?tBu&`VLVxm#NXheloL1G%?i-3TYi1+|OG>r~0E{nT6bauf=nm%JnY-?2Tk<>oYrfu4!@5Uy5rH{Ybf7`#>rr*6YyXZ1d@(cWC?!9Nu z`SzT1&*RR#^509B0o;PW1>h67Ic_Ga!?u-(#KWdt9k*geZ=$-B#~@Rny~=< z0!97CkWn2q;^FGe-Th`yQotWK4{#`N`Tr2B1#$;$b0}gBCIkXKgSKtPDO);;EM@Wz zT7!1GWko48ZxU9`LjJ;`NFvf5H5;k95$`btM6NSJN!c7t-m`i_DRCeTn;U$rc95pMK2spEa61m7z zv9|T8SX?^Kl321E`zGe663vIyBJygqa-Em-{xEmQLcS2qhShs1n8%#lg zVwGCa4#Q?PMNOCJPxeJr1z_5=>gtit*_L!=2y)esDh`3LnRJ*IR#Z+UN(J&Maupg^ zX|y?$VsJZ($=#7zKN!bM#~FOoGQNnYz-^Pb4g~@?lEo>E85Kn_bx0H{rt8SGZLGYg zM_m#{>XFjC(XBO#ewV~FMb9O@%_%$uoHnFuk7C**F+Ii9t_qPN_DEc>h&g1h51Wd# zSK(k zkKhnZ=rQ6-`*p+TH^7mZECXy9h;tzIIcBpQ*57=cuKM5yQVi83C7}4oRD~0 zb2TZhFGzgxYOYSx;rg<~S2S0rz|yH$o9dR#+Jd&E(X(%pF`x^K+T5>7%*Np$fBiwV zJS7pv7B&02M8BHdg3}Vu;|zC7`NzrHdd6O$qM3inaDj6YNermjsDzCHIv;;E)j=RELLUjI?)TSsqcoBk^54LzMcYGE$MgC-Hqn z@;e?rf*(lyQ1i4}D&`c=D-u6eq--|;kKk2_*EGf5z9aaV#Lpc{(lnw<>X#C~Qk1~< zfv|1#YNX#tysl_|wNnB7mi=Sw7}#pH4fgb{kC@TkCfl~`0A?vC{7$)_PB@A`C@1_; zpk|7;kHsDjS=7|-G1o_QC($9CiqR^i0{5;t9yjfVsFBd8v%Iu4i$*FwFpmml@w7V) zK6MV^%%@HvdgK{IkL-_nWKxWwM6Hi8t?X;$J;bgL9%uZxjaIH;i@KeiVkI?L zg*jM@1*jvX9!>1|O`2b8f%V!q)Cce7Oz_EiY~akNXU)XQBK1yeboH<1sJODJ$Gp>= zI6v=*wrFVSFu2eHEuO;jGljQ%3U5NI$1g9)6u#S2cr&(m2roL7p?26)c&n%IwoKsx zPvLe?;q95i2R(&5J%x8<3g7Q3ywg*7SEle$PvQ4@3Rh+dAM+Hx+f#UVrts6A!iJ}C zcc$>Op2EGJ!e*xM^Pa-&6&^v-mnnS7Q<&|=LwH}N@JpV;G3KgM6>6DAD&ul=MHtKK zpr*dcO7@yYnBj1xvo^=gT7kGX*8EJY*NJsy0xXsHD!VNVjMJ-xl_?YJEn@w70<8D5 z7Ah<@QZKB&Osu~X>mL(fC0s1FXD_UMnOOfM*1sme8g#LS(pU|waLV`jp{{dSRIrD53rD4z`ct{aevh?$#{g9s>Hdxs(3BqrBvL>%i{F_uZMU&>_0_>HKX|O zaY*)&M@I1p|EVmOc+4Sw<{ILY4)Jr>5I^q_zvL4Ar__Iziu5eqfx6lEAc|?3dKtN% z@18TUPRvG&C_$Sj#da|VonjsgaWneFeDsS2h>8jfiAvlfLbz8f;R(GON5wKcCTeg@ zEXU(w1)dPA@uau|Pl<-Bw%~-j1wkC+%fU1B#7SzxU;a1h0yrXy-G3oe6!L7$JNqwJ z*}DJsXRXbuy?|%w&tb=(Kn)R;M^$H>%WDCz5U*#o01<^;{WOBWmv*53S>iAH+s}glpjkwoOxL5*nRhl+N7 zisJml*xzB;8NGi@SpCyfEO>n7~IG}`8GqXD6sh? z4})C2#8rCnG8g{TlOJ)Bom%{ai=5Qrr(6`}rdGdDtMs#9bLBqjI*UuE8OKFDE0wW2 z&A}r2{R$T2R-R<8=yOY>u3D|w%5fX+!fuXxc)E{qj57%jadf=w97PJXr&Ru^xLAQ{ z8v=OaZ3YPQ?hSRjf{h-x7DdxH{gl4qn}y>moOOM5=NY`2^40HMUolmN)21=QhST0* zW(}vk!{ixuok*kKJk5Q)QD+CQ|Y8JoQdwY(kZjwG?F3sHLMsjCXDE~ks65} z85%R=wuZpjgq7jCsb_KfoPw9mHaoodVDS<5n0 z_CABo;?&Z*HH5|JP&%72GaAYrv#gyMk9Js=aY>xevZyaHk}~Y9MWgNcblUP0Rk*Qs zA_UtKsf69GVQXD}Rh1JjruqR!)tMeP!zjQi9V<|-p`fmQpa>dP>j)qyyEQsO2!^?< z*0EM}%FfbHX0$V%%Gg#mZZmQXB|V9hc{rOKGOd1NXk6td9XG}Y3@agLSLnA#6HG$Q z5(MSaBp>R2ge~uAk$?{JBAok-)enTQNyEm+UuFnfG*m6F7e+1WBpvk{t}NnsVJ4Rd z#>@5+I1Yt<1(aR|FKtW>HC3p|XSSS5OGI&>^!BN6<7(}7!- zq~vALA=IPVP(t!rj5W(9TSk#&Yqrl;&vIT!gq5`;|C`75S7FAZTxgG)F8dIr4yh1@ z?v64ibLDl9CQhz1lrk?k8e!^sq4?{%)n)UoCo4&$;+AP-Oixm33=b#lL^@@Rd$K~x z`qN#hVY&G}9sMY!7vW)Ev_&?c) z1oL`A1TX72Ju4U#fuUmv95=<(m_-!%untq?s($EQre^w>LgzL0*+%?auW{ZT2vP^V z^qUdOF&*b*!ssgGB! zM~=@b6-+CA?j+_eRAM*QAx88z<+sK`^!#o_gbdm5C{YX~EPfzd2FIzbk->&Yy_A|ULN25@AaalkWvCa-a2uJMVy#+-|JJU8bW8+ncQq9c!S%ZE9%$MPEQV@`Z- zMeSF0G(YxOE`v;7kS?zX+X*IB6jTK`cLiZ3eVx_!hC--tw7feH;(%Lg2lHc9=3-qT z)|-o99dfa{@vNJf1-zPbvECxq+lyd5$3Br_=t1uzSk_huOx0b;QH! zWHn2^iX($J(NcXT58(U!0DdqJu-HplF^;-`&wEKbO*jFpX605kOygLCY^L!-gT{lJ z2y={`Y48!hwb$7kH`p8>qY9tQb5`v+tHud8tAn1i>vSd4phMcEcM`3Q(>O_|C$C~F zx2L#0broy5J;Ps|1Z0sT2~9$mQ*YzU!|#PsfoicWYT|v)B;FydFG%Gp)Z=S3;~TW% zTaJu7*ozrO(HR^a9>orvRTKl%ig4${h@=+&`zQ>dw#hG(V{~?sXc`q{%ytR;o=L<= zH^JZd9)G*P#XpG}9?~s=^1wSNx?G@5B6!)amHUI&5S&Eey0zCH-lImmr(x#d%v=Nq zm>%Eu_Ks}XsNv#7jTgbB>pOdocJGLg{Eou`SksV PLjS+i)NqL!KD_!rHbj(S literal 2908 zcma)7TXPd-7=FGaP10m3ZRtVU(vzjMX(4h(3zbq17SnQQEfi7Mrb`Gk32wG{x^wVW zZ$-V}g0YS=4$eS3h$4;`b}vU6Fx z$ahC-dHYnh=nOelu1_H}ZHji(A>@devlOaRi=d;9P485zNYB`|m3Q`;be5);8d3=F z&gQdDzru#D7jf1-PIrTaDJzB`Dh(K@QV4c+kC#JXje#DMX0t=B9?A&t*qQzic3iayhLx z5JOyHbt;>;MrLx8mOW-pPV2-L(&qHIX=ml`2}92LY*C?g1+G$UmY`f0R!Ya>E|c&> ztf1Qnecj`d!i|#VO$wQ140JpB?XUug7tx{5I9`#oZdPb1nbt*uESC;QGf-$N?R!z5 z8HlnD2i@-OT(P=7S+{m6-Qv<6e*3cR*uc@E4;XdMTOM|VQr9Fxp?9LpZGqaZ=Q}_; zJCe8FcQs{U6b)meg&8}|%E|y%_{(#X3^Cd`u0d|x5CXD%cnZks(Qi((esh-j zuAruYReV?)p`PV z5@rJ$(Z&7J%@a`P0#ee=8=;Y)1!JJw9?$J3Bq?-z#qC|xPbk%MAM57PJDlhh5`2)v z9VAOJXl7`@W-{1Xyc|K$+seA zS>hI|Z}Jcz7&L8QKm!`Cf(NMRs+4ifQscuVjk$|Ucy3>6JX+FtCw7%E?zpjp_UV$w zull9$XOL3*urB*zePddBjupyi1h<}HKa*j+=GC*WG*-=0tV_gtZyBuJ9@ZZ8dqF+J zt9>cfN5uMg8LZdYk5b3IESX!^MXbhWdf1Ke3b8(225TROMX&~atU-2^!HzYPoTHm4>-;u!g9IG1~!XL1k^1ZmJDZ1l0 z;8PsHDNV7AT3dJu;B84QLJtv*png**$lRYsm0L%ps36PifUr-^qK|an;qUC8P=9Dg zXcn!!q<56nmR&{pm7tnM_)19ChQikoCb@M@*B}2)jT5P!g~tnv5geogV2%;YGlDx@ zP;nhYfV21MNWAE8ny^^niNzletZp{7EP8Uf`0 E19b8(0ssI2 diff --git a/bin/net/grosinger/nomads/DroneTools.class b/bin/net/grosinger/nomads/DroneTools.class index 18740a292f4a8e9c831ffe1d9f14c53452f346cc..fb203e42bedf61dbf2d299deeb4a0096b036f6bf 100644 GIT binary patch delta 1046 zcmZuvSx*yD6#h<&olaX6fr<*!0X4LMX*BUc>K4RE1-Iaa#)Prlu%yh8c80|bcX1ak zZn!Ve#3w{kQ4?Q$F($tHY~r*3z!=Z8;EO!WoqNvr-E+=&&iPR?6)O1p=ffuetMFWb zix86J3cZdlcjraI@%X5#RGKa?#op|9uXY#u6DgrvqS3U|f>0igG|LeRhO&0dhidc% z(2oIv(jlzfLhm6|h9je{vUz-G!Vw%(aFkzilF}je1#leY1RvAu^`vejgo+`YQgD(` z(5?6BQFeAjTL#mXVDf34A-GN3A_SYWaF-d~nd&mE7K<0|chWv4^{qmYC-jXU7tPi6gmqCMH4sCtAMp z)R13(_cR0xk%uCvD8^g_`L+P%D3MX+5QXGbWdnufH$GR&d~ch&mesFA6*kB|Z@bzE z1#wiMN&fV9tGgN7!`ME#S8Z3@7}FU`$j@qI(R$87yxGOoZ&6a6K^=dq`5u(yE6VRd zC1ZgcLss~Ht?7ps11P{CN_bI2IEr1ood<9Ny}XkHIO%LA&hrvJ#u>b1&IEI(Ff6zD z$A&D9G>;>`fCp~=H#nIxurnB3TRI^Q#v$7XQWtd@R-eZ_f`0jfz-`!_mibe|CA{5IGA4;Q6A~{j1JT{%k zk*W!#YbGsMKFoaHBS9aAesTZ;J*|xl93Q>%MrC)i)C;VcYSTkxfcc(jBE$I23qowtR3vSi9SGU8Ztmm$hzt`(O$0j!P diff --git a/bin/net/grosinger/nomads/House.class b/bin/net/grosinger/nomads/House.class new file mode 100644 index 0000000000000000000000000000000000000000..0c103421a6fea9146b967059e33c579e059a6602 GIT binary patch literal 1180 zcmb7CU2hUW6g|V&7P=G#wn_`F)!Oo*;MZGCQzbEy5MJ64eKK2^;2Kzx{m?(DGD-*HFMYq`^jJ@i|z zr=c$mBm^pJ?_Y+_c*qQaL?G>nK)(CI{%E(xwmWK_2Oh6Z1U7@vbK9P@1345B9f8zy z$8~~Jfo8S)PvS$8gahWwlTN4Br%ro1lo`a4HIYUpjT~+oxFN8+mZzutFp$+oecN-?c@|6r?;T&DyuMWJ5xX=M>e`Undh{Hy z)EEnM<)=5%@2$Yu|9GLt*Yj_XRVJ+^&c`UV~d9Iu_!sxboT z#q@E&p5lD3F)lWycbp;rN#5`!@Vm*=J0!S(T)k1Q{D4{ihOH|UzUl;v-z`m(`MB`;*Hg{-xZwGhct1b5hXg3<@LJ1d~YzbZ3X|Bk&c+{6e2VJcYBB4z}bi3r@o zAtTDFr$j4Unies?F#OEJGQrUjL3%-OA4fBSQ=*kMsd|HLUt65f(MRm=v1ZtgP>ViO WIMyY`P}Pbx4gh+B4I2FLtn?RvYw36Z literal 0 HcmV?d00001 diff --git a/bin/net/grosinger/nomads/Nomads.class b/bin/net/grosinger/nomads/Nomads.class index a1b3a255a72685409599e9a3964f3bd2ab766f91..ab6289c51029e9a62fa8cad12147330740acb8a8 100644 GIT binary patch delta 2094 zcmZ8hTU1n482DxL5MqcEd01Cv$`;Vm;$ z+LdKD>>}M&r~#!+x@qQGJ+*quM<05s$5yTA+h;V_VrH$g_x|^P`Tp#)_9)1H8ktg7+42FWSg>DE;GN8kyc9Z3hn4abru*aH%QGt9Z z++(HJR^%+l13IS5CAKVW24>35HlKJ1T*oqj0&0|16IC$K65MaD478dCRw%He z6xNh#eO)Jb_rBpKZq~Zn|ch^S(jiv`RN~2bu)v{envD&~Itd&FB zJh5K>t<7<7Fp!3g0u$x1E8kU5v=uIFlH2Wh&MgME;t|i?*Afoz@kL{S zNGup?Dl02f_?r#fhjb6hvCF`2v#m$w`~@q`?96wHiczkw%Jg03brRvT_NqiKlXX#)q4 z5YU?g(K_>qm=$J=j%NhM$+OOJg)STvNVD{Pv2b{|&w~yeR<*BCyQ2o4#WC6CEY3YH zV6<9T&BkzO2dVAA33dH~{KYxL)qzt6y6~dR&?mVn@sfd;@rta_eaPwRqLBgU);Lz#RE}h5l63qKH@pzYIMcXZ(snIHZ zVG6(LP($v9hyQdqG1a;O%{kO}oRo7Flsk(1QFPDLX$ey%36(Q7P>d4G-!zm`q9FXn zND9RAUX*!fB{6#tm4vde4~qt{qz9vFN|Jb}2QIZf+^eK@N_8Do2T)(5_6^*Z3}Ev` zdh#L**_>9j`Z$xC$|HfBE|OruIE{3xSzCM65_T}W1zU=d%5W&Epz zi(yv)@hBeSn#0pJY$trbwF_`Jhu$AYBX>Kfkp^v(j+HBQ)Y!=#$3BrtR+2M>B^!h{H5Kj=hk4Q53PW*b(VCh8})FS0+BdhlDVj#C}9$ zjqVoUW6CtzJ4pK{{3?nI;rs`gVpvr}*xA()_UbTEXu@s>s&sV!MW)^AVWq=_>a-xe z3a&-P*Ay*f-cOly5AyDEc%B>h00ZCzy59u_b= zY#G^%%U6cMRM?4JWmUS7Q1g@;iUXFh>UuXm#}{`L&$4?}n7OIq*Y;rYw7aEO&7V~D zzkCT-1&XcjIXFr$P{nG8U&RI5rr_pUP1eaG9V9`A*w}|rT8mB+d(;Z;qap+0d;Gw4 j43(}~-J8Sxb^OR%MRF!=!<>6f$54u4mC6lX*znVTAz_v5 literal 3872 zcmai1X?qjb6@ITRdn9>+jWGlR0pSv28-q#Gu-PFswlN~IOt5U0bQ{Yz^1x_D8I1r3 zvX;`cP180{SJEZv5_d04D@w0->y4ai69|IAAmQ&UltJksIT<_S_DVYrf zOzW&HdU<)w^POpd4XK(o^lqO()N-7RwDLuP)hTVP6xdGhfbUzgDZ3a@BsOm6Tq`K~ zQeby2nf}^G4EdfbmF>R$v|{)r*JT(2;-o;+(C~qYk@3txW@236zCq6|29_I4T24vU z696I5tVNRPWF|R~N}e1Ri0hTnvB_cTgcgQ|2Qr5^TcNiGk8+wEOD`@Qm`J9ElIamH z#775?j0~rb4rFLaB-J4VING0eY}XF<3)FXZO$tN?y=iG+gTSg9XvDD|8%=CNyFg>V zR*XSlvk3!HHTsB&CYW?SWxFz6%1=o@V@)|kt~KRlEoaj5Z8g`6anxfYj|^t)qQC>S zQ4Et!03&(Jb_LdSJ{{&jCw)BdiD_TgWDGsnVPN|mlo+2a1~PA=7dsiBS0XzWl5Bgu zN2nQ4UnMAtM+6chR$eAlP`2gR&sl-(xrr&6vvuBf?AQ^hdR10R%v5LjC7aa6T?)31vtSqRAO^hfL%{q+nz{;M^_*PcNkyI8AFNr-l zwy31MOqm!(nu)F+exPJK({7H*-PBn-yI~o2O-6A4lJOFDO-0Uo=tCd(Jmj>AXE#2H1= zXif&B-Wgd`2cI)Bi|1H=GgdLJ&tL#24O|eoze@SAU1(ZLKZ+OFMzsa9$~&Ei<2+tc z-EEH=y<*}sxJdM^LP5IfCh0u95ciVSvtWxI zp~M}2^(oCSns^OgVvvCsZY~EcT&3(@eA&cT@Kwf=lVr0MNT#1qcP6_g8`$R6-v@Dg z9p5zYjXU~dW`^Bw+Qhf;ZGncOBc;|m+%*};o2uNu!-Q1POS(+8Un&H$+AgB_9`jvg zSfyN5X})FRZB?2vChC~3G}Y`&J{e+U*>q@)o0^k~d8`z+m!=9A*_SCt+)A}0s)MJ2TrcVd%)e`#d)rBfHm^B~QP5cJG4QYJP_KPfwt@rFxW%T%fCj@VXHM^V4h#AB_=AD>?siY`L$MQ^NjCMMi6f@&OpapeLBiD- z$8~z0&k~N?aUZ{YFX{DW&RdqvS1y~kE}O4fHg8)tUyU`3_V3qTtmP?$k|*w_FY2%P z7S^A*fd{T55xI_zt6ZwX7XGf#VZ`Wgoa073sCW1rR8Ou2Bfb0zt~Yewz}Bj2qh1VE zRD=}3L+Io;hAwn-MS1Wq9;AF2x`u7750~-iE$pQyeb>=HkNtCKNo^}*a1K%RJ#Gj+}T2j2kHJ+N<73| zb#k^H+la=a*u&pGJ|6lph{tuf-H0gva1u}R+s@g?@dGVjvk|sC)~Ap^AX`85DR!`8-9R>-*~a=MY>J;v&R6rU$MeQO3-^hB>sgH{66H zNNImxq&-qbpcc*wT)zDwC3id~FW#eU0snWn8|7j?1@SQ(k;mqxk(R^svA?Y?e(n1ZoE9a5LOVquD(|8?@26R7h zh~riKfW!nXU&0SHMcb+UBm9_2+)1juLqH?6+mAV}MQEvkwtqrh1#%}E|AS^BZleti zLPQ8`9%#9Zef%d(M3}Kd2HyNPrDN(16=nc7?Fedjb-#}lD*m4`{yA)@fcbNR*kL69XaBPP@RQ-E%g*L*%3ajIs zwxReR!xdazkbj#p>a;x}A4cb}wWq=cRR-76+si25#P0;U_3t}q*nWi~njinvr-WXw zBLKh!g7iF7_5wNnBAI>xyYR9;IibsY5B`KdQ?89Nf6+W{=lHMq8+R4hD^Yiw8LKzg PhBeMApucmY4)6aDrH;5P diff --git a/bin/net/grosinger/nomads/World.class b/bin/net/grosinger/nomads/World.class index 7bcc59e2556dcbfd841a491e58044c41d5e865bc..5a0d70ce40b85c65556bf1c946c7d009d3654546 100644 GIT binary patch delta 3013 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 Ac>n+a diff --git a/src/net/grosinger/nomads/Building.java b/src/net/grosinger/nomads/Building.java index 524b2d2..d95ef96 100644 --- a/src/net/grosinger/nomads/Building.java +++ b/src/net/grosinger/nomads/Building.java @@ -22,7 +22,7 @@ public class Building implements GameObject { // Houses will extend Buildings public enum Structure { - TOWNHALL, REPAIRSHOP, UPGRADESHOP, POLICESTATION + TOWNHALL, REPAIRSHOP, UPGRADESHOP, POLICESTATION, HOUSE } public Building(Structure thisBuilding, int newX, int newY) { @@ -44,6 +44,10 @@ public class Building implements GameObject { name = "PoliceStation"; break; } + case HOUSE: { + name = "House"; + break; + } } x = newX; diff --git a/src/net/grosinger/nomads/DroneListItem.java b/src/net/grosinger/nomads/DroneListItem.java index 11090e7..ad9ad27 100644 --- a/src/net/grosinger/nomads/DroneListItem.java +++ b/src/net/grosinger/nomads/DroneListItem.java @@ -16,6 +16,7 @@ public class DroneListItem { private DroneListItem next; private DroneListItem previous; private Drone current; + private DroneTeam team; /** * The DroneTools for this Drone @@ -50,12 +51,13 @@ public class DroneListItem { /* * Default constructor, includes all references */ - public DroneListItem(DroneListItem theNext, DroneListItem thePrevious, Drone theCurrent) { + public DroneListItem(DroneListItem theNext, DroneListItem thePrevious, Drone theCurrent, DroneTeam theTeam) { next = theNext; previous = thePrevious; current = theCurrent; visibleDistance = 15; speed = 1; + team = theTeam; // Place itself in the world Nomads.awesomeWorld.placeNewDrone(this); @@ -195,6 +197,15 @@ public class DroneListItem { return y; } + /** + * Retrieve reference to the team this drone belongs to + * + * @return DroneTeam + */ + public DroneTeam getTeam() { + return team; + } + /** * Sets the next DroneListItem in the Linked List * @@ -351,7 +362,7 @@ public class DroneListItem { // Make the move Nomads.awesomeWorld.moveObjectAt(getX(), getY(), amountN, amountE); - + // Update the saved coordinates if (amountN != 0) setY(getY() + amountN); diff --git a/src/net/grosinger/nomads/DroneTeam.java b/src/net/grosinger/nomads/DroneTeam.java index a816847..26cf58f 100644 --- a/src/net/grosinger/nomads/DroneTeam.java +++ b/src/net/grosinger/nomads/DroneTeam.java @@ -1,5 +1,7 @@ package net.grosinger.nomads; +import java.util.ArrayList; + /** * Contains a pointer to the first and the last DroneListItem in a particular * team. When adding drones to Team A they should be added to the end of the @@ -27,6 +29,11 @@ public class DroneTeam { */ private int currentBalance; + /** + * ArrayList of all the houses owned by this team; + */ + private ArrayList teamHouses; + /** * Class Constructor * @@ -36,8 +43,7 @@ public class DroneTeam { public DroneTeam(DroneListItem firstList) { first = firstList; last = firstList; - teamName = firstList.getCurrent().getName(); - currentBalance = 0; + finishConstructing(); } /** @@ -47,11 +53,19 @@ public class DroneTeam { * GameObject that will be the first Drone */ public DroneTeam(GameObject firstDrone) { - DroneListItem firstList = new DroneListItem(null, null, (Drone) firstDrone); + DroneListItem firstList = new DroneListItem(null, null, (Drone) firstDrone, this); first = firstList; last = firstList; - teamName = firstDrone.getName(); + finishConstructing(); + } + + /** + * A few things that both constructors need, put into a different method. + */ + private void finishConstructing() { + teamName = first.getCurrent().getName(); currentBalance = 0; + teamHouses = new ArrayList(); } // Getters and Setters @@ -92,6 +106,15 @@ public class DroneTeam { return currentBalance; } + /** + * Retrieve the ArrayList of all the houses this team owns + * + * @return ArrayList (House) + */ + public ArrayList getTeamHouses() { + return teamHouses; + } + /** * Sets the first DroneListItem to that provided * diff --git a/src/net/grosinger/nomads/DroneTools.java b/src/net/grosinger/nomads/DroneTools.java index 51a8028..248232d 100644 --- a/src/net/grosinger/nomads/DroneTools.java +++ b/src/net/grosinger/nomads/DroneTools.java @@ -2,6 +2,8 @@ package net.grosinger.nomads; import java.util.ArrayList; +import net.grosinger.nomads.Building.Structure; + /** * Tools for the Drone to use. Only place methods in here that you want the * drone to have access to. @@ -55,7 +57,7 @@ public class DroneTools { * @return Boolean - can move */ public boolean canMoveNorth() { - if (getY() < worldSize-1) + if (getY() < worldSize - 1) return worldReference.getWorldGrid()[getX()][getY() + 1] == null; else return false; @@ -79,7 +81,7 @@ public class DroneTools { * @return Boolean - can move */ public boolean canMoveEast() { - if (getX() < worldSize-1) + if (getX() < worldSize - 1) return worldReference.getWorldGrid()[getX() + 1][getY()] == null; else return false; @@ -104,24 +106,25 @@ public class DroneTools { * @return Boolean - is Safe */ public boolean inSafeZone() { - return worldReference.inSafeZone(getX(), getY()); + return worldReference.inSafeZone(getX(), getY(), listItem); } - + /** - * Retrieve a list of all Drones that are visible within your sight range. (Sight range can be upgraded) + * 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(){ + 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++){ - if (getX() + i >= worldSize-1 || getX() + i < 0 || getY() + j >= worldSize-1 || getY() + j < 0) { + for (int i = maxDistance * -1; i <= maxDistance; i++) { + for (int j = maxDistance * -1; j <= maxDistance; j++) { + if (getX() + i >= worldSize - 1 || getX() + i < 0 || getY() + j >= worldSize - 1 || getY() + j < 0) { - } else if(i != 0 && j != 0) { - GameObject objectHere = worldReference.getObjectAt(getX()+i, getY()+j); - if(objectHere instanceof Drone){ //TODO - Not sure if this will work + } else if (i != 0 && j != 0) { + GameObject objectHere = worldReference.getObjectAt(getX() + i, getY() + j); + if (objectHere instanceof Drone) { Drone droneHere = (Drone) objectHere; DroneListItem listItemHere = Nomads.droneToListItem(droneHere); Neighbor aWildNeighbor = new Neighbor(listItemHere.getX(), listItemHere.getY(), droneHere.getName()); @@ -132,4 +135,29 @@ public class DroneTools { } return neighbors; } + + /** + * If your team has enough money, will create a house 1 space east of + * current location. + * + * @return Reference to the house so you can find it later. Will return null + * if it can not create the house. + */ + public House createHouse() { + // Check that there is enough money in the team bank + int currentBalance = listItem.getTeam().getBalance(); + if (currentBalance < Nomads.HOUSEPRICE) { + if (Nomads.DEBUGBUILDINGS) + System.out.println("You do not have enough money to build a house"); + return null; + } else { + House newHouse = new House(Structure.HOUSE, getX() + 1, getY(), referredDrone.getName()); + worldReference.placeNewBuilding(newHouse); + return newHouse; + } + + // TODO - Implement time to create house + // Building a house should take many turns. Their drone will remain + // immobile while house is constructed. + } } diff --git a/src/net/grosinger/nomads/House.java b/src/net/grosinger/nomads/House.java new file mode 100644 index 0000000..2001dbb --- /dev/null +++ b/src/net/grosinger/nomads/House.java @@ -0,0 +1,50 @@ +package net.grosinger.nomads; + +/** + * It is a house, just like it says. Basically a building that can be owned by a + * team + */ +public class House extends Building { + + private String team; + private int turnCreated; + + public House(Structure thisBuilding, int newX, int newY) { + super(thisBuilding, newX, newY); + turnCreated = Nomads.turn; + } + + public House(Structure thisBuilding, int newX, int newY, String teamName) { + super(thisBuilding, newX, newY); + team = teamName; + turnCreated = Nomads.turn; + } + + /** + * Retrieve the name of team that owns this house + * + * @return String + */ + public String getTeam() { + return team; + } + + /** + * Calculates the age of the house + * + * @return currentTurn - turnCreated + */ + public int getAge() { + return Nomads.turn - turnCreated; + } + + /** + * Sets the name of the team that owns this house + * + * @param newTeam + * String House owner + */ + public void setTeam(String newTeam) { + team = newTeam; + } +} diff --git a/src/net/grosinger/nomads/Nomads.java b/src/net/grosinger/nomads/Nomads.java index 6b63c56..96c3fdd 100644 --- a/src/net/grosinger/nomads/Nomads.java +++ b/src/net/grosinger/nomads/Nomads.java @@ -8,6 +8,7 @@ public class Nomads { public static World awesomeWorld; public static ArrayList allTeams = new ArrayList(); public static boolean running = true; + public static int turn; // Debugging Modes public static final boolean DEBUGSTATUS = true; @@ -23,6 +24,11 @@ public class Nomads { */ public static final int MAPGENRATE = 2; + /** + * How much should a house cost? + */ + public static final int HOUSEPRICE = 200; + public static void main(String[] args) { if (DEBUGSTATUS) System.out.println("Game initialization beginning..."); @@ -69,7 +75,7 @@ public class Nomads { if (DEBUGSTATUS) System.out.println("Game loop starting..."); - int turn = 0; + turn = 0; int counter = 0; while (running) { diff --git a/src/net/grosinger/nomads/World.java b/src/net/grosinger/nomads/World.java index db26d70..96043dc 100644 --- a/src/net/grosinger/nomads/World.java +++ b/src/net/grosinger/nomads/World.java @@ -165,7 +165,7 @@ public class World { * - Specified Y value * @return boolean */ - public boolean inSafeZone(int x, int y) { + public boolean inSafeZone(int x, int y, DroneListItem listItem) { /* * Safe Zones - Measured in radius of a square TownHall - 3 : RepairShop * - 2 : UpgradeShop - 2 : PoliceStation - 3 : Home - 1 @@ -186,11 +186,20 @@ public class World { } else if ((name.equalsIgnoreCase("RepairShop") || name.equalsIgnoreCase("UpgradeShop")) && i <= 2 && j <= 2) { return true; } - // TODO - Include Team Houses in the safe zone test } } } } + // Check to see if they are within the safe-zone of any of the team + // houses. Houses provide 1 radius around the building (total 3x3) + ArrayList teamHouses = listItem.getTeam().getTeamHouses(); + for (House currentHouse : teamHouses) { + int houseX = currentHouse.getX(); + int houseY = currentHouse.getY(); + if (houseX + 1 > x && houseX - 1 < x && houseY + 1 > y && houseY - 1 < y) { + return true; + } + } return false; } @@ -203,10 +212,10 @@ public class World { * - Y Index * @param range * - range to search - * @return Arraylist(building) + * @return ArrayList(building) */ public ArrayList buildingsInRange(int x, int y, int range) { - // TODO - implement buildingsInRange + // TODO - Implement buildingsInRange return null; } @@ -253,6 +262,8 @@ public class World { g2d.setColor(color); g2d.fillOval(j * 10, i * 10, 10, 10); } else if (objectHere instanceof Building) { + // TODO - Add color-coding to buildings on map + // World owned buildings should be black g2d.setColor(Color.black); g2d.fillRect(j * 10, i * 10, 10, 10); }