LUADOC - Farming Simulator 22

Script v1_7_1_0

Engine v1_7_1_0

Foundation Reference

AIFieldWorkerStateEvent

Description
Event for ai start
Parent
Event
Functions

emptyNew

Description
Create instance of Event class
Definition
emptyNew()
Return Values
tableselfinstance of class event
Code
13function AIFieldWorkerStateEvent.emptyNew()
14 local self = Event.new(AIFieldWorkerStateEvent_mt)
15 return self
16end

new

Description
Create new instance of event
Definition
new(table vehicle, boolean isActive)
Arguments
tablevehiclevehicle
booleanisActiveis active
Code
22function AIFieldWorkerStateEvent.new(vehicle, isActive)
23 local self = AIFieldWorkerStateEvent.emptyNew()
24
25 self.vehicle = vehicle
26 self.isActive = isActive
27
28 return self
29end

readStream

Description
Called on client side on join
Definition
readStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
35function AIFieldWorkerStateEvent:readStream(streamId, connection)
36 self.vehicle = NetworkUtil.readNodeObject(streamId)
37 self.isActive = streamReadBool(streamId)
38
39 self:run(connection)
40end

run

Description
Run action on receiving side
Definition
run(integer connection)
Arguments
integerconnectionconnection
Code
55function AIFieldWorkerStateEvent:run(connection)
56 if self.vehicle ~= nil then
57 if self.vehicle ~= nil and self.vehicle:getIsSynchronized() then
58 if self.isActive then
59 self.vehicle:startFieldWorker()
60 else
61 self.vehicle:stopFieldWorker()
62 end
63 end
64 end
65end

writeStream

Description
Called on server side on join
Definition
writeStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
46function AIFieldWorkerStateEvent:writeStream(streamId, connection)
47 assert(not connection:getIsServer(), "AIFieldWorkerStateEvent is a server to client event only")
48 NetworkUtil.writeNodeObject(streamId, self.vehicle)
49 streamWriteBool(streamId, self.isActive)
50end