Sprache Deutsch Language English

Script Dokumentation LS 2015 - ReverseDrivingSetStateEvent (Patch 1.3)

Script Dokumentation Übersicht

scripts/vehicles/specializations/ReverseDrivingSetStateEvent.lua

Copyright (c) 2008-2015 GIANTS Software GmbH, Confidential, All Rights Reserved.
This document is to be published solely by ls-mods.de
1-- Copyright (C) GIANTS Software GmbH, Confidential, All Rights Reserved.
2
3ReverseDrivingSetStateEvent = {};
4ReverseDrivingSetStateEvent_mt = Class(ReverseDrivingSetStateEvent, Event);
5
6InitStaticEventClass(ReverseDrivingSetStateEvent, "ReverseDrivingSetStateEvent", EventIds.EVENT_REVERSE_DRIVING_SET_STATE);
7
8function ReverseDrivingSetStateEvent:emptyNew()
9 local self = Event:new(ReverseDrivingSetStateEvent_mt);
10 return self;
11end;
12
13function ReverseDrivingSetStateEvent:new(vehicle, isReverseDriving)
14 local self = ReverseDrivingSetStateEvent:emptyNew()
15 self.vehicle = vehicle;
16 self.isReverseDriving = isReverseDriving;
17 return self;
18end;
19
20function ReverseDrivingSetStateEvent:readStream(streamId, connection)
21 local id = streamReadInt32(streamId);
22 self.isReverseDriving = streamReadBool(streamId);
23 self.vehicle = networkGetObject(id);
24 self:run(connection);
25end;
26
27function ReverseDrivingSetStateEvent:writeStream(streamId, connection)
28 streamWriteInt32(streamId, networkGetObjectId(self.vehicle));
29 streamWriteBool(streamId, self.isReverseDriving);
30end;
31
32function ReverseDrivingSetStateEvent:run(connection)
33 if not connection:getIsServer() then
34 g_server:broadcastEvent(self, false, connection, self.vehicle);
35 end;
36 if self.vehicle ~= nil then
37 self.vehicle:setIsReverseDriving(self.isReverseDriving, true);
38 end;
39end;
40
41function ReverseDrivingSetStateEvent.sendEvent(vehicle, isReverseDriving, noEventSend)
42 if isReverseDriving ~= vehicle.isReverseDriving then
43 if noEventSend == nil or noEventSend == false then
44 if g_server ~= nil then
45 g_server:broadcastEvent(ReverseDrivingSetStateEvent:new(vehicle, isReverseDriving), nil, nil, vehicle);
46 else
47 g_client:getServerConnection():sendEvent(ReverseDrivingSetStateEvent:new(vehicle, isReverseDriving));
48 end;
49 end;
50 end;
51end;
Copyright (c) 2008-2015 GIANTS Software GmbH, Confidential, All Rights Reserved.
This document is to be published solely by ls-mods.de
Script Dokumentation Übersicht