WarriorJS Docs
  • Gracz
  • Twórca
  • Społeczność
  • Polskie
    • English
    • العربية
    • Català
    • Čeština
    • Deutsch
    • Ελληνικά
    • Español
    • Français
    • Italiano
    • Русский
    • Српски језик (Ћирилица)
    • Svenska
    • Türkçe
    • 中文
    • 繁體中文
    • Pomóż tłumaczyć
  • GitHub

›Wskazówki i Porady

Gra

  • Przegląd
  • Obiekt
  • Rozgrywka
  • Perspektywa
  • Punktacja
  • Tryb Epicki
  • Wieże

Koncepty

  • Jednostki
  • Wojownik
  • Umiejętności
  • Pola

API Gracza

  • Obszar API
  • Jednostka API
  • Włącz interfejs API

Wskazówki i Porady

  • Ogólne
  • JavaScript
  • Sztuczna Inteligencja
  • Interfejs wiersza polecenia

Interfejs wiersza polecenia

  • Instaluj
  • Opcje
Translate

Porady JavaScript

  • Nie wystarczy wypełnić metody playTurn dużą ilością kodu, zorganizuj swój kod przy użyciu metod i klas. Na przykład:
class Player {
  playTurn(warrior) {
    if (this.isInjured(warrior)) {
      warrior.rest();
    }
  }

  isInjured(warrior) {
    return warrior.health() < 20;
  }
}
  • Jeśli chcesz aby część kodu była wykonywana na początku każdego poziomu, zdefiniuj konstruktor w klasie Player, tak jak jest to pokazane poniżej:
class Player {
  constructor() {
    // Ten kod będzie wykonany tylko raz - na początku poziomu.
    this.health = 20;
  }

  // ...
}
  • Możesz wywoływać metody API Pól bezpośrednio po użyciu zmysłu. Na przykład zmysł "czucia" w wieży "Kroki niemowalaka" zwraca jedno pole. Możesz na tym wywołać isEmpty(), by określić, czy pole jest puste przed wejściem na nie:
class Player {
  playTurn(warrior) {
    if (warrior.feel().isEmpty()) {
      warrior.walk();
    }
  }
}
  • Część zmysłów (jak "wzrok" i "słuch" w wieży "Pierwsze kroki") zwraca tablicę pól, więc naprawdę przydatne mogą okazać się prototypy metody array. Oto przykład metody Array.prototype.find:
class Player {
  // ...

  isEnemyInSight(warrior) {
    const spaceWithUnit = warrior.look().find(space => space.isUnit());
    return spaceWithUnit && spaceWithUnit.getUnit().isEnemy();
  }
}
← Ogólne WskazówkiWskazówki SI →
WarriorJS Docs
Docs
PlayerMaker
Community
SpectrumTwitterFollow WarriorJS on Twitter
More
DonateGitHubStar