oolite/route2patrolAI.plist
Dylan Smith 8b456c000b oolite initial import
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1 127b21dd-08f5-0310-b4b7-95ae10353056
2005-04-19 19:53:18 +00:00

78 lines
4.8 KiB
Plaintext

{
"HEAD_FOR_PLANET" = {
ENTER = (setCourseToPlanet, "setDesiredRangeTo: 50000.0", checkCourseToDestination);
"COURSE_OK" = ("setSpeedFactorTo: 0.8", performFlyToRangeFromDestination);
"WAYPOINT_SET" = ("setStateTo: GO_TO_WAYPOINT_PLANET");
"DESIRED_RANGE_ACHIEVED" = ("setStateTo: HEAD_FOR_SUN");
ATTACKED = (setTargetToPrimaryAggressor, groupAttackTarget);
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, deployEscorts, groupAttackTarget, "setAITo: interceptAI.plist");
"TARGET_FOUND" = (setTargetToFoundTarget, deployEscorts, groupAttackTarget);
"GROUP_ATTACK_TARGET" = (setTargetToFoundTarget, "setAITo: interceptAI.plist");
"ACCEPT_DISTRESS_CALL" = (setTargetToFoundTarget, deployEscorts, groupAttackTarget);
EXIT = ();
UPDATE = (scanForOffenders, "pauseAI: 10.0");
RESTARTED = ("setStateTo: INBOUND_LOOT");
};
"GO_TO_WAYPOINT_PLANET" = {
ENTER = ("setDesiredRangeTo: 50.0", checkCourseToDestination);
"COURSE_OK" = ("setSpeedFactorTo: 0.8", performFlyToRangeFromDestination);
"WAYPOINT_SET" = ("setDesiredRangeTo: 50.0", checkCourseToDestination);
"DESIRED_RANGE_ACHIEVED" = ("setStateTo: HEAD_FOR_PLANET");
ATTACKED = (setTargetToPrimaryAggressor, groupAttackTarget);
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, deployEscorts, groupAttackTarget, "setAITo: interceptAI.plist", "setStateTo: INBOUND_LOOT");
"GROUP_ATTACK_TARGET" = (setTargetToFoundTarget, "setAITo: interceptAI.plist");
"ACCEPT_DISTRESS_CALL" = (setTargetToFoundTarget, deployEscorts, groupAttackTarget);
EXIT = ();
UPDATE = ();
RESTARTED = ("setStateTo: INBOUND_LOOT");
};
"HEAD_FOR_SUN" = {
ENTER = (setSunSkimStartCoordinates);
"WAIT_FOR_SUN" = ("pauseAI: 10.0", setSunSkimStartCoordinates);
"APPROACH_COORDINATES" = (setDestinationFromCoordinates, "setDesiredRangeTo: 25000", checkCourseToDestination);
"COURSE_OK" = ("setSpeedFactorTo: 0.80", performFlyToRangeFromDestination);
"WAYPOINT_SET" = ("setStateTo: GO_TO_WAYPOINT_SUN");
ATTACKED = (setTargetToPrimaryAggressor, groupAttackTarget);
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, deployEscorts, groupAttackTarget, "setAITo: interceptAI.plist", "setStateTo: OUTBOUND_LOOT");
"TARGET_FOUND" = (setTargetToFoundTarget, deployEscorts, groupAttackTarget);
"GROUP_ATTACK_TARGET" = (setTargetToFoundTarget, "setAITo: interceptAI.plist");
"ACCEPT_DISTRESS_CALL" = (setTargetToFoundTarget, deployEscorts, groupAttackTarget);
EXIT = ();
UPDATE = (scanForOffenders, "pauseAI: 10.0");
RESTARTED = ("setStateTo: OUTBOUND_LOOT");
};
"GO_TO_WAYPOINT_SUN" = {
ENTER = ("setDesiredRangeTo: 50.0", checkCourseToDestination);
"COURSE_OK" = ("setSpeedFactorTo: 0.8", performFlyToRangeFromDestination);
"WAYPOINT_SET" = ("setDesiredRangeTo: 50.0", checkCourseToDestination);
"DESIRED_RANGE_ACHIEVED" = ("setStateTo: HEAD_FOR_SUN");
"ACCEPT_DISTRESS_CALL" = (setTargetToFoundTarget, deployEscorts, groupAttackTarget);
"GROUP_ATTACK_TARGET" = (setTargetToFoundTarget, "setAITo: interceptAI.plist");
ATTACKED = (setTargetToPrimaryAggressor, groupAttackTarget);
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, deployEscorts, groupAttackTarget, "setAITo: interceptAI.plist", "setStateTo: OUTBOUND_LOOT");
EXIT = ();
UPDATE = ();
RESTARTED = ("setStateTo: OUTBOUND_LOOT");
};
"OUTBOUND_LOOT" = {
"GROUP_ATTACK_TARGET" = (setTargetToFoundTarget, "setAITo: interceptAI.plist");
ATTACKED = (setTargetToPrimaryAggressor, groupAttackTarget);
ENTER = ("setSpeedTo: 0.0", performIdle);
EXIT = ();
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, deployEscorts, groupAttackTarget, "setAITo: interceptAI.plist", "setStateTo: OUTBOUND_LOOT");
"TARGET_FOUND" = (setTargetToFoundTarget, "setAITo: collectLootAI.plist");
"NOTHING_FOUND" = ("setStateTo: HEAD_FOR_SUN");
UPDATE = (scanForLoot, "pauseAI: 10.0");
};
"INBOUND_LOOT" = {
"GROUP_ATTACK_TARGET" = (setTargetToFoundTarget, "setAITo: interceptAI.plist");
ATTACKED = (setTargetToPrimaryAggressor, groupAttackTarget);
ENTER = ("setSpeedTo: 0.0", performIdle);
EXIT = ();
"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, deployEscorts, groupAttackTarget, "setAITo: interceptAI.plist", "setStateTo: INBOUND_LOOT");
"TARGET_FOUND" = (setTargetToFoundTarget, "setAITo: collectLootAI.plist");
"NOTHING_FOUND" = ("setStateTo: HEAD_FOR_PLANET");
UPDATE = (scanForLoot, "pauseAI: 10.0");
};
GLOBAL = {ENTER = ("setStateTo: HEAD_FOR_SUN"); EXIT = (); UPDATE = (); };
}