|
1 | 1 | package battlecode.common; |
2 | 2 |
|
3 | 3 | public enum UnitType { |
4 | | - SOLDIER(200, 250, 5, 250, -1, 200, 10, 9, 20, -1, 0, 0), |
5 | | - SPLASHER(300, 400, 50, 150, -1, 300, 50, 8, -1, 50, 0, 0), |
| 4 | + SOLDIER(200, 250, 5, 250, -1, 200, 10, 9, 50, -1, 0, 0), |
| 5 | + SPLASHER(300, 400, 50, 150, -1, 300, 50, 4, -1, 100, 0, 0), |
6 | 6 | MOPPER(100, 300, 0, 50, -1, 100, 30, 2, -1, -1, 0, 0), |
7 | 7 |
|
8 | | - LEVEL_ONE_PAINT_TOWER(0, 100, 0, 1000, 1, 1000, 10, 9, 20, 10, 5, 0), |
9 | | - LEVEL_TWO_PAINT_TOWER(0, 250, 0, 1500, 2, 1000, 10, 9, 20, 10, 10, 0), |
10 | | - LEVEL_THREE_PAINT_TOWER(0, 500, 0, 2000, 3, 1000, 10, 9, 20, 10, 15, 0), |
| 8 | + LEVEL_ONE_PAINT_TOWER(0, 1000, 0, 1000, 1, 1000, 10, 9, 20, 10, 5, 0), |
| 9 | + LEVEL_TWO_PAINT_TOWER(0, 2500, 0, 1500, 2, 1000, 10, 9, 20, 10, 10, 0), |
| 10 | + LEVEL_THREE_PAINT_TOWER(0, 5000, 0, 2000, 3, 1000, 10, 9, 20, 10, 15, 0), |
11 | 11 |
|
12 | | - LEVEL_ONE_MONEY_TOWER(0, 100, 0, 1000, 1, 1000, 10, 9, 20, 10, 0, 10), |
13 | | - LEVEL_TWO_MONEY_TOWER(0, 250, 0, 1500, 2, 1000, 10, 9, 20, 10, 0, 15), |
14 | | - LEVEL_THREE_MONEY_TOWER(0, 500, 0, 2000, 3, 1000, 10, 9, 20, 10, 0, 20), |
| 12 | + LEVEL_ONE_MONEY_TOWER(0, 1000, 0, 1000, 1, 1000, 10, 9, 20, 10, 0, 20), |
| 13 | + LEVEL_TWO_MONEY_TOWER(0, 2500, 0, 1500, 2, 1000, 10, 9, 20, 10, 0, 30), |
| 14 | + LEVEL_THREE_MONEY_TOWER(0, 5000, 0, 2000, 3, 1000, 10, 9, 20, 10, 0, 40), |
15 | 15 |
|
16 | | - LEVEL_ONE_DEFENSE_TOWER(0, 100, 0, 2500, 1, 1000, 10, 20, 60, 30, 0, 0), |
17 | | - LEVEL_TWO_DEFENSE_TOWER(0, 250, 0, 3000, 2, 1000, 10, 20, 65, 35, 0, 0), |
18 | | - LEVEL_THREE_DEFENSE_TOWER(0, 500, 0, 3500, 3, 1000, 10, 20, 70, 40, 0, 0); |
| 16 | + LEVEL_ONE_DEFENSE_TOWER(0, 1000, 0, 2000, 1, 1000, 10, 16, 40, 20, 0, 0), |
| 17 | + LEVEL_TWO_DEFENSE_TOWER(0, 2500, 0, 2500, 2, 1000, 10, 16, 50, 25, 0, 0), |
| 18 | + LEVEL_THREE_DEFENSE_TOWER(0, 5000, 0, 3000, 3, 1000, 10, 16, 60, 30, 0, 0); |
19 | 19 |
|
20 | 20 |
|
21 | 21 | // the paint cost to build the unit |
@@ -78,6 +78,18 @@ public UnitType getNextLevel(){ |
78 | 78 | } |
79 | 79 | } |
80 | 80 |
|
| 81 | + public UnitType getBaseType(){ |
| 82 | + switch (this){ |
| 83 | + case LEVEL_TWO_DEFENSE_TOWER: return LEVEL_ONE_DEFENSE_TOWER; |
| 84 | + case LEVEL_THREE_DEFENSE_TOWER: return LEVEL_ONE_DEFENSE_TOWER; |
| 85 | + case LEVEL_TWO_PAINT_TOWER: return LEVEL_ONE_PAINT_TOWER; |
| 86 | + case LEVEL_THREE_PAINT_TOWER: return LEVEL_ONE_PAINT_TOWER; |
| 87 | + case LEVEL_TWO_MONEY_TOWER: return LEVEL_ONE_MONEY_TOWER; |
| 88 | + case LEVEL_THREE_MONEY_TOWER: return LEVEL_ONE_MONEY_TOWER; |
| 89 | + default: return this; |
| 90 | + } |
| 91 | + } |
| 92 | + |
81 | 93 | UnitType(int paintCost, int moneyCost, int attackCost, int health, int level, int paintCapacity, int actionCooldown, int actionRadiusSquared, int attackStrength, int aoeAttackStrength, int paintPerTurn, int moneyPerTurn) { |
82 | 94 | this.paintCost = paintCost; |
83 | 95 | this.moneyCost = moneyCost; |
|
0 commit comments