Script v1_7_1_0
- AI
- Animals
- Collections
- Contracts
- Debug
- Economy
- Elements
- EnvironmentalScore
- Errors
- Events
- GUI
- Handtools
- Hud
- I3d
- Input
- Jobs
- Maps
- Materials
- Misc
- Objects
- Parameters
- AIParameter
- AIParameterFillType
- AIParameterGroup
- AIParameterLoadingStation
- AIParameterLooping
- AIParameterPosition
- AIParameterPositionAngle
- AIParameterUnloadingStati...
- AIParameterVehicle
- Placeables
- Placement
- Player
- Shop
- Sounds
- Specialization
- Specializations
- StateMachine
- Statistics
- Tasks
- Triggers
- Utils
- Vehicles
Engine v1_7_1_0
- AI
- Animation
- Camera
- Entity
- Fillplanes
- general
- General
- I3D
- Input
- Lighting
- Math
- Network
- Node
- NoteNode
- Overlays
- Particle System
- Physics
- Rendering
- Scenegraph
- Shape
- Sound
- Spline
- String
- Terrain Detail
- Text Rendering
- Tire Track
- VoiceChat
- XML
Foundation Reference
AIParameterPosition
ParentAIParameterFunctions
getPosition
DescriptionDefinitiongetPosition()Code
71 | function AIParameterPosition:getPosition() |
72 | return self.x, self.z |
73 | end |
getString
DescriptionDefinitiongetString()Code
77 | function AIParameterPosition:getString() |
78 | return string.format("< %.1f , %.1f >", self.x, self.z) |
79 | end |
loadFromXMLFile
DescriptionDefinitionloadFromXMLFile()Code
38 | function AIParameterPosition:loadFromXMLFile(xmlFile, key) |
39 | self.x = xmlFile:getFloat(key .. "#x", self.x) |
40 | self.z = xmlFile:getFloat(key .. "#z", self.z) |
41 | end |
new
DescriptionDefinitionnew()Code
16 | function AIParameterPosition.new(customMt) |
17 | local self = AIParameter.new(customMt or AIParameterPosition_mt) |
18 | |
19 | self.type = AIParameterType.POSITION |
20 | |
21 | self.x = nil |
22 | self.z = nil |
23 | |
24 | return self |
25 | end |
readStream
DescriptionDefinitionreadStream()Code
45 | function AIParameterPosition:readStream(streamId, connection) |
46 | if streamReadBool(streamId) then |
47 | local x = streamReadFloat32(streamId) |
48 | local z = streamReadFloat32(streamId) |
49 | self:setPosition(x, z) |
50 | end |
51 | end |
saveToXMLFile
DescriptionDefinitionsaveToXMLFile()Code
29 | function AIParameterPosition:saveToXMLFile(xmlFile, key, usedModNames) |
30 | if self.x ~= nil then |
31 | xmlFile:setFloat(key .. "#x", self.x) |
32 | xmlFile:setFloat(key .. "#z", self.z) |
33 | end |
34 | end |
setPosition
DescriptionDefinitionsetPosition()Code
64 | function AIParameterPosition:setPosition(x, z) |
65 | self.x = x |
66 | self.z = z |
67 | end |
validate
DescriptionDefinitionvalidate()Code
83 | function AIParameterPosition:validate() |
84 | if self.x == nil or self.z == nil then |
85 | return false, g_i18n:getText("ai_validationErrorNoPosition") |
86 | end |
87 | |
88 | if not g_currentMission.aiSystem:getIsPositionReachable(self.x, 0, self.z) then |
89 | return false, g_i18n:getText("ai_validationErrorBlockedPosition") |
90 | end |
91 | |
92 | return true, nil |
93 | end |
writeStream
DescriptionDefinitionwriteStream()Code
55 | function AIParameterPosition:writeStream(streamId, connection) |
56 | if streamWriteBool(streamId, self.x ~= nil) then |
57 | streamWriteFloat32(streamId, self.x) |
58 | streamWriteFloat32(streamId, self.z) |
59 | end |
60 | end |