LUADOC - Farming Simulator 17

Printable Version

Script v1.4.4.0

Engine v7.0.0.2

Foundation Reference

VehicleBundleAttachEvent

Description
Event for bundle attaching
Functions

emptyNew

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

new

Description
Create new instance of event
Definition
new(table bundles)
Arguments
tablebundlesbundles
Return Values
tableinstanceinstance of event
Code
23function VehicleBundleAttachEvent:new(bundles)
24 local self = VehicleBundleAttachEvent:emptyNew()
25 self.bundles = bundles;
26 return self;
27end;

readStream

Description
Called on client side on join
Definition
readStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
33function VehicleBundleAttachEvent:readStream(streamId, connection)
34 local numBundles = streamReadUInt8(streamId)
35 for i=1, numBundles do
36 local v1 = readNetworkNodeObjectId(streamId)
37 local v2 = readNetworkNodeObjectId(streamId)
38 local inputJointIndex = streamReadUIntN(streamId, 7);
39 local jointIndex = streamReadUIntN(streamId, 7);
40 table.insert(g_currentMission.vehiclesToAttach, {v1id=v1, v2id=v2, inputJointIndex=inputJointIndex, jointIndex=jointIndex})
41 end
42end;

writeStream

Description
Called on server side on join
Definition
writeStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
48function VehicleBundleAttachEvent:writeStream(streamId, connection)
49 streamWriteUInt8(streamId, #self.bundles)
50 for i=1, #self.bundles do
51 local bundle = self.bundles[i]
52 writeNetworkNodeObjectId(streamId, networkGetObjectId(bundle.v1));
53 writeNetworkNodeObjectId(streamId, networkGetObjectId(bundle.v2));
54 streamWriteUIntN(streamId, bundle.input, 7);
55 streamWriteUIntN(streamId, bundle.attacher, 7);
56 end
57end;

run

Description
Run action on receiving side
Definition
run(integer connection)
Arguments
integerconnectionconnection
Code
62function VehicleBundleAttachEvent:run(connection)
63 self.vehicle:attachImplement(self.implement, self.inputJointIndex, self.jointIndex, true, nil, self.startLowered);
64 if not connection:getIsServer() then
65 g_server:broadcastEvent(self, nil, connection, self.object);
66 end;
67end;