Request | |
Pro plánování cest Walkerům není volána plánovací rutina přímo, ale prostřednictím požadavků. Engine tyto pořadavky zpracovává podle určených pravidel. V knihovně je implementováno pravidlo: každy tik může být zpracováno maximálně MPCPT cest, pro ostatní je naplánována rychlá přímá cesta (založená na Bressenhamově algoritmu pro kresleníčáry) a naplánování kvalitní cesty je odloženo na příští cykly. Pole requestů je uloženo v PED a funguje jako fronta. | |
typedef struct _Request { int Owner; // index of request sender Position Dest; // dest position char Type; // request type (PRT_) } Request; |
|
Owner - index Walkera, který poslal požadavek. | |
Dest - cílová pozice | |
Type - typ hledání cesty : PRT_STD - standardní hledání PRT_NTC - hledání bez započítávání TC políček - používá se v poslední fázi hlednání cesty, kdy je potřeba najít co nejlepší pozici i na úkor postihu. |
|