Script v1.4.4.0
- Handtools
- Events
- Objects
- Placeables
- Triggers
- Utils
- Vehicles
- Specializations
- AIVehicle
- AnimatedVehicle
- ArticulatedAxis
- Attachable
- AttacherJointControl
- AttacherJoints
- BaleGrab
- BaleLoader
- Baler
- BaleWrapper
- BuiltInCutterTrailer
- BunkerSiloCompacter
- Combine
- ConveyorBelt
- Cover
- CrabSteering
- Crawler
- Cultivator
- Cutter
- Cylindered
- Drivable
- DynamicMountAttacher
- Fillable
- FillActivatable
- FillVolume
- Foldable
- ForageWagon
- FrontloaderAttacher
- FruitPreparer
- FuelTrailer
- Honk
- HookLiftContainer
- HookLiftTrailer
- Leveler
- Lights
- LivestockTrailer
- ManureBarrel
- ManureSpreader
- MixerWagon
- Motorized
- Mountable
- Mower
- NonTabbable
- Overloading
- Pickup
- Pipe
- Plough
- PowerConsumer
- RandomlyMovingParts
- ReceivingHopper
- ReverseDriving
- RidgeMarker
- Roller
- Ropes
- RotorSpreader
- SemiTrailerFront
- Shovel
- SowingMachine
- SpeedRotatingParts
- Sprayer
- Steerable
- StrawBlower
- StumpCutter
- Tedder
- TensionBelts
- Trailer
- TreePlanter
- TreePlanterActivatable
- TreeSaw
- TurnOnVehicle
- Washable
- WaterTrailer
- Weeder
- WheelRotations
- Windrower
- WoodCrusher
- WoodHarvester
- WorkArea
- WorkParticles
Engine v7.0.0.2
- General
- Entity
- Node
- Scenegraph
- Lighting
- Camera
- Shape
- Particle System
- Physics
- Spline
- Animation
- Overlays
- Sound
- Input
- XML
- Network
- Callbacks
- Text Rendering
- Terrain Detail
- Tire Track
- Editor
- Rendering
- String
- Math
- I3D
- Fillplanes
Foundation Reference
TurnOnVehicle
DescriptionClass for all vehicles that can be turned onFunctions
- preLoad
- load
- loadInputAttacherJoint
- loadWorkAreaFromXML
- delete
- readStream
- writeStream
- update
- draw
- onLeave
- onDeactivate
- onDetach
- setIsTurnedOn
- onTurnedOff
- onTurnedOn
- getIsTurnedOn
- getCanBeTurnedOn
- getCanAddHelpButtonText
- getIsTurnedOnAllowed
- getTurnedOnNotAllowedWarning
- getIsWorkAreaActive
- onAiTurnOff
- getIsAIReadyForWork
- getIsOperating
preLoad
DescriptionCalled before loadingDefinition
preLoad(table savegame)Arguments
table | savegame | savegame |
22 | function TurnOnVehicle:preLoad(savegame) |
23 | self.setIsTurnedOn = TurnOnVehicle.setIsTurnedOn |
24 | self.getIsTurnedOnAllowed = TurnOnVehicle.getIsTurnedOnAllowed |
25 | self.getIsTurnedOn = TurnOnVehicle.getIsTurnedOn |
26 | self.getTurnedOnNotAllowedWarning = TurnOnVehicle.getTurnedOnNotAllowedWarning |
27 | self.getCanBeTurnedOn = TurnOnVehicle.getCanBeTurnedOn |
28 | self.loadInputAttacherJoint = Utils.overwrittenFunction(self.loadInputAttacherJoint, TurnOnVehicle.loadInputAttacherJoint) |
29 | self.loadWorkAreaFromXML = Utils.overwrittenFunction(self.loadWorkAreaFromXML, TurnOnVehicle.loadWorkAreaFromXML) |
30 | self.onTurnedOn = SpecializationUtil.callSpecializationsFunction("onTurnedOn") |
31 | self.onTurnedOff = SpecializationUtil.callSpecializationsFunction("onTurnedOff") |
32 | self.getIsWorkAreaActive = Utils.overwrittenFunction(self.getIsWorkAreaActive, TurnOnVehicle.getIsWorkAreaActive) |
33 | self.getCanAddHelpButtonText = Utils.overwrittenFunction(self.getCanAddHelpButtonText, TurnOnVehicle.getCanAddHelpButtonText) |
34 | self.getIsOperating = Utils.overwrittenFunction(self.getIsOperating, TurnOnVehicle.getIsOperating); |
35 | end |
load
DescriptionCalled on loadingDefinition
load(table savegame)Arguments
table | savegame | savegame |
40 | function TurnOnVehicle:load(savegame) |
41 | |
42 | Utils.checkDeprecatedXMLElements(self.xmlFile, self.configFileName, "vehicle.turnOnSettings#turnOffText", "vehicle.turnOnVehicle#turnOffText") |
43 | Utils.checkDeprecatedXMLElements(self.xmlFile, self.configFileName, "vehicle.turnOnSettings#turnOnText", "vehicle.turnOnVehicle#turnOnText") |
44 | Utils.checkDeprecatedXMLElements(self.xmlFile, self.configFileName, "vehicle.turnOnSettings#needsSelection", "vehicle.turnOnVehicle#needsSelection") |
45 | Utils.checkDeprecatedXMLElements(self.xmlFile, self.configFileName, "vehicle.turnOnSettings#isAlwaysTurnedOn", "vehicle.turnOnVehicle#isAlwaysTurnedOn") |
46 | Utils.checkDeprecatedXMLElements(self.xmlFile, self.configFileName, "vehicle.turnOnSettings#toggleButton", "vehicle.turnOnVehicle#toggleButton") |
47 | Utils.checkDeprecatedXMLElements(self.xmlFile, self.configFileName, "vehicle.turnOnSettings#animationName", "vehicle.turnOnVehicle.turnedAnimation#name") |
48 | Utils.checkDeprecatedXMLElements(self.xmlFile, self.configFileName, "vehicle.turnOnSettings#turnOnSpeedScale", "vehicle.turnOnVehicle.turnedAnimation#turnOnSpeedScale") |
49 | Utils.checkDeprecatedXMLElements(self.xmlFile, self.configFileName, "vehicle.turnOnSettings#turnOffSpeedScale", "vehicle.turnOnVehicle.turnedAnimation#turnOffSpeedScale") |
50 | |
51 | self.isSelectable = true |
52 | |
53 | self.turnOnVehicle = {} |
54 | |
55 | local turnOnButtonStr = getXMLString(self.xmlFile, "vehicle.turnOnVehicle#toggleButton") |
56 | if turnOnButtonStr ~= nil then |
57 | self.turnOnVehicle.toggleTurnOnInputBinding = InputBinding[turnOnButtonStr] |
58 | end |
59 | |
60 | self.turnOnVehicle.toggleTurnOnInputBinding = Utils.getNoNil(self.turnOnVehicle.toggleTurnOnInputBinding, InputBinding.IMPLEMENT_EXTRA) |
61 | self.turnOnVehicle.turnOffText = Utils.getNoNil(getXMLString(self.xmlFile, "vehicle.turnOnVehicle#turnOffText"), "action_turnOffOBJECT") |
62 | self.turnOnVehicle.turnOnText = Utils.getNoNil(getXMLString(self.xmlFile, "vehicle.turnOnVehicle#turnOnText"), "action_turnOnOBJECT") |
63 | self.turnOnVehicle.needsSelection = Utils.getNoNil(getXMLBool(self.xmlFile, "vehicle.turnOnVehicle#needsSelection"), true) |
64 | self.turnOnVehicle.isTurnedOn = false |
65 | self.turnOnVehicle.isAlwaysTurnedOn = Utils.getNoNil(getXMLBool(self.xmlFile, "vehicle.turnOnVehicle#isAlwaysTurnedOn"), false) |
66 | self.turnOnVehicle.motorNotStartedWarning = string.format(g_i18n:getText(Utils.getNoNil(getXMLString(self.xmlFile, "vehicle.turnOnVehicle#motorNotStartedWarning"), "warning_motorNotStarted")), self.typeDesc); |
67 | |
68 | if self.isClient then |
69 | self.turnOnVehicle.rotationNodes = Utils.loadRotationNodes(self.xmlFile, {}, "vehicle.turnedOnRotationNodes.turnedOnRotationNode", "turnOn", self.components) |
70 | |
71 | local turnOnAnimation = getXMLString(self.xmlFile, "vehicle.turnOnVehicle.turnedAnimation#name") |
72 | if turnOnAnimation ~= nil then |
73 | self.turnOnVehicle.turnOnAnimation = {} |
74 | self.turnOnVehicle.turnOnAnimation.name = turnOnAnimation |
75 | self.turnOnVehicle.turnOnAnimation.turnOnSpeedScale = Utils.getNoNil(getXMLFloat(self.xmlFile, "vehicle.turnOnVehicle.turnedAnimation#turnOnSpeedScale"), 1) |
76 | self.turnOnVehicle.turnOnAnimation.turnOffSpeedScale = Utils.getNoNil(getXMLFloat(self.xmlFile, "vehicle.turnOnVehicle.turnedAnimation#turnOffSpeedScale"), -self.turnOnVehicle.turnOnAnimation.turnOnSpeedScale) |
77 | end |
78 | |
79 | local turnedOnAnimation = getXMLString(self.xmlFile, "vehicle.turnOnVehicle.turnedOnAnimation#name") |
80 | if turnedOnAnimation ~= nil then |
81 | self.turnOnVehicle.turnedOnAnimation = {} |
82 | self.turnOnVehicle.turnedOnAnimation.name = turnedOnAnimation |
83 | self.turnOnVehicle.turnedOnAnimation.turnOnFadeTime = Utils.getNoNil(getXMLFloat(self.xmlFile, "vehicle.turnOnVehicle.turnedOnAnimation#turnOnFadeTime"), 1) * 1000 |
84 | self.turnOnVehicle.turnedOnAnimation.turnOffFadeTime = Utils.getNoNil(getXMLFloat(self.xmlFile, "vehicle.turnOnVehicle.turnedOnAnimation#turnOffFadeTime"), 1) * 1000 |
85 | self.turnOnVehicle.turnedOnAnimation.speedScale = Utils.getNoNil(getXMLFloat(self.xmlFile, "vehicle.turnOnVehicle.turnedOnAnimation#speedScale"), 1) |
86 | self.turnOnVehicle.turnedOnAnimation.speedDirection = 0 |
87 | self.turnOnVehicle.turnedOnAnimation.currentSpeed = 0 |
88 | end |
89 | |
90 | self.turnOnVehicle.sampleTurnedOnStart = SoundUtil.loadSample(self.xmlFile, {}, "vehicle.turnOnVehicle.turnedOnStartSound", nil, self.baseDirectory) |
91 | self.turnOnVehicle.sampleTurnedOn = SoundUtil.loadSample(self.xmlFile, {}, "vehicle.turnOnVehicle.turnedOnSound", nil, self.baseDirectory, self.components[1].node) |
92 | self.turnOnVehicle.sampleTurnedOnStop = SoundUtil.loadSample(self.xmlFile, {}, "vehicle.turnOnVehicle.turnedOnStopSound", nil, self.baseDirectory) |
93 | end |
94 | |
95 | self:addConflictCheckedInput(self.turnOnVehicle.toggleTurnOnInputBinding) |
96 | end |
loadInputAttacherJoint
DescriptionCalled on loadingDefinition
loadInputAttacherJoint(table savegame)Arguments
table | savegame | savegame |
101 | function TurnOnVehicle:loadInputAttacherJoint(superFunc, xmlFile, key, inputAttacherJoint, i) |
102 | if superFunc ~= nil then |
103 | if not superFunc(self, xmlFile, key, inputAttacherJoint, i) then |
104 | return false |
105 | end |
106 | end |
107 | |
108 | inputAttacherJoint.canBeTurnedOn = Utils.getNoNil(getXMLBool(xmlFile, key.. "#canBeTurnedOn"), true) |
109 | |
110 | return true |
111 | end |
loadWorkAreaFromXML
DescriptionLoads work areas from xmlDefinition
loadWorkAreaFromXML(table workArea, integer xmlFile, string key)Arguments
table | workArea | workArea |
integer | xmlFile | id of xml object |
string | key | key |
118 | function TurnOnVehicle:loadWorkAreaFromXML(superFunc, workArea, xmlFile, key) |
119 | local retValue = true |
120 | if superFunc ~= nil then |
121 | retValue = superFunc(self, workArea, xmlFile, key) |
122 | end |
123 | |
124 | workArea.needsSetIsTurnedOn = Utils.getNoNil( getXMLBool(xmlFile, key.."#needsSetIsTurnedOn"), true ) |
125 | |
126 | return retValue |
127 | end |
delete
DescriptionCalled on deletingDefinition
delete()Code
131 | function TurnOnVehicle:delete() |
132 | if self.isClient then |
133 | SoundUtil.deleteSample(self.turnOnVehicle.sampleTurnedOnStart) |
134 | SoundUtil.deleteSample(self.turnOnVehicle.sampleTurnedOn) |
135 | SoundUtil.deleteSample(self.turnOnVehicle.sampleTurnedOnStop) |
136 | end |
137 | end |
readStream
DescriptionCalled on client side on joinDefinition
readStream(integer streamId, integer connection)Arguments
integer | streamId | streamId |
integer | connection | connection |
143 | function TurnOnVehicle:readStream(streamId, connection) |
144 | local turnedOn = streamReadBool(streamId) |
145 | self:setIsTurnedOn(turnedOn, true) |
146 | end |
writeStream
DescriptionCalled on server side on joinDefinition
writeStream(integer streamId, integer connection)Arguments
integer | streamId | streamId |
integer | connection | connection |
152 | function TurnOnVehicle:writeStream(streamId, connection) |
153 | streamWriteBool(streamId, self.turnOnVehicle.isTurnedOn) |
154 | end |
update
DescriptionCalled on updateDefinition
update(float dt)Arguments
float | dt | time since last call in ms |
165 | function TurnOnVehicle:update(dt) |
166 | if self:getIsActive() then |
167 | if self:getCanBeTurnedOn() then |
168 | if InputBinding.hasEvent(self.turnOnVehicle.toggleTurnOnInputBinding) then |
169 | if self:getIsActiveForInput(self.turnOnVehicle.needsSelection) and not self:hasInputConflictWithSelection() then |
170 | if self:getIsTurnedOnAllowed(not self.turnOnVehicle.isTurnedOn) then |
171 | self:setIsTurnedOn(not self.turnOnVehicle.isTurnedOn) |
172 | else |
173 | if not self.turnOnVehicle.isTurnedOn then |
174 | local warning = self:getTurnedOnNotAllowedWarning() |
175 | if warning ~= nil then |
176 | g_currentMission:showBlinkingWarning(warning, 2000) |
177 | end |
178 | end |
179 | end |
180 | end |
181 | end |
182 | end |
183 | end |
184 | if self.isClient then |
185 | Utils.updateRotationNodes(self, self.turnOnVehicle.rotationNodes, dt, self:getIsActive() and self:getIsTurnedOn()) |
186 | |
187 | if self:getIsTurnedOn() then |
188 | if self:getIsActiveForSound() then |
189 | if not SoundUtil.isSamplePlaying(self.turnOnVehicle.sampleTurnedOnStart, 1.8*dt) then |
190 | SoundUtil.playSample(self.turnOnVehicle.sampleTurnedOn, 0, 0, nil) |
191 | end |
192 | SoundUtil.stop3DSample(self.turnOnVehicle.sampleTurnedOn) |
193 | else |
194 | SoundUtil.stopSample(self.turnOnVehicle.sampleTurnedOn, true) |
195 | SoundUtil.play3DSample(self.turnOnVehicle.sampleTurnedOn) |
196 | end |
197 | end |
198 | |
199 | if self.playAnimation ~= nil and self.turnOnVehicle.turnedOnAnimation ~= nil and self.turnOnVehicle.turnedOnAnimation.speedDirection ~= 0 then |
200 | local duration = self.turnOnVehicle.turnedOnAnimation.turnOnFadeTime |
201 | if self.turnOnVehicle.turnedOnAnimation.speedDirection == -1 then |
202 | duration = self.turnOnVehicle.turnedOnAnimation.turnOffFadeTime |
203 | end |
204 | self.turnOnVehicle.turnedOnAnimation.currentSpeed = Utils.clamp(self.turnOnVehicle.turnedOnAnimation.currentSpeed + self.turnOnVehicle.turnedOnAnimation.speedDirection * dt/duration, 0, 1) |
205 | self:setAnimationSpeed(self.turnOnVehicle.turnedOnAnimation.name, self.turnOnVehicle.turnedOnAnimation.currentSpeed*self.turnOnVehicle.turnedOnAnimation.speedScale) |
206 | if self.turnOnVehicle.turnedOnAnimation.speedDirection == -1 and self.turnOnVehicle.turnedOnAnimation.currentSpeed == 0 then |
207 | self:stopAnimation(self.turnOnVehicle.turnedOnAnimation.name, true) |
208 | end |
209 | |
210 | if self.turnOnVehicle.turnedOnAnimation.currentSpeed == 1 or self.turnOnVehicle.turnedOnAnimation.currentSpeed == 0 then |
211 | self.turnOnVehicle.turnedOnAnimation.speedDirection = 0 |
212 | end |
213 | end |
214 | end |
215 | end |
draw
DescriptionCalled on drawDefinition
draw()Code
222 | function TurnOnVehicle:draw() |
223 | if self:getCanAddHelpButtonText() then |
224 | if self.isClient then |
225 | if self:getCanBeTurnedOn() then |
226 | if self:getIsActiveForInput(self.turnOnVehicle.needsSelection) and not self:hasInputConflictWithSelection() then |
227 | if self:getIsTurnedOnAllowed(not self.turnOnVehicle.isTurnedOn) then |
228 | if self.turnOnVehicle.isTurnedOn then |
229 | g_currentMission:addHelpButtonText(string.format(g_i18n:getText(self.turnOnVehicle.turnOffText), self.typeDesc), self.turnOnVehicle.toggleTurnOnInputBinding, nil, GS_PRIO_HIGH) |
230 | else |
231 | g_currentMission:addHelpButtonText(string.format(g_i18n:getText(self.turnOnVehicle.turnOnText), self.typeDesc), self.turnOnVehicle.toggleTurnOnInputBinding, nil, GS_PRIO_HIGH) |
232 | end |
233 | end |
234 | end |
235 | end |
236 | end |
237 | end |
238 | end |
onLeave
DescriptionCalled on leaving the vehicleDefinition
onLeave()Code
242 | function TurnOnVehicle:onLeave() |
243 | if self:getDeactivateOnLeave() then |
244 | self:setIsTurnedOn(false, true) |
245 | end |
246 | end |
onDeactivate
DescriptionCalled on deactivateDefinition
onDeactivate()Code
250 | function TurnOnVehicle:onDeactivate() |
251 | self:setIsTurnedOn(false, true) |
252 | end |
onDetach
DescriptionCalled if vehicle gets detachedDefinition
onDetach()Code
256 | function TurnOnVehicle:onDetach() |
257 | self:setIsTurnedOn(false, true) |
258 | end |
setIsTurnedOn
DescriptionSet is turned on stateDefinition
setIsTurnedOn(boolean isTurnedOn, boolean noEventSend)Arguments
boolean | isTurnedOn | new is is turned on state |
boolean | noEventSend | no event send |
264 | function TurnOnVehicle:setIsTurnedOn(isTurnedOn, noEventSend) |
265 | if isTurnedOn ~= self.turnOnVehicle.isTurnedOn then |
266 | SetTurnedOnEvent.sendEvent(self, isTurnedOn, noEventSend) |
267 | self.turnOnVehicle.isTurnedOn = isTurnedOn |
268 | if self.turnOnVehicle.isTurnedOn then |
269 | self:onTurnedOn(noEventSend) |
270 | else |
271 | self:onTurnedOff(noEventSend) |
272 | end |
273 | end |
274 | end |
onTurnedOff
DescriptionCalled on turn offDefinition
onTurnedOff(boolean noEventSend)Arguments
boolean | noEventSend | no event send |
279 | function TurnOnVehicle:onTurnedOff(noEventSend) |
280 | if self.isClient then |
281 | if self.playAnimation ~= nil then |
282 | if self.turnOnVehicle.turnOnAnimation ~= nil then |
283 | self:playAnimation(self.turnOnVehicle.turnOnAnimation.name, self.turnOnVehicle.turnOnAnimation.turnOffSpeedScale, self:getAnimationTime(self.turnOnVehicle.turnOnAnimation.name), true) |
284 | end |
285 | if self.turnOnVehicle.turnedOnAnimation ~= nil then |
286 | self.turnOnVehicle.turnedOnAnimation.speedDirection = -1 |
287 | end |
288 | end |
289 | SoundUtil.stopSample(self.turnOnVehicle.sampleTurnedOnStart, true) |
290 | SoundUtil.stopSample(self.turnOnVehicle.sampleTurnedOn, true) |
291 | SoundUtil.stop3DSample(self.turnOnVehicle.sampleTurnedOn) |
292 | if self:getIsActiveForSound() then |
293 | SoundUtil.playSample(self.turnOnVehicle.sampleTurnedOnStop, 1, 0, nil) |
294 | end |
295 | end |
296 | end |
onTurnedOn
DescriptionCalled on turn onDefinition
onTurnedOn(boolean noEventSend)Arguments
boolean | noEventSend | no event send |
301 | function TurnOnVehicle:onTurnedOn(noEventSend) |
302 | |
303 | if self.isClient then |
304 | if self.playAnimation ~= nil then |
305 | if self.turnOnVehicle.turnOnAnimation ~= nil then |
306 | self:playAnimation(self.turnOnVehicle.turnOnAnimation.name, self.turnOnVehicle.turnOnAnimation.turnOnSpeedScale, self:getAnimationTime(self.turnOnVehicle.turnOnAnimation.name), true) |
307 | end |
308 | if self.turnOnVehicle.turnedOnAnimation ~= nil then |
309 | self.turnOnVehicle.turnedOnAnimation.speedDirection = 1 |
310 | self:playAnimation(self.turnOnVehicle.turnedOnAnimation.name, self.turnOnVehicle.turnedOnAnimation.currentSpeed*self.turnOnVehicle.turnedOnAnimation.speedScale, self:getAnimationTime(self.turnOnVehicle.turnedOnAnimation.name), true) |
311 | end |
312 | end |
313 | SoundUtil.stopSample(self.turnOnVehicle.sampleTurnedOnStop, true) |
314 | SoundUtil.stopSample(self.turnOnVehicle.sampleTurnedOn, true) |
315 | SoundUtil.stop3DSample(self.turnOnVehicle.sampleTurnedOn) |
316 | if self:getIsActiveForSound() then |
317 | SoundUtil.playSample(self.turnOnVehicle.sampleTurnedOnStart, 1, 0, nil) |
318 | end |
319 | end |
320 | end |
getIsTurnedOn
DescriptionReturns if vehicle is turned onDefinition
getIsTurnedOn()Return Values
boolean | isTurnedOn | vehicle is turned on |
325 | function TurnOnVehicle:getIsTurnedOn() |
326 | return self.turnOnVehicle.isAlwaysTurnedOn or self.turnOnVehicle.isTurnedOn |
327 | end |
getCanBeTurnedOn
DescriptionReturns if can be turned onDefinition
getCanBeTurnedOn()Return Values
boolean | canBeTurnedOn | vehicle can be turned on |
332 | function TurnOnVehicle:getCanBeTurnedOn() |
333 | if self.turnOnVehicle.isAlwaysTurnedOn then |
334 | return false |
335 | end |
336 | if self.attacherJoint ~= nil and self.attacherJoint.canBeTurnedOn ~= nil and not self.attacherJoint.canBeTurnedOn then |
337 | return false |
338 | end |
339 | |
340 | return true |
341 | end |
getCanAddHelpButtonText
DescriptionReturns if vehicle can add 'turn on' help button textDefinition
getCanAddHelpButtonText()Return Values
boolean | canAdd | can add help button text |
346 | function TurnOnVehicle:getCanAddHelpButtonText(superFunc) |
347 | if superFunc ~= nil then |
348 | return superFunc(self) |
349 | end |
350 | return true |
351 | end |
getIsTurnedOnAllowed
DescriptionReturns if turn on is allowedDefinition
getIsTurnedOnAllowed(boolean isTurnedOn)Arguments
boolean | isTurnedOn | is turned on |
boolean | allow | allow turn on |
357 | function TurnOnVehicle:getIsTurnedOnAllowed(isTurnedOn) |
358 | if self.turnOnVehicle.isAlwaysTurnedOn then |
359 | return false |
360 | end |
361 | --return true |
362 | if self.getIsMotorStarted ~= nil then |
363 | return self:getIsMotorStarted() |
364 | else |
365 | local rootAttacherVehicle = self:getRootAttacherVehicle() |
366 | if rootAttacherVehicle ~= self then |
367 | if rootAttacherVehicle.getIsMotorStarted ~= nil then |
368 | return rootAttacherVehicle:getIsMotorStarted() |
369 | end |
370 | end |
371 | end |
372 | return true |
373 | end |
getTurnedOnNotAllowedWarning
DescriptionReturns turn on not allowed warning textDefinition
getTurnedOnNotAllowedWarning()Return Values
string | warningText | turn on not allowed warning text |
378 | function TurnOnVehicle:getTurnedOnNotAllowedWarning() |
379 | if self.getIsMotorStarted ~= nil then |
380 | if not self:getIsMotorStarted() then |
381 | return self.turnOnVehicle.motorNotStartedWarning; |
382 | end; |
383 | end; |
384 | |
385 | return nil; |
386 | end |
getIsWorkAreaActive
DescriptionReturns true if work area is activeDefinition
getIsWorkAreaActive(table workArea)Arguments
table | workArea | workArea |
boolean | isActive | work area is active |
392 | function TurnOnVehicle:getIsWorkAreaActive(superFunc, workArea) |
393 | if not self:getIsTurnedOn() and workArea.needsSetIsTurnedOn then |
394 | return false |
395 | end |
396 | |
397 | if superFunc ~= nil then |
398 | return superFunc(self, workArea) |
399 | end |
400 | return true |
401 | end |
onAiTurnOff
DescriptionCalled on ai turn offDefinition
onAiTurnOff()Code
405 | function TurnOnVehicle:onAiTurnOff() |
406 | self:setIsTurnedOn(false) |
407 | end |
getIsAIReadyForWork
DescriptionReturns true if vehicle is ready for ai workDefinition
getIsAIReadyForWork()Return Values
boolean | isReady | is ready for ai work |
412 | function TurnOnVehicle:getIsAIReadyForWork() |
413 | if self:getCanBeTurnedOn() then |
414 | if self:getIsTurnedOn() then |
415 | return true |
416 | else |
417 | if self:getIsTurnedOnAllowed(true) then |
418 | self:setIsTurnedOn(true) |
419 | end |
420 | return false |
421 | end |
422 | else |
423 | return true |
424 | end |
425 | end |
getIsOperating
DescriptionReturns if vehicle is operatingDefinition
getIsOperating()Return Values
boolean | isOperating | is operating |
430 | function TurnOnVehicle:getIsOperating(superFunc) |
431 | if self:getIsTurnedOn() then |
432 | return true |
433 | end |
434 | |
435 | local isOperating = false |
436 | if superFunc ~= nil then |
437 | isOperating = superFunc(self) |
438 | end |
439 | |
440 | return isOperating |
441 | end |