Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Пишу функцию прокачки оружия, просто прогоняя все значения через нее, не понимаю почему это не работает.

Dlzder Dlzder Ученик (138), на голосовании 1 год назад
Смысл такой: При нажатии на кнопку купить, выполняется функция которая проверяет не равно ли значение урона 10 если да то оно увеличивается до 20, если же нет, то тогда увеличивается с 5 до 10.
Проблема в том что значение урона сразу же увеличивается до 20.
Вот куски кода:
 let hero = { 
health: 100,
damage: 5,
money: 0,
};



function buy1() {
if (hero.damage = 10) {
hero.damage = 20;
hero.money -= 50;
console.log("Вы потратили 50 монет");
heroMoney.innerHTML = hero.money;
} else if (hero.damage = 5) {
hero.damage = 10;
hero.money -= 30;
console.log("Вы потратили 30 монет");
heroMoney.innerHTML = hero.money;
};
};
Голосование за лучший ответ
Vitness Просветленный (35220) 1 год назад
Сомневаюсь что в javascript = это сравнение.
Скорее всего ты просто присваиваешь hero.damage 10, проверяешь что 10 истинно, присваиваешь значение 20.
Dlzder DlzderУченик (138) 1 год назад
блин, точно, совсем из головы вылетело, спасибо большое!!!
Молот ШотландцевВысший разум (301444) 1 год назад
Подтверждаю твою догадку, Витнесс. "Равно" в Джаваскрипте как и в Питоне - два школьных "равно"
qez wwez Гуру (3247) 1 год назад
Зачем ты объединил логику прокачек с характеристиками персонажа? Должна быть более слабая связь.
Похожие вопросы