#include <AI.h>
Veřejné metody | |
AI_10 (Creature *creature) | |
Zavolá konstruktor AI_9. | |
virtual Sint16 | type () const |
Typ inteligence. | |
virtual | ~AI_10 () |
Destruktor. | |
Chráněné metody | |
virtual PositionIndex | findPosIndex (isTypeOf &isBlocking) |
Najde index pozice, na kterou bychom měli jít. | |
PositionIndex | findPosIndexToComeCloseToPlayer_ (isTypeOf &isBlocking) |
Najde index pozice, na kterou máme jít abychom zaútočili na hráče. |
Pokud je v nebezpečí, použije prohledávání mapy do šířky a najde nejbližší bezpečné políčko. Pokud v nebezpečí není, použije prohledávání mapy aby našel cíl, na který by zaútočil.
virtual AI_10::~AI_10 | ( | ) | [inline, virtual] |
Destruktor.
virtual Sint16 AI_10::type | ( | ) | const [inline, virtual] |
AI::PositionIndex AI_10::findPosIndex | ( | isTypeOf & | isBlocking | ) | [protected, virtual] |
Najde index pozice, na kterou bychom měli jít.
Najde index pomocí findPosIndexToWalkStraight_(), pokud ušel dostatečnou vzdálenost rovně, použije findPosIndexToComeCloseToPlayer_().
isBlocking | predikát určující blokující objekty |
Reimplementuje stejnojmenný prvek z AI_4.
AI::PositionIndex AI_10::findPosIndexToComeCloseToPlayer_ | ( | isTypeOf & | isBlocking | ) | [protected] |
Najde index pozice, na kterou máme jít abychom zaútočili na hráče.
Snaží se v mapě vyhledat hráče, na kterého by mohla zaútočit. Výsledkem je pozice, která nás přiblíží nejbližšímu hráči, nebo náhodná pozice, pokud jsme hráče neobjevili.
isBlocking | predikát odhalující blokující prvek na políčku |