oolite/Resources/AIs/risingShuttleAI.plist
Eric Walch 86bc4b2c36 - Added RESTARTED messages to some of the AIs that use the new fleeQMineAI to prevent leaving the ships idle.
- also added the q-mine warning inside becomeEnergyBlast so that custom q-mines also give a warning, albeit later.

git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@4903 127b21dd-08f5-0310-b4b7-95ae10353056
2012-05-03 20:34:19 +00:00

56 lines
2.5 KiB
Plaintext

{
GLOBAL =
{
ENTER = ("setSpeedTo: 0.0", "setStateTo: LIFT_OFF");
};
"LIFT_OFF" =
{
ENTER = (setTakeOffFromPlanet, "setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
"DESIRED_RANGE_ACHIEVED" = ("setStateTo: GO_TO_STATION");
"CLOSE_TO_MOON" = ("setStateTo: LIFT_OFF_FROM_SECONDARY_PLANET");
"CLOSE_TO_SECONDARY_PLANET" = ("setStateTo: LIFT_OFF_FROM_SECONDARY_PLANET");
"CLOSE_TO_MAIN_PLANET" = ("setStateTo: LIFT_OFF_FROM_MAIN_PLANET");
};
"LIFT_OFF_FROM_SECONDARY_PLANET" =
{
"DESIRED_RANGE_ACHIEVED" = ("setStateTo: GO_TO_STATION");
};
"GO_TO_STATION" =
{
ENTER = (setTargetToNearestStation, "setDesiredRangeTo: 5000.0", setDestinationToTarget, checkCourseToDestination);
"WAYPOINT_SET" = ("setAITo: gotoWaypointAI.plist");
"COURSE_OK" = ("setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
"DESIRED_RANGE_ACHIEVED" = (setTargetToNearestStation, "setAITo: dockingAI.plist");
ATTACKED = (setTargetToPrimaryAggressor, broadcastDistressMessage, "setStateTo: FLEE");
"INCOMING_MISSILE" = (fightOrFleeMissile, "setStateTo: FLEE");
"CASCADE_WEAPON_DETECTED" = ("setAITo: fleeQMineAI.plist");
UPDATE = (setTargetToNearestStation, "setDesiredRangeTo: 5000.0",
setDestinationToTarget, checkCourseToDestination, "pauseAI: 5.0");
};
"LIFT_OFF_FROM_MAIN_PLANET" =
{
"DESIRED_RANGE_ACHIEVED" = ("setStateTo: GO_TO_MAIN_STATION");
};
"GO_TO_MAIN_STATION" =
{
ENTER = (setTargetToSystemStation, "setDesiredRangeTo: 5000.0", setDestinationToTarget, checkCourseToDestination);
"WAYPOINT_SET" = ("setAITo: gotoWaypointAI.plist");
"COURSE_OK" = ("setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
"DESIRED_RANGE_ACHIEVED" = (setTargetToSystemStation, "setAITo: dockingAI.plist");
ATTACKED = (setTargetToPrimaryAggressor, broadcastDistressMessage, "setStateTo: FLEE");
"INCOMING_MISSILE" = (fightOrFleeMissile, "setStateTo: FLEE");
"CASCADE_WEAPON_DETECTED" = ("setAITo: fleeQMineAI.plist");
UPDATE = (setTargetToSystemStation, "setDesiredRangeTo: 5000.0",
setDestinationToTarget, checkCourseToDestination, "pauseAI: 5.0");
};
FLEE =
{
ENTER = ("setDesiredRangeTo: 25600", performFlee);
"TARGET_LOST" = (performIdle, "setStateTo: GLOBAL");
"INCOMING_MISSILE" = (fightOrFleeMissile, "setStateTo: FLEE");
"CASCADE_WEAPON_DETECTED" = ("setAITo: fleeQMineAI.plist");
ATTACKED = (setTargetToPrimaryAggressor, "setStateTo: FLEE");
"REACHED_SAFETY" = ("setSpeedTo: 0.0", performIdle, "pauseAI: 90.0", "messageSelf: TARGET_LOST");
RESTARTED = ("setStateTo: GO_TO_STATION");
};
}