LUADOC - Farming Simulator 17

Printable Version

Script v1.4.4.0

Engine v7.0.0.2

Foundation Reference

FoldableSetFoldDirectionEvent

Description
Event for set folding direction
Functions

emptyNew

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

new

Description
Create new instance of event
Definition
new(table object, integer direction, boolean moveToMiddle)
Arguments
tableobjectobject
integerdirectiondirection
booleanmoveToMiddlemove to middle
Code
25function FoldableSetFoldDirectionEvent:new(object, direction, moveToMiddle)
26 local self = FoldableSetFoldDirectionEvent:emptyNew()
27 self.object = object;
28 self.direction = Utils.sign(direction);
29 self.moveToMiddle = moveToMiddle;
30 return self;
31end;

readStream

Description
Called on client side on join
Definition
readStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
37function FoldableSetFoldDirectionEvent:readStream(streamId, connection)
38 self.object = readNetworkNodeObject(streamId);
39 self.direction = streamReadUIntN(streamId, 2)-1;
40 self.moveToMiddle = streamReadBool(streamId);
41 self:run(connection);
42end;

writeStream

Description
Called on server side on join
Definition
writeStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
48function FoldableSetFoldDirectionEvent:writeStream(streamId, connection)
49 writeNetworkNodeObject(streamId, self.object);
50 streamWriteUIntN(streamId, self.direction+1, 2);
51 streamWriteBool(streamId, self.moveToMiddle);
52end;

run

Description
Run action on receiving side
Definition
run(integer connection)
Arguments
integerconnectionconnection
Code
57function FoldableSetFoldDirectionEvent:run(connection)
58 if self.object ~= nil then
59 self.object:setFoldState(self.direction, self.moveToMiddle, true);
60 end;
61 if not connection:getIsServer() then
62 g_server:broadcastEvent(FoldableSetFoldDirectionEvent:new(self.object, self.direction, self.moveToMiddle), nil, connection, self.object);
63 end;
64end;