Difference between revisions of "ThargletAI"

From Elite Wiki
 
(script example from Oolite -> scripting page)
 
(One intermediate revision by one other user not shown)
Line 37: Line 37:
   
 
[[AI|BACK]]
 
[[AI|BACK]]
  +
  +
[[Category:Oolite scripting]]

Latest revision as of 13:22, 2 January 2011

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 = (); }; 
}

BACK