WarriorJS Docs
  • Играч
  • Аутор
  • Заједница
  • Српски језик (Ћирилица)
    • English
    • العربية
    • Català
    • Čeština
    • Deutsch
    • Ελληνικά
    • Español
    • Français
    • Italiano
    • Polskie
    • Русский
    • Svenska
    • Türkçe
    • 中文
    • 繁體中文
    • Помозите у превођењу
  • GitHub

›Савети и трикови

Игра

  • Преглед
  • Задатак
  • Ток игре
  • Перспектива
  • Бодовање
  • Епски мод
  • Куле

Концепти

  • Јединице
  • Ратник
  • Способности
  • Поља

API Играча

  • Space API
  • Unit API
  • Turn API

Савети и трикови

  • Опште
  • JavaScript
  • Вештачка Интелигенција
  • CLI

CLI

  • Инсталација
  • Опције
Translate

Савети за JavaScript

  • Немојте само попуњавати playTurn метод са великим бројем линија кода,уредите ваш код са методама и класама. На пример:
class Player {
  playTurn(warrior) {
    if (this.isInjured(warrior)) {
      warrior.rest();
    }
  }

  isInjured(warrior) {
    return warrior.health() < 20;
  }
}
  • Уколико желите да се неки код изврши на почетку сваког нивоа, дефинишите constructor унутар кода класе Player, као овде:
class Player {
  constructor() {
    //  Овај код биће извршен само једном, на почетку сваког нивоа.
    this.health = 20;
  }

  //
  • Можете позивати Space API методе одмах после коришћења чула. На пример, чуло "осети" у "почетној" кули враћа једно поље. Можете позвати isEmpty() да испитате да ли је поље празно пре него што закорачите ка њему:
class Player {
  playTurn(warrior) {
    if (warrior.feel().isEmpty()) {
      warrior.walk();
    }
  }
}
  • Неки осећаји (као "види" и "слушај" у "почетној" кули) враћају низ поља, па вам следећи линк може бити веома користан Array prototype methods. Ево и примера Array.prototype.find методе:
class Player {
  // ...

  isEnemyInSight(warrior) {
    const spaceWithUnit = warrior.look().find(space => space.isUnit());
    return spaceWithUnit && spaceWithUnit.getUnit().isEnemy();
  }
}
← СаветиСавети за примену ВИ →
WarriorJS Docs
Docs
PlayerMaker
Community
SpectrumTwitterFollow WarriorJS on Twitter
More
DonateGitHubStar