Script v1_7_1_0
- AI
- Animals
- Collections
- Contracts
- Debug
- Economy
- Elements
- EnvironmentalScore
- Errors
- Events
- GUI
- Handtools
- Hud
- I3d
- Input
- Jobs
- Maps
- Materials
- Misc
- Objects
- Parameters
- Placeables
- Placement
- Player
- Shop
- Sounds
- Specialization
- Specializations
- StateMachine
- Statistics
- Tasks
- Triggers
- Utils
- Vehicles
Engine v1_7_1_0
- AI
- Animation
- Camera
- Entity
- Fillplanes
- general
- General
- I3D
- Input
- Lighting
- Math
- Network
- Node
- NoteNode
- Overlays
- Particle System
- Physics
- Rendering
- getMaterialCustomShaderFilename
- getMaterialCustomShaderVariation
- getMaterialDiffuseMapFilename
- getMaterialDiffuseMapHasAlpha
- getMaterialEmissiveMapFilename
- getMaterialEmissiveMapHasAlpha
- getMaterialGlossMapFilename
- getMaterialHasRefractionMap
- getMaterialIsAlphaBlended
- getMaterialIsAlphaTested
- getMaterialNormalMapFilename
- getMaterialNormalMapFormat
- getMaterialReflectionMapScaling
- setMaterialCustomMapFromFile
- setMaterialCustomShaderVariation
- setMaterialDiffuseMapFromFile
- setMaterialGlossMapFromFile
- setMaterialNormalMapFromFile
- Scenegraph
- Shape
- Sound
- Spline
- String
- Terrain Detail
- Text Rendering
- Tire Track
- VoiceChat
- XML
Foundation Reference
VehicleSettingsChangeEvent
DescriptionEvent for vehicle setting changeParent
EventFunctions
emptyNew
DescriptionCreate instance of Event classDefinition
emptyNew()Return Values
table | self | instance of class event |
13 | function VehicleSettingsChangeEvent.emptyNew() |
14 | local self = Event.new(VehicleSettingsChangeEvent_mt) |
15 | return self |
16 | end |
new
DescriptionCreate new instance of eventDefinition
new(table vehicle, boolean isEasyControlActive)Arguments
table | vehicle | vehicle |
boolean | isEasyControlActive | is easy control enabled |
22 | function VehicleSettingsChangeEvent.new(vehicle, settings, state) |
23 | local self = VehicleSettingsChangeEvent.emptyNew() |
24 | self.vehicle = vehicle |
25 | self.settings = settings |
26 | |
27 | return self |
28 | end |
readStream
DescriptionCalled on client side on joinDefinition
readStream(integer streamId, integer connection)Arguments
integer | streamId | streamId |
integer | connection | connection |
34 | function VehicleSettingsChangeEvent:readStream(streamId, connection) |
35 | local vehicle = NetworkUtil.readNodeObject(streamId) |
36 | local numSettings = streamReadUInt8(streamId) |
37 | |
38 | local isValid = vehicle ~= nil and vehicle:getIsSynchronized() |
39 | |
40 | for i=1, numSettings do |
41 | local index = streamReadUInt8(streamId) |
42 | |
43 | local state |
44 | if streamReadBool(streamId) then |
45 | state = streamReadBool(streamId) |
46 | else |
47 | state = streamReadUInt8(streamId) |
48 | end |
49 | |
50 | if isValid then |
51 | vehicle:setVehicleSettingState(index, state, true) |
52 | end |
53 | end |
54 | end |
run
DescriptionRun action on receiving sideDefinition
run(integer connection)Arguments
integer | connection | connection |
91 | function VehicleSettingsChangeEvent:run(connection) |
92 | end |
writeStream
DescriptionCalled on server side on joinDefinition
writeStream(integer streamId, integer connection)Arguments
integer | streamId | streamId |
integer | connection | connection |
60 | function VehicleSettingsChangeEvent:writeStream(streamId, connection) |
61 | NetworkUtil.writeNodeObject(streamId, self.vehicle) |
62 | |
63 | local numSettingsToSend = 0 |
64 | for i=1, #self.settings do |
65 | if self.settings[i].isDirty then |
66 | numSettingsToSend = numSettingsToSend + 1 |
67 | end |
68 | end |
69 | |
70 | streamWriteUInt8(streamId, numSettingsToSend) |
71 | |
72 | for i=1, #self.settings do |
73 | local setting = self.settings[i] |
74 | if setting.isDirty then |
75 | streamWriteUInt8(streamId, setting.index) |
76 | |
77 | if streamWriteBool(streamId, setting.isBool) then |
78 | streamWriteBool(streamId, setting.state) |
79 | else |
80 | streamWriteUInt8(streamId, setting.state) |
81 | end |
82 | |
83 | setting.isDirty = false |
84 | end |
85 | end |
86 | end |