ThargletAI
From Elite Wiki
Revision as of 13:22, 2 January 2011 by Eric Walch (talk | contribs) (script example from Oolite -> scripting page)
Defined States:
- GLOBAL: ATTACK_SHIP
- CHECK_FOR_CONTROL: CHECK_FOR_CONTROL, LOOK_FOR_TARGETS
- LOOK_FOR_TARGETS: CHECK_FOR_CONTROL, ATTACK_SHIP
- ATTACK_SHIP: CHECK_FOR_CONTROL
{ "ATTACK_SHIP" = { ENTER = (performAttack); "THARGOID_DESTROYED" = ("setStateTo: CHECK_FOR_CONTROL"); "TARGET_DESTROYED" = ("setStateTo: CHECK_FOR_CONTROL"); "TARGET_LOST" = ("setStateTo: CHECK_FOR_CONTROL"); UPDATE = (scanForThargoid, "pauseAI: 5.0"); "NOTHING_FOUND" = ("setStateTo: CHECK_FOR_CONTROL"); EXIT = (); };
"CHECK_FOR_CONTROL" = { "THARGOID_DESTROYED" = ("setStateTo: CHECK_FOR_CONTROL"); "TARGET_FOUND" = ("setStateTo: LOOK_FOR_TARGETS"); ENTER = ("setSpeedTo: 0.0", performTumble); EXIT = (); UPDATE = (scanForThargoid, "pauseAI: 1.0"); };
"LOOK_FOR_TARGETS" = { "THARGOID_DESTROYED" = ("setStateTo: CHECK_FOR_CONTROL"); "TARGET_FOUND" = (setTargetToFoundTarget, "setStateTo: ATTACK_SHIP"); ENTER = (scanForNonThargoid, "pauseAI: 1.0"); EXIT = (); UPDATE = (scanForNonThargoid, "pauseAI: 10.0"); };
GLOBAL = { ENTER = ("setStateTo: ATTACK_SHIP"); EXIT = (); UPDATE = (); }; }