diff --git a/src/view/GamePanel.java b/src/view/GamePanel.java index b8d0afbc315f9d882104d163bae059ca6d2ed1de..92f881eb2c4d47dd07648e24b294c650f205c241 100644 --- a/src/view/GamePanel.java +++ b/src/view/GamePanel.java @@ -111,7 +111,7 @@ public class GamePanel extends JPanel { Point fPoint = getFieldAt(new Point(arg0.getX(), arg0.getY())); final Field f = world.getField(fPoint.x, fPoint.y); if (f.isRoad() && f.getDefense() == null) { - JMenuItem menuItem = new JMenuItem("Build Obstacle"); + JMenuItem menuItem = new JMenuItem("Build Obstacle" + " cost: " + 5); menuItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { world.getPlayer().buildObstacle(f); @@ -119,7 +119,7 @@ public class GamePanel extends JPanel { }); popup.add(menuItem); } else if (!f.isRoad() && f.getDefense() == null) { - JMenuItem menuItem = new JMenuItem("Build Tower"); + JMenuItem menuItem = new JMenuItem("Build Tower" + " cost: " + 10); menuItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { world.getPlayer().buildTower(f); @@ -130,7 +130,7 @@ public class GamePanel extends JPanel { final IUpgradeable u = f.getDefense(); ArrayList<IMagicrock> mrs = u.getAvailableMagicRocks(); for (final IMagicrock mr : mrs) { - JMenuItem menuItem = new JMenuItem(mr.getDisplayName()); + JMenuItem menuItem = new JMenuItem(mr.getDisplayName() + " cost: " + mr.getCost()); menuItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { world.getPlayer().upgradeDefense(u, mr); diff --git a/src/world/Player.java b/src/world/Player.java index 9b203ae6f067670871a3df6d2b34355b29d456ec..a1351fc8be2fca3dd96ab595937b48dea1b392cf 100644 --- a/src/world/Player.java +++ b/src/world/Player.java @@ -7,7 +7,7 @@ import interfaces.IUpgradeable; public class Player implements IEnemyObserver { private int magic; - private final int enemyMagic = 1; + private final int enemyMagic = 5; public Player() { diff --git a/src/world/SpawnManager.java b/src/world/SpawnManager.java index 70d17347652145aad388f441416160e61c1fbdb9..802698a02f721df2280c0bf3dd81ae51ad5241a2 100644 --- a/src/world/SpawnManager.java +++ b/src/world/SpawnManager.java @@ -37,8 +37,9 @@ public class SpawnManager implements ITickable, IEnemyObserver private int nextSpawnNum() { - int num = (int) Math.round(Math.pow((currentTime / 120.f), 2)); + int num = (int) Math.round(Math.pow((currentTime / 300.f), 2)); num = num < 1 ? 1 : num; + num = num > 5 ? 5 : num; if (enemiesLeft < num) { num = enemiesLeft; } @@ -105,6 +106,7 @@ public class SpawnManager implements ITickable, IEnemyObserver spawnEnemies(); spawnTimeLeft = nextSpawnTime(); } + currentTime++; } public void enemyMoved(Enemy enemy) diff --git a/src/world/Tower.java b/src/world/Tower.java index e3e33185b733e3484384d6b6d112ae96be6f0a30..1d1706a705e8f77d2db4968678489dc6c9028941 100644 --- a/src/world/Tower.java +++ b/src/world/Tower.java @@ -42,7 +42,7 @@ public class Tower extends Placeable implements ITickable, IEnemyObserver, damage.put(EnemyType.ELF, 20); damage.put(EnemyType.HOBBIT, 20); enemiesInRange = new ArrayList<Enemy>(); - recoilTime = 10; + recoilTime = 5; range = 1; } @@ -98,6 +98,7 @@ public class Tower extends Placeable implements ITickable, IEnemyObserver, continue; enemiesInRange.addAll(field.getEnemies()); } + target = null; } public void enemyDied(Enemy enemy) { @@ -112,7 +113,7 @@ public class Tower extends Placeable implements ITickable, IEnemyObserver, public void tick() { if (!fogDescends) { - if ((new Random()).nextInt(100) % 20 == 0) { + if ((new Random()).nextInt(50) == 0) { fogDescends = true; fogTimeLeft = 3 + (new Random()).nextInt(20); }