Difference between revisions of "Oolite JavaScript Reference: Ship"
m (→Properties: Formatting consistency) |
(Added exitAI(), reactToAIMessage(), hasSuspendedAI) |
||
| Line 19: | Line 19: | ||
=== <code>AI</code> === | === <code>AI</code> === | ||
AI [read-only string] | AI [read-only string] | ||
| − | The name of the ship’s current AI. (See also: <code>[[#AIState|AIState]]</code>, <code>[[#setAI|setAI()]]</code>, <code>[[# | + | The name of the ship’s current AI. (See also: <code>[[#AIState|AIState]]</code>, <code>[[#setAI|setAI()]]</code>, <code>[[#switchAI|switchAI()]]</code>, <code>[[#exitAI|exitAI()]]</code>) |
=== <code>AIState</code> === | === <code>AIState</code> === | ||
AIState [read-write string, read-only for player] | AIState [read-write string, read-only for player] | ||
| − | The ship’s AI’s current state. (See also: <code>[[#AI|AI]]</code>, <code>[[# | + | The ship’s AI’s current state. (See also: <code>[[#AI|AI]]</code>, <code>[[#reactToAIMessage|reactToAIMessage()]]</code>, <code>[[#hasSuspendedAI|hasSuspendedAI]]</code>) |
=== <code>fuel</code> === | === <code>fuel</code> === | ||
| Line 37: | Line 37: | ||
The ships subentities, or <code>null</code> if it has none. Special subentities such as flashers and exhaust plumes are not included. | The ships subentities, or <code>null</code> if it has none. Special subentities such as flashers and exhaust plumes are not included. | ||
| − | == | + | === <code>hasSuspendedAI</code> === |
| + | hasSuspendedAI [read-only boolean] | ||
| + | <code>true</code> if the ship has suspended AIs, <code>false</code> otherwise. | ||
| + | |||
| + | == Methods == | ||
=== <code>setAI</code> === | === <code>setAI</code> === | ||
void setAI(AIName) | void setAI(AIName) | ||
| − | Set the current AI, leaving the old one suspended. Equivalent to the <code>[[AI_methods|setAITo]]:</code> AI method. May not be used on player. | + | Set the current AI, leaving the old one suspended. Equivalent to the <code>[[AI_methods|setAITo]]:</code> AI method. May not be used on player. (See also: <code>[[#AI|AI]]</code>, <code>[[#switchAI|switchAI()]]</code>, <code>[[#exitAI|exitAI()]]</code>) |
=== <code>switchAI</code> === | === <code>switchAI</code> === | ||
void switchAI(AIName) | void switchAI(AIName) | ||
| − | Set the current AI, exiting the old one. Equivalent to the <code>[[AI_methods|switchAITo]]:</code> AI method. May not be used on player. | + | Set the current AI, exiting the old one. Equivalent to the <code>[[AI_methods|switchAITo]]:</code> AI method. May not be used on player. (See also: <code>[[#AI|AI]]</code>, <code>[[#setAI|setAI()]]</code>, <code>[[#exitAI|exitAI()]]</code>) |
| + | |||
| + | === <code>exitAI</code> === | ||
| + | void exitAI() | ||
| + | Exit the current AI, restoring the previous one. Equivalent to the <code>[[AI_methods|exitAI]]:</code> AI method. May not be used on player. Will generate a warning if there are no suspended AI states. (See also: <code>[[#AI|AI]]</code>, <code>[[#setAI|setAI()]]</code>, <code>[[#hasSuspendedAI|hasSuspendedAI]]</code>) | ||
| + | |||
| + | === <code>reactToAIMessage</code> === | ||
| + | void reactToAIMessage(AIState) | ||
| + | Immediately execute the ship’s AI in the specified state. | ||
Revision as of 17:23, 3 August 2007
Prototype: Entity
Subtypes: Station, Player
The Ship class is an Entity representing a ship, station, missile, cargo pod or other flying item – anything that can be specified in shipdata.plist. A Ship has all the properties and methods of a Entity, and several others.
Stations and the Player are types of ship. Note that these more specific types have additional properties and methods.
Contents
Properties
shipDescription
shipDescription [read-only string]
The name of the ship type (name key in shipdata.plist).
roles
roles [read-only array]
The roles of the ship. Probabilities are not included.
AI
AI [read-only string]
The name of the ship’s current AI. (See also: AIState, setAI(), switchAI(), exitAI())
AIState
AIState [read-write string, read-only for player]
The ship’s AI’s current state. (See also: AI, reactToAIMessage(), hasSuspendedAI)
fuel
fuel [read-write double]
The ship’s current fuel capacity, in LY. The game will limit this to the range 0..7, and round it off to the nearest tenth. (See also: Player.fuelLeakRate)
bounty
bounty [read-write integer]
The bounty on the ship. This also determines its legal status. In the case of the player, it is halved at each witchspace jump.
subEntities
subEntities [read-only array of Ships]
The ships subentities, or null if it has none. Special subentities such as flashers and exhaust plumes are not included.
hasSuspendedAI
hasSuspendedAI [read-only boolean]
true if the ship has suspended AIs, false otherwise.
Methods
setAI
void setAI(AIName)
Set the current AI, leaving the old one suspended. Equivalent to the setAITo: AI method. May not be used on player. (See also: AI, switchAI(), exitAI())
switchAI
void switchAI(AIName)
Set the current AI, exiting the old one. Equivalent to the switchAITo: AI method. May not be used on player. (See also: AI, setAI(), exitAI())
exitAI
void exitAI()
Exit the current AI, restoring the previous one. Equivalent to the exitAI: AI method. May not be used on player. Will generate a warning if there are no suspended AI states. (See also: AI, setAI(), hasSuspendedAI)
reactToAIMessage
void reactToAIMessage(AIState)
Immediately execute the ship’s AI in the specified state.