Люди добрые, подскажите пожалуйста идиоту, по какой причине условия не проходит?
Я и других комментаторов почитала, но всё равно не понимаю...
package com.javarush.task.pro.task07.task0720;
public class BattleField {
public static String nimrodDefence = "Вражеская атака отбита";
public static String nimrodAttack = "Наносим контр удар";
public static String nimrodDestroy = "Вражеский удар не выдержан";
public static String galavirDefence = "Наша атака успешно отражена врагом";
public static String galavirAttack = "Враг наносит удар";
public static String galavirDestroy = "Вражеский корабль повержен";
public static void main(String[] args) {
//напишите тут ваш код
GalavirXIII galavir = new GalavirXIII();
Nimrod nimrod = new Nimrod();
/*
* Враг наносит урон до того, как жизнь у Амиго заканчивается
* Так как хп уменьшается у Нимрода. Зависит от входящих данных
*/
do {
System.out.println(galavirAttack);
nimrod.defend(galavir.attack());
if (isGalavirAlive(galavir)) {
System.out.println(nimrodAttack);
galavir.defend(nimrod.attack());
}
else {
break;
}
}
/*
* Возвращает true, пока Нимрод жив
*/
while (isNimrodAlive(nimrod));
}
public static boolean isNimrodAlive(Nimrod nimrod) {
if (nimrod.health > 0) {
System.out.println(nimrodDefence);
return true;
} else {
System.out.println(nimrodDestroy);
return false;
}
}
public static boolean isGalavirAlive(GalavirXIII galavir) {
if (galavir.health > 0) {
System.out.println(galavirDefence);
return true;
} else {
System.out.println(galavirDestroy);
return false;
}
}
}