8b456c000b
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1 127b21dd-08f5-0310-b4b7-95ae10353056
43 lines
2.3 KiB
Plaintext
43 lines
2.3 KiB
Plaintext
{
|
|
"ATTACK_SHIP" = {
|
|
"ATTACKED" = (setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
|
|
ENTER = (performAttack);
|
|
EXIT = ();
|
|
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
|
|
"TARGET_DESTROYED" = ("setStateTo: LOOK_FOR_TARGETS");
|
|
"TARGET_FOUND" = (setTargetToFoundTarget, "setStateTo: ATTACK_SHIP");
|
|
"TARGET_LOST" = ("setStateTo: LOOK_FOR_TARGETS");
|
|
UPDATE = (scanForNonThargoid, "pauseAI: 15.0");
|
|
};
|
|
"LOOK_FOR_TARGETS" = {
|
|
"ATTACKED" = (setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
|
|
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
|
|
"TARGET_FOUND" = (setTargetToFoundTarget, "setStateTo: ATTACK_SHIP");
|
|
"NOTHING_FOUND" = ("setStateTo: HEAD_FOR_PLANET");
|
|
ENTER = ("setSpeedTo: 0.0", performTumble, scanForNonThargoid, "pauseAI: 5.0");
|
|
EXIT = ();
|
|
UPDATE = (scanForNonThargoid, "pauseAI: 5.0");
|
|
};
|
|
"HEAD_FOR_PLANET" = {
|
|
ENTER = (setCourseToPlanet, "setDesiredRangeTo: 80000.0", checkCourseToDestination);
|
|
"COURSE_OK" = ("setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
|
|
"WAYPOINT_SET" = ("setStateTo: GO_TO_WAYPOINT1");
|
|
"DESIRED_RANGE_ACHIEVED" = ("setStateTo: LOOK_FOR_TARGETS");
|
|
ATTACKED = (setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
|
|
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
|
|
"TARGET_FOUND" = (setTargetToFoundTarget, "setStateTo: ATTACK_SHIP");
|
|
EXIT = ();
|
|
UPDATE = (scanForNonThargoid, "pauseAI: 10.0");
|
|
};
|
|
"GO_TO_WAYPOINT1" = {
|
|
ENTER = ("setDesiredRangeTo: 50.0", checkCourseToDestination);
|
|
"COURSE_OK" = ("setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
|
|
"WAYPOINT_SET" = ("setDesiredRangeTo: 50.0", checkCourseToDestination);
|
|
"DESIRED_RANGE_ACHIEVED" = ("setStateTo: HEAD_FOR_PLANET");
|
|
ATTACKED = (setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
|
|
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
|
|
EXIT = ();
|
|
UPDATE = (scanForNonThargoid, "pauseAI: 10.0");
|
|
};
|
|
GLOBAL = {ENTER = ("setStateTo: LOOK_FOR_TARGETS"); EXIT = (); UPDATE = (); };
|
|
} |