-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dragoon.java
84 lines (77 loc) · 2.31 KB
/
Dragoon.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Dragoon
*
* @author James Ly, Jesmin Hondell, Daniel Chung
* @version Beta 2.1
*/
public class Dragoon extends RangedCavalry
{
//CONSTANTS
public static final int FOOD_COST = 110, WOOD_COST = 40, GOLD_COST = 0, SPAWN_TIME = 180;
private static final GreenfootImage FRONT = new GreenfootImage("DragoonFront.png");
private static final GreenfootImage RIGHT = new GreenfootImage("DragoonRight.png");
private static final GreenfootImage LEFT = new GreenfootImage("DragoonLeft.png");
private static final GreenfootImage BACK = new GreenfootImage("DragoonBack.png");
/**
* Constructor for Dragoon, sets its cell and map
*
* @param cell The Cell that the unit will spawn in
* @param map The Map that this will be put into
*/
public Dragoon(Player owner, Cell cell, Map map) {
super(owner, cell, map);
//Description
unit = "Dragoon";
//Combat Statistics
speed = 9;
range = 4;
attackSpeed = 1;
health = 250.0;
currentHealth = health;
attack = 18.0;
//Resistance multipliers
meleeArmour = 0.20;
rangedArmour = 0.25;
siegeArmour = 0.20;
//Attack multipliers
meleeInfantry = 1.0;
rangedInfantry = 1.0;
meleeCavalry = 3.0;
rangedCavalry = 1.0;
siege = 1.0;
building = 1.0;
}
/**
* Returns the image when object is facing left
*
* @return The image when object is facing left
*/
public GreenfootImage getLeftImage() {
return LEFT;
}
/**
* Returns the image when object is facing right
*
* @return The image when object is facing right
*/
public GreenfootImage getRightImage() {
return RIGHT;
}
/**
* Returns the image when object is facing the front
*
* @return The image when object is facing the front
*/
public GreenfootImage getFrontImage() {
return FRONT;
}
/**
* Returns the image when object is facing back (away)
*
* @return The image when object is facing back (away)
*/
public GreenfootImage getBackImage() {
return BACK;
}
}