From 3b17dc257dbf3995435753a9156eac2bc45d8d3a Mon Sep 17 00:00:00 2001 From: ssl10003 Date: Sun, 26 Apr 2015 18:53:12 -0400 Subject: [PATCH] selling and upgrading functionality in progress --- src/Main.java | 12 ++--- src/MockGui.java | 17 ++++++- src/StatGui.java | 64 +++++++++++++++++------- src/TowerMock.java | 38 ++++++-------- src/TowerTypes.java | 20 ++++++-- src/resources/images/Sell Button.png | Bin 0 -> 4501 bytes src/resources/images/Upgrade Button.png | Bin 0 -> 3054 bytes 7 files changed, 92 insertions(+), 59 deletions(-) create mode 100644 src/resources/images/Sell Button.png create mode 100644 src/resources/images/Upgrade Button.png diff --git a/src/Main.java b/src/Main.java index 16a4ab8..b26f413 100644 --- a/src/Main.java +++ b/src/Main.java @@ -12,17 +12,12 @@ public class Main extends JFrame{ setupDefaultNodes(); JPanel container = new JPanel(); - //container.setLayout(new BoxLayout(container, BoxLayout.X_AXIS)); container.setLayout(new BorderLayout(10,10)); MockGui mg = new MockGui(640,640,32, NUM, nodes); StatGui sg= new StatGui(0,0); - //sg.setPreferredSize(new Dimension(1, 0)); //this keeps statgui from overlapping mockgui - - //container.add(mg); - //container.add(sg); container.add(mg, BorderLayout.CENTER); - container.add(sg, BorderLayout.SOUTH); - + container.add(sg, BorderLayout.LINE_END); + sg.setPreferredSize(new Dimension(200,600)); MapTowerDefense map = new MapTowerDefense(100, NUM, nodes, mg, sg); mg.setMap(map); @@ -31,12 +26,11 @@ public class Main extends JFrame{ frame.add(container); frame.pack(); - frame.setSize(650,720); + frame.setSize(860,670); frame.setVisible(true); map.createMinion(MinionTypes.BASIC); mg.step(); - } private static void setupDefaultNodes() diff --git a/src/MockGui.java b/src/MockGui.java index 5739418..3c2d58a 100644 --- a/src/MockGui.java +++ b/src/MockGui.java @@ -236,7 +236,7 @@ public class MockGui extends JPanel{ } - public void drawAOEAttack(int x, int y, Graphics g){ + public void drawAOEAttack(int x, int y, int range, Graphics g){ g.setColor(Color.MAGENTA); g.drawOval(x-70, y-70, 140, 140); g.drawOval(x-65, y-65, 130, 130); @@ -246,7 +246,7 @@ public class MockGui extends JPanel{ public void drawAllAOEAttacks(TowerFactory TF, Graphics g){ for(int i = 0; i < TF.getNum(); i++){ if( TF.getTowerArray()[i].basicDealDamage() && TF.getTowerArray()[i].type == TowerTypes.AOE){ - drawAOEAttack((TF.getTowerArray()[i]._xlocation * 32) + 15, (TF.getTowerArray()[i]._ylocation *32) + 15, g); + drawAOEAttack((TF.getTowerArray()[i]._xlocation * 32) + 15, (TF.getTowerArray()[i]._ylocation *32) + 15,TF.getTowerArray()[i].getRange(), g); } } @@ -268,6 +268,19 @@ public class MockGui extends JPanel{ else if(map.getStatGui().gettowerPlacerVar() == 1){ map.getTF().createBasicTower(local[0], local[1], TowerTypes.BASIC); } + //sell tower + if(map.getStatGui().gettowerPlacerVar() == 3){ + + for(int i=1; i004&%004{+008|`004nN004b?008NW002DY000@xb3BE2000U( zX+uL$P-t&-Z*ypGa3D!TLm+T+Z)Rz1WdHz3$DNjUR8-d%htIutdZEoQ0#b(FyTAa_ zdy`&8VVD_UC<6{NG_fI~0ue<-nj%P0#DLLIBvwSR5EN9f2P6n6F&ITuEN@2Ei>|D^ z_ww@lRz|vC zuzLs)$;-`!o*{AqUjza0dRV*yaMRE;fKCVhpQKsoe1Yhg01=zBIT!&C1$=TK@rP|Ibo3vKKm@PqnO#LJhq6%Ij6Hz*<$V$@wQAMN5qJ)hzm2h zoGcOF60t^#FqJFfH{#e-4l@G)6iI9sa9D{VHW4w29}?su;^hF~NC{tY+*d5%WDCTX za!E_i;d2ub1#}&jF5T4HnnCyEWTkKf0>c0%E1Ah>(_PY1)0w;+02c53Su*0<(nUqK zG_|(0G&D0Z{i;y^b@OjZ+}lNZ8Th$p5Uu}MTtq^NHl*T1?CO*}7&0ztZsv2j*bmJyf3G7=Z`5B*PvzoDiKdLpOAxi2$L0#SX*@cY z_n(^h55xYX#km%V()bZjV~l{*bt*u9?FT3d5g^g~#a;iSZ@&02Abxq_DwB(I|L-^b zXThc7C4-yrInE_0gw7K3GZ**7&k~>k0Z0NWkO#^@9q0fwx1%qj zZ=)yBuQ3=54Wo^*!gyjLF-e%Um=erBOdIALW)L%unZshS@>qSW9o8Sq#0s#5*edK% z>{;v(b^`kbN5rY%%y90wC>#%$kE_5P!JWYk;U;klcqzOl-UjcFXXA75rT9jCH~u<) z0>40zCTJ7v2qAyk54cquI@7b&LHdZ`+zlTss6bJ7%PQ)z$cROu4wBhpu-r)01) zS~6}jY?%U?gEALn#wiFzo#H}aQ8rT=DHkadR18&{>P1bW7E`~Y4p3)hWn`DhhRJ5j z*2tcg9i<^OEt(fCg;q*CP8+7ZTcWhYX$fb^_9d-LhL+6BEtPYWVlfKTBusSTASKKb%HuWJzl+By+?gkLq)?+BTu761 zjmyXF)a;mc^>(B7bo*HQ1NNg1st!zt28YLv>W*y3CdWx9U8f|cqfXDAO`Q48?auQq zHZJR2&bcD49Ip>EY~kKEPV6Wm+eXFV)D)_R=tM0@&p?(!V*Qu1PXHG9o^ zTY0bZ?)4%01p8F`JoeS|<@=<@RE7GY07EYX@lwd>4oW|Yi!o+Su@M`;WuSK z8LKk71XR(_RKHM1xJ5XYX`fk>`6eqY>qNG6HZQwBM=xi4&Sb88?zd}EYguc1@>KIS z<&CX#T35dwS|7K*XM_5Nf(;WJJvJWRMA($P>8E^?{IdL4o5MGE7bq2MEEwP7v8AO@ zqL5!WvekBL-8R%V?zVyL=G&{be=K4bT`e{#t|)$A!YaA?jp;X)-+bB;zhj`(vULAW z%ue3U;av{94wp%n<(7@__S@Z2PA@Mif3+uO&y|X06?J#oSi8M;ejj_^(0<4Lt#wLu#dYrva1Y$6_o(k^&}yhSh&h;f@JVA>W8b%o zZ=0JGnu?n~9O4}sJsfnnx7n(>`H13?(iXTy*fM=I`sj`CT)*pTHEgYKqqP+u1IL8N zo_-(u{qS+0<2@%BCt82d{Gqm;(q7a7b>wu+b|!X?c13m#p7cK1({0<`{-e>4hfb-U zsyQuty7Ua;Ou?B?XLHZaol8GAb3Wnxcu!2v{R_`T4=x`(GvqLI{-*2AOSimk zUAw*F_TX^n@STz9kDQ z$NC=!KfXWC8h`dn#xL(D3Z9UkR7|Q&Hcy#Notk!^zVUSB(}`#4&lYA1f0h2V_PNgU zAAWQEt$#LRcH#y9#i!p(Udq2b^lI6wp1FXzN3T;~FU%Lck$-deE#qz9yYP3D3t8{6 z?<+s(e(3(_^YOu_)K8!O1p}D#{JO;G(*OVf32;bRa{vGi!vFvd!vV){sAK>D02p*d zSaefwW^{L9a%BK;VQFr3E^cLXAT%y8E;VI^GGzb&2BJwsK~zXfjg|{gRAm&$uc`Pb z%1jfT$_F_~SxitFKEjkx9_s?@qjby}$7IkllgM=(P*YQ63`N9=9)@OSQ;LcY9JLV~ zMP(=y%)!wV)CmxLu)91K?&<%(+)F#_uC+72xp(jVzVkodIp;gyRYb%GJOVlag+Kk? zfbY73$H3FT9|VG6@QVH{61)R?0NQ&LJPw`$y?|lA3*Z=ESCI};7jaG?#)SSi?^oEe zOXs(2ElX_szC2OgSQu}YHc7*~iJ%+c_|Aai`+?U1o$U_j5Seq8RNOQS3%xiZT@RiUYaI(4*JCt(}_ZBVoU^i%r_wZrl(x(8K}XnJ{L;?sl?E zK5m4a1i+kg<%|MXO!58{rbiSd%zD z%P^k8)Y6KL!t{a<~|U3B4&?Zo}YJ;rU-khJe@iF}AKp<~P|w~ZOs9c3wkeDh}kj2?H$I1mLw z0E?IXf}ti|Da_cjqAC8y-5R@$LSAB#Pfwz*&;hf)cexXC&Rd(+7TE(kLx5JWfD5A- z?b87*&lIM2e8^n0U_LE4eOzAK48z>39t7Rd9MB`cCbF|^g@`KiVT(m*v`ORectDu3 z_tEnZRZvjqd~+F$VY_hudJ=TUaDa8fu6Oa)nLDt>{{1YVIIk4ea?EDV_;ba~v*r=t zX)^)jT)t2x@hf8_C>7g@Tjl?x0k952e^45m?y3wwH9`Sb-h;xtp%@)_!uYSRoX>fT zO$YH8&Q&zdULGmI>#?%`8HI@m{hHnJn6A|lqsw~II+xKuSp?&O39uUD01x^Az`-0x zr$+pK`l6UVAEM>dlb963RTL#@=cc%$0^7Rc zxa#y{3Dp=oOY9=^wvCi%7-v{Li4u0O;4c-qU1>Xud32oTwbr>POk)4Ib=>x_24Y5T zEo%bWq(zHPKYV#aMCB?KUVAlQJp`vKa{k;U2j;NCnYv*V=4vS%dA0UJ{eKFteL7O_+y-DRlr3i4a}5 z*ZYThJG>pE8u^O6mDEe_)o{UDop7N+uEN~hNplVi()zI{BRqx1qN_P?W2DGVG>IdY z{hivph8p8}Ue8UM!PWi*j3N!BaA)0nevFO(?R;+A=w0oT+zl}jlW<*l{AJl*zC;p^ z`3t|pyhUirF-2bdNRhJzrA4sKFHYu|1r|U-b`-9dS5}+}Ukv-K8FQRLsK!aik=D7~ z9Pw1iEF{YjMWS#Ykf6xg)oC_|t!XiAvPZBx^4uQ|wBlljDXO(hFaWU4O)n}esd;bd z7&R~%A>Iyy5I19cxQbFN26>Faszb6+NFOTl?%ZfOkzdr@>QvY2Ho14H!Qx_v97tit z{dvHTK6*w+c+b#`#&NgcO4-fYtSwn>^Q^OEYU*&U$h7d{8kX5f%n2jqgHLA4mQ7zv zS#gCl+FNE|E~}S9%qi{C0WOaJ{V2?bL0~B0M**GSS0N{{@VM{T#l8SbORG*eCnB%f zig9{{t@f2WRn07(X<#{c6&Qz(5lQ~1O^Wi~pTaaw7=PoQa1e7(c+bM{udKe3`&r7u zI_t8;rp3z^Ig(dd>+Lp23EqY4V~kaC9_<@8jQ+1VWC&{yJ^lF31vBl$QZzb nU$aB>sU1K4IR*77NVk6g8N>z-DOthW00000NkvXXu0mjfdu@?Q literal 0 HcmV?d00001 diff --git a/src/resources/images/Upgrade Button.png b/src/resources/images/Upgrade Button.png new file mode 100644 index 0000000000000000000000000000000000000000..6f70af4a3818dc60e8d922b390cb610a83245f1a GIT binary patch literal 3054 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 literal 0 HcmV?d00001