Возврат значения из функции

96
05 марта 2022, 13:00

Есть функция, где необходимо высчитать player.health после проведения атаки противником, чтобы определять вызывать ли потом нового противника через

if (player.health > 0 && enemy.health <= 0) { myTimer = setInterval(game.makeFightEnviroment, 5000); }

Однако есть проблема, что функция снизу не хочет сохранять это значение. Через return все не работает вовсе, функция просто не вызывается

      if (enemy.health <= 0) {
    alert("YOU WON A POTATO!");
    getPlayerHealth.innerHTML = "Health: " + player.health;
    getEnemyHealth.innerHTML = "Health: 0";
  } else {
    getPlayerHealth.innerHTML = "Health: " + player.health;
    getEnemyHealth.innerHTML = "Health: " + enemy.health;
    //ПРОТИВНИК АТАКУЕТ
    let enemyAttackValues = enemyAttack();
    let totalDamage = enemyAttackValues[0];
    player.health = player.health - totalDamage;
    alert("Получено урона: " + enemyAttackValues[0]);
    if (player.health <= 0) {
      alert("YOU LOSE TO POTATO!");
      getEnemyHealth.innerHTML = "Health: " + enemy.health;
      getPlayerHealth.innerHTML = "Health: 0";
    } else {
      getPlayerHealth.innerHTML = "Health: " + player.health;
    }
  }
} else if (getPlayerSpeed <= getEnemySpeed) {
  let enemyAttackValues = enemyAttack();
  let totalDamage = enemyAttackValues[0];
  player.health = player.health - totalDamage;
  alert("Получено урона: " + enemyAttackValues[0]);
  if (player.health <= 0) {
    alert("YOU LOSE TO POTATO!");
    getEnemyHealth.innerHTML = "Health: " + enemy.health;
    getPlayerHealth.innerHTML = "Health: 0";
  } else {
    getPlayerHealth.innerHTML = "Health: " + player.health;
    //ТЫ АТАКУЕШЬ
    let playerAttackValues = playerAttack();
    let totalDamage = playerAttackValues[0];
    enemy.health = enemy.health - totalDamage;
    alert("Нанесено урона: " + playerAttackValues[0]);
    if (enemy.health <= 0) {
      alert("YOU WON A POTATO!");
      getPlayerHealth.innerHTML = "Health: " + player.health;
      getEnemyHealth.innerHTML = "Health: 0";
    } else {
      getEnemyHealth.innerHTML = "Health: " + enemy.health;
    }
  }
}

Если еще что-то нужно из кода, то могу залить в комментах или отредактировать пост. Прошу помочь, уже 5 день думаю об этом

READ ALSO
Не работает замена подстроки в строке JS

Не работает замена подстроки в строке JS

Существует массив с именами allRoles, а также строковая переменная textSearchIn с текстомСледующий код по идее должен находить в переменной textSearchIn...

106
Как создать несколько объектов через один конструктор? JavaScript

Как создать несколько объектов через один конструктор? JavaScript

Попробую объяснить, что мне нужно, на данном примере я создаю 1 объект, в который передаю 3 параметра, а как сделать так, чтобы я мог создать...

84
Преобразование типизированного объекта в TypeScript

Преобразование типизированного объекта в TypeScript

Подскажите, пожалуйста, как в TypeScript obj преобразовать в newObj?

88
Как создать Map с двумя Map внутри?

Как создать Map с двумя Map внутри?

Вытаскиваю данные с биржи, сначала торговую пару, а потом к ней несколько данных по таймфреймамТо есть

100