LUADOC - Farming Simulator 22

Script v1_7_1_0

Engine v1_7_1_0

Foundation Reference

VehicleLowerImplementEvent

Description
Event for lowering implement
Parent
Event
Functions

emptyNew

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

new

Description
Create new instance of event
Definition
new(table vehicle, integer jointIndex, boolean moveDown)
Arguments
tablevehiclevehicle
integerjointIndexindex of joint
booleanmoveDownmove down
Return Values
tableinstanceinstance of event
Code
25function VehicleLowerImplementEvent.new(vehicle, jointIndex, moveDown)
26 local self = VehicleLowerImplementEvent.emptyNew()
27 self.jointIndex = jointIndex
28 self.vehicle = vehicle
29 self.moveDown = moveDown
30 return self
31end

readStream

Description
Called on client side on join
Definition
readStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
37function VehicleLowerImplementEvent:readStream(streamId, connection)
38 self.vehicle = NetworkUtil.readNodeObject(streamId)
39 self.jointIndex = streamReadInt8(streamId)
40 self.moveDown = streamReadBool(streamId)
41 self:run(connection)
42end

run

Description
Run action on receiving side
Definition
run(integer connection)
Arguments
integerconnectionconnection
Code
57function VehicleLowerImplementEvent:run(connection)
58 if self.vehicle ~= nil and self.vehicle:getIsSynchronized() then
59 self.vehicle:setJointMoveDown(self.jointIndex, self.moveDown, true)
60 end
61 if not connection:getIsServer() then
62 g_server:broadcastEvent(VehicleLowerImplementEvent.new(self.vehicle, self.jointIndex, self.moveDown), nil, connection, self.vehicle)
63 end
64end

sendEvent

Description
Broadcast event from server to all clients, if called on client call function on server and broadcast it to all clients
Definition
sendEvent(table vehicle, integer jointIndex, boolean moveDown, boolean noEventSend)
Arguments
tablevehiclevehicle
integerjointIndexindex of joint
booleanmoveDownmove down
booleannoEventSendno event send
Code
72function VehicleLowerImplementEvent.sendEvent(vehicle, jointIndex, moveDown, noEventSend)
73 if noEventSend == nil or noEventSend == false then
74 if g_server ~= nil then
75 g_server:broadcastEvent(VehicleLowerImplementEvent.new(vehicle, jointIndex, moveDown), nil, nil, vehicle)
76 else
77 g_client:getServerConnection():sendEvent(VehicleLowerImplementEvent.new(vehicle, jointIndex, moveDown))
78 end
79 end
80end

writeStream

Description
Called on server side on join
Definition
writeStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
48function VehicleLowerImplementEvent:writeStream(streamId, connection)
49 NetworkUtil.writeNodeObject(streamId, self.vehicle)
50 streamWriteInt8(streamId, self.jointIndex)
51 streamWriteBool(streamId, self.moveDown)
52end