From 4cd86f04b1342a1bc18a4ceeab68cd9305109734 Mon Sep 17 00:00:00 2001 From: ssl10003 Date: Fri, 24 Apr 2015 00:17:49 -0400 Subject: [PATCH 1/3] Added tower attack animations for Basic and AOE --- src/MockGui.java | 49 +++++++++++++++++++++++++++++++++++++++++++-- src/TowerTypes.java | 4 ++++ 2 files changed, 51 insertions(+), 2 deletions(-) diff --git a/src/MockGui.java b/src/MockGui.java index 5844a3c..5739418 100644 --- a/src/MockGui.java +++ b/src/MockGui.java @@ -15,7 +15,9 @@ import java.io.File; import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; + import javax.imageio.ImageIO; + import java.util.Random; @@ -79,7 +81,11 @@ public class MockGui extends JPanel{ drawAllTowers(map.getTF(), g); drawAllMinions(map.getMF(), g); drawPlayerHealth(g); + drawAllBasicAttacks(map.getTF(),g); + drawAllAOEAttacks(map.getTF(),g); + } + public void drawGrid(int x, int y, int gridSize, Graphics g) { g.setColor(new Color(99, 209, 62)); g.fillRect(0, 0, 32*20, 32*20); @@ -203,8 +209,47 @@ public class MockGui extends JPanel{ //g.fillRect(x, y, 32, 32); g.drawImage(tm.getSprite(),x , y, null); - //tm.getTowerXlocation() - //tm.getTowerYlocation() + } + + public void drawBasicAttack(int x, int y, Graphics g){ + g.setColor(Color.yellow); + g.fillRoundRect(x, y, 7, 7, 7, 7); + } + + //if Basic tower is attacking, draw dots to where minion is + public void drawAllBasicAttacks(TowerFactory TF, Graphics g){ + for(int i = 0; i < TF.getNum(); i++){ + if(TF.getTowerArray()[i].basicDealDamage() && TF.getTowerArray()[i].type == TowerTypes.BASIC){ + int towerDotX = (TF.getTowerArray()[i]._xlocation * 32) + 15; + int towerDotY = (TF.getTowerArray()[i]._ylocation *32) + 15; + int halfDotX = (((TF.getTowerArray()[i]._xlocation * 32) + 15)+ (TF.getTowerArray()[i].currentTarget.getX() + 15))/2; + int halfDotY = (((TF.getTowerArray()[i]._ylocation * 32) + 15)+ (TF.getTowerArray()[i].currentTarget.getY() + 15))/2; + int minionDotX = TF.getTowerArray()[i].currentTarget.getX() + 15; + int minionDotY = TF.getTowerArray()[i].currentTarget.getY()+15; + drawBasicAttack(towerDotX,towerDotY, g); + drawBasicAttack((towerDotX + halfDotX)/2, (towerDotY + halfDotY)/2, g); + drawBasicAttack(halfDotX, halfDotY, g); + drawBasicAttack((halfDotX + minionDotX)/2, (halfDotY + minionDotY)/2, g); + drawBasicAttack(minionDotX, minionDotY, g); + } + } + + } + + public void drawAOEAttack(int x, int y, Graphics g){ + g.setColor(Color.MAGENTA); + g.drawOval(x-70, y-70, 140, 140); + g.drawOval(x-65, y-65, 130, 130); + g.drawOval(x-60, y-60, 120, 120); + } + + 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); + + } + } } diff --git a/src/TowerTypes.java b/src/TowerTypes.java index 4b0a98f..c2985d0 100644 --- a/src/TowerTypes.java +++ b/src/TowerTypes.java @@ -37,6 +37,10 @@ public enum TowerTypes { return this.toString(); } + public TowerTypes getTowerType(){ + return this; + } + public BufferedImage getSprite() { return sprite; From d15f5aec40698621bfd745740b0492ff7990464f Mon Sep 17 00:00:00 2001 From: Solomon S Lin Date: Fri, 24 Apr 2015 08:47:45 -0400 Subject: [PATCH 2/3] Create README.md Beats the old description --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..2084373 --- /dev/null +++ b/README.md @@ -0,0 +1,9 @@ +TowerDefense +============ + +Play the most exiting thing since sliced bread! Introducing the best Tower Defense gamed you've ever played. Does your tower defense game have characteres such as Sonic, the Depsicable Me minion, and a Speedy Gonzalez? I didn't think so. Does it have some of the best tower models rendered from the industry-level computer graphics has to offer, that is java.awt.swing? Nope. Well try your hand today and use some of the best tower-power available. See if you can overcome the hordes of minions itching to knock down your Nexus! + +From the creative talents of CSE 2102 students +Mock Tower Defense Game (R) All Rights Reserved. +Unauthorized Duplication Is A Violation Of Applicable Laws and punishable with at least 1 hour of playing this game. + From 2214a6622106e05e16439d37e3d18d27af950b8e Mon Sep 17 00:00:00 2001 From: Solomon S Lin Date: Fri, 24 Apr 2015 08:48:52 -0400 Subject: [PATCH 3/3] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2084373..23d1a0c 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ TowerDefense ============ -Play the most exiting thing since sliced bread! Introducing the best Tower Defense gamed you've ever played. Does your tower defense game have characteres such as Sonic, the Depsicable Me minion, and a Speedy Gonzalez? I didn't think so. Does it have some of the best tower models rendered from the industry-level computer graphics has to offer, that is java.awt.swing? Nope. Well try your hand today and use some of the best tower-power available. See if you can overcome the hordes of minions itching to knock down your Nexus! +Play the most exiting thing since sliced bread! Introducing the best Tower Defense gamed you've ever played. Does your tower defense game have characteres such as Sonic, the Depsicable Me minion, and a Speedy Gonzalez? I didn't think so. Does it have some of the best tower models rendered from industry-level computer graphics, that is java.awt.swing? Nope. Well try your hand today and use some of the best tower-power available. See if you can overcome the hordes of minions itching to knock down your Nexus! From the creative talents of CSE 2102 students Mock Tower Defense Game (R) All Rights Reserved.