Motivácia
Nebezpečenstvo sa zvyšuje. Ripleyová už síce vie s votrelcami bojovať, avšak nebude také jednoduché sa ich zbaviť. V závere našej misie vzniká rodisko nových votrelcov, ktoré sa prebudí akonáhle sa Ripleyová priblíži.
Z operačného strediska zdraví Manager.
Postup
Krok 1: Threat from below
Úloha 1.1
V balíku sk.tuke.kpi.oop.game
vytvorte triedu rodiska SpawnPoint
.
Trieda nech má konštruktor s jedným parametrom, ktorý určuje, koľko votrelcov sa môže v rodisku vytvoriť. Rodisko nech je reprezentované spritom spawn.
Úloha 1.2
Zabezpečte, aby sa na mieste rodiska vytvoril nový votrelec akonáhle príde Ripleyová do blízkosti aspoň 50 bodov od stredu rodiska.
V tejto úlohe môžete naplánovať akciu s použitím referencie na metódu.
Úloha 1.3
Teraz sa v rodisku tvorí veľké množstvo votrelcov veľmi rýchlym tempom. Stále, keď sa vytvorí nový votrelec, pozastavte vytváranie ďalších votrelcov na 3 sekundy.
Úloha 1.4
Na záver využite parameter konštruktora na deaktiváciu rodiska, aby už ďalej nevytváralo nových votrelcov.
Pre zrušenie akcie použite metódu dispose()
.
Úloha 1.5
Overte svoju implementáciu.
V rodisku by malo vzniknúť toľko votrelcov, koľko bolo špecifikovaných v parametri konštruktora. Votrelci vznikajú stále, keď je Ripleyová poblízku, avšak medzi nimi je stále troj-sekundová pauza.
Doplňujúce zdroje
- Java Tutorial: Annonymous Classes
- Callback: odovzdávanie vykonateľného kódu ako argument volania funkcie, wikipedia.org
- Lambda výrazy: wikipedia.org
- Návrhový vzor pozorovateľ (observer): wikipedia.org, sourcemaking.com
- Návrhový vzor dekorátor (decorator): wikipedia.com, sourcemaking.com