Подскажите как сделать что бы урон накапливался ?Не могу понять как сложить geter и seter
1.Weapon
public class Weapon {
private String name;
private Damage damage;
public Weapon (String name, int physical, int fire,int ice){
this.name = name;
this.damage = new Damage(physical,fire,ice);
}
void hit(Target target) {
target.setPhysicalDamage(this.damage.getWeaponPhysicalDamage());
target.setFireDamage(this.damage.getWeaponFireDamage());
target.setIceDamage(this.damage.getWeaponIceDamage());
}
}
2.Damage
public class Damage {
private int physicalDamage;
private int fireDamage;
private int iceDamage;
Damage (int physicalDamage, int fireDamage, int iceDamage) {
this.physicalDamage = physicalDamage;
this.fireDamage = fireDamage;
this.iceDamage = iceDamage;
}
public int getWeaponPhysicalDamage() {
return physicalDamage;
}
public int getWeaponFireDamage() {
return fireDamage;
}
public int getWeaponIceDamage() {
return iceDamage;
}
}
3.Target
public class Target {
private int physicalDamage;
private int fireDamage;
private int iceDamage;
public void setPhysicalDamage(int physicaltarget) {
physicalDamage = physicaltarget;
}
public void setFireDamage(int firetarget) {
fireDamage = firetarget;
}
public void setIceDamage(int icetarget) {
iceDamage = icetarget;
}
public int getPhysicalDamage() {
return physicalDamage;
}
public int getFireDamage() {
return fireDamage;
}
public int getIceDamage() {
return iceDamage;
}
}
4.IceGiant
public class IceGiant extends Target {
@Override
public void setIceDamage(int icetarget) {
System.out.println("\nЛедяной великан-игнорирует ледяной урон");
}
}
5.Ifrit
public class Ifrit extends Target {
@Override
public void setFireDamage(int firetarget) {
System.out.println("\nЭфрит-игнорирует огненный урон");
}
}
6.WeaponTest
public class WeaponTest {
@Test
public void Weapon () {
Weapon sword1 = new Weapon("Пылающий асфальт",50,50,0);
Weapon sword2 = new Weapon("Меч ночи в якутске",50,0,50);
IceGiant i = new IceGiant();
Ifrit f = new Ifrit();
sword1.hit(i);
System.out.println("Полученный урон от меча Пылающий асвальт: "+" " + "Физ.урон-"+ i.getPhysicalDamage() + " " +"Урон огнем-"+i.getFireDamage()+" "+
"Ледяной урон-" + i.getIceDamage());
sword2.hit(f);
System.out.println("Полученый урон от меча Ночь в Якутске: "+" " + "Физ.урон-"+ f.getPhysicalDamage() + " " +"Урон огнем-"+f.getFireDamage()+" "+
"Ледяной урон-" + f.getIceDamage());
}
}
Ответы (1 шт):
Автор решения: Имя Фамилия
→ Ссылка
public class Target {
...
public void takePhysicalDamage(int physicalDamage) {
this.physicalDamage += physicalDamage;
}
}