LUADOC - Farming Simulator 17

Printable Version

Script v1.4.4.0

Engine v7.0.0.2

Foundation Reference

StrawBlowerDoorOpenEvent

Description
Event for straw blower door state
Functions

emptyNew

Description
Create instance of Event class
Definition
emptyNew()
Return Values
tableselfinstance of class event
Code
15function StrawBlowerDoorOpenEvent:emptyNew()
16 local self = Event:new(StrawBlowerDoorOpenEvent_mt);
17 return self;
18end;

new

Description
Create new instance of event
Definition
new(table object, boolean isStrawBlowerDoorOpen)
Arguments
tableobjectobject
booleanisStrawBlowerDoorOpenstraw blower door state
Code
24function StrawBlowerDoorOpenEvent:new(object, isStrawBlowerDoorOpen)
25 local self = StrawBlowerDoorOpenEvent:emptyNew()
26 self.object = object;
27 self.isStrawBlowerDoorOpen = isStrawBlowerDoorOpen;
28 return self;
29end;

readStream

Description
Called on client side on join
Definition
readStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
35function StrawBlowerDoorOpenEvent:readStream(streamId, connection)
36 self.object = readNetworkNodeObject(streamId);
37 self.isStrawBlowerDoorOpen = streamReadBool(streamId);
38 self:run(connection);
39end;

writeStream

Description
Called on server side on join
Definition
writeStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
45function StrawBlowerDoorOpenEvent:writeStream(streamId, connection)
46 writeNetworkNodeObject(streamId, self.object);
47 streamWriteBool(streamId, self.isStrawBlowerDoorOpen);
48end;

run

Description
Run action on receiving side
Definition
run(integer connection)
Arguments
integerconnectionconnection
Code
53function StrawBlowerDoorOpenEvent:run(connection)
54 if not connection:getIsServer() then
55 g_server:broadcastEvent(self, false, connection, self.object);
56 end;
57 if self.object ~= nil then
58 self.object:setIsStrawBlowerDoorOpen(self.isStrawBlowerDoorOpen, true);
59 end;
60end;

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, boolean isStrawBlowerDoorOpen, boolean noEventSend)
Arguments
tablevehiclevehicle
booleanisStrawBlowerDoorOpenstraw blower door state
booleannoEventSendno event send
Code
67function StrawBlowerDoorOpenEvent.sendEvent(vehicle, isStrawBlowerDoorOpen, noEventSend)
68 if isStrawBlowerDoorOpen ~= vehicle.isStrawBlowerDoorOpen then
69 if noEventSend == nil or noEventSend == false then
70 if g_server ~= nil then
71 g_server:broadcastEvent(StrawBlowerDoorOpenEvent:new(vehicle, isStrawBlowerDoorOpen), nil, nil, vehicle);
72 else
73 g_client:getServerConnection():sendEvent(StrawBlowerDoorOpenEvent:new(vehicle, isStrawBlowerDoorOpen));
74 end;
75 end;
76 end;
77end;