Здравствуйте! У меня выполняет все условия в терминале, но никак не проходит проверку
✔1. handleKeyPress не должен влиять на состояние, если пользователь нажал нерелевантную кнопку
✖2. Золото должно быть уменьшено на стоимость производителя после завершения покупки
✖3. Цена следующего производителя должна равняться cost * growthRate после покупки
✖4. Количество производителей соответствующего типа должно увеличиться после покупки!<
import { updateGold } from "./functions.js";
export const handleKeyPress = (term, state) =>{
return (name, matches, data) => {
switch (true){
case name === 'g' || name === 'G' : // Если нажата g или G увеличиваем на 1
state.gold +=1;
break;
case /^(0|[1-9]\d*)$/.test(name) : //Если нажата любая цифра
for (let key in state.producers){ //Обходим массив объектов
if( state.producers[key].id == name) { //Если id соответствует нажатой кнопке выполняем действия
state.producers[key].count++;
state.producers[key].cost = (state.producers[key].cost * state.producers[key].growthRate).toFixed(0);
state.gold = state.gold - state.producers[key].cost;
}
}
break;
case name === 'CTRL_C': //для выхода из программы
process.exit() ;
break;
default:
break;
}
updateGold(term,state); //обновляем экран
};
};