Игрок тратит монеты на строительство и улучшение башен, а получает их за убийство врагов. Стоимость башен и награда за врага указаны в конфигурациях towers и enemies файла Config.js.
Добавим обработку расходов и доходов в соответствующие методы Game.
- В
onTowerPlaceClickдобавим проверку наличия нужного числа монет и их списание при строительстве и улучшении башни:
onTowerPlaceClick(towerPlace) {
const towerConfig = App.config.towers["tower" + (towerPlace.level + 1)];
if (!towerConfig) {
return;
}
if (this.player.coins < towerConfig.coins) {
return;
}
this.player.coins -= towerConfig.coins;
++towerPlace.level;
// ...
}
- Также выдадим игроку награду за убийство врага в
processEnemyBulletCollision:
processEnemyBulletCollision() {
// ...
enemy.addDamage(bullet.damage);
if (enemy.hp <= 0) {
this.player.coins += enemy.config.coins;
}
// ...
}
Интерфейс уже постоянно обновляется в Game.update, поэтому отдельно перерисовывать его после каждого такого действия не нужно.