|
44 | 44 | ---@field dischargeStateSamples table |
45 | 45 | ---@field turnOffSoundTimer? number |
46 | 46 | ---@field stateObjectChanges? table |
47 | | ----@field fillLevelObjectChanges? table |
48 | | ----@field fillLevelObjectChangeThreshold number |
49 | 47 | ---@field isAsyncRaycastActive boolean |
50 | 48 | ---@field raycastDischargeObject? table |
51 | 49 | ---@field raycastDischargeHitObject? table |
|
63 | 61 | ---@field distanceObjectChangeThreshold number |
64 | 62 | ---@field lineOffset number |
65 | 63 | ---@field playSound boolean |
66 | | ----@field fillLevelSoundThreshold number |
67 | | ----@field fillLevelSoundThresholdIsGreater boolean |
68 | | ----@field fillLevelSoundEnabledIfNotProcessing boolean |
69 | | ----@field fillLevelSample? table |
70 | 64 | --- |
71 | 65 | ---@field canFillOwnVehicle boolean |
72 | 66 | ---@field canDischargeToVehicle boolean |
@@ -118,19 +112,13 @@ function DischargeNode.registerXMLPaths(schema, key) |
118 | 112 | schema:register(XMLValueType.FLOAT, key .. ".distanceObjectChanges#threshold", "Defines at which raycast distance the object changes", 0.5) |
119 | 113 | ObjectChangeUtil.registerObjectChangeXMLPaths(schema, key .. '.distanceObjectChanges') |
120 | 114 | ObjectChangeUtil.registerObjectChangeXMLPaths(schema, key .. ".stateObjectChanges") |
121 | | - schema:register(XMLValueType.FLOAT, key .. '.fillLevelObjectChanges#threshold', 'Defines at which fillUnit fill level percentage the object changes', 0.5) |
122 | | - ObjectChangeUtil.registerObjectChangeXMLPaths(schema, key .. ".fillLevelObjectChanges") |
123 | 115 |
|
124 | 116 | -- Discharge effects, animations |
125 | 117 | schema:register(XMLValueType.NODE_INDEX, key .. '#soundNode', 'Sound node index path') |
126 | 118 | schema:register(XMLValueType.BOOL, key .. '#playSound', 'Whether to play sounds', true) |
127 | 119 | EffectManager.registerEffectXMLPaths(schema, key .. ".effects") |
128 | 120 | SoundManager.registerSampleXMLPaths(schema, key, "dischargeSound") |
129 | 121 | SoundManager.registerSampleXMLPaths(schema, key, "dischargeStateSound(?)") |
130 | | - SoundManager.registerSampleXMLPaths(schema, key, 'fillLevelSound') |
131 | | - schema:register(XMLValueType.FLOAT, key .. '.fillLevelSound#threshold', '', 0.5) |
132 | | - schema:register(XMLValueType.BOOL, key .. '.fillLevelSound#thresholdIsGreater', '', true) |
133 | | - schema:register(XMLValueType.BOOL, key .. '.fillLevelSound#enabledIfNotProcessing', '', true) |
134 | 122 | schema:register(XMLValueType.BOOL, key .. ".dischargeSound#overwriteSharedSound", "Overwrite shared discharge sound with sound defined in discharge node", false) |
135 | 123 | AnimationManager.registerAnimationNodesXMLPaths(schema, key .. ".animationNodes") |
136 | 124 | AnimationManager.registerAnimationNodesXMLPaths(schema, key .. ".effectAnimationNodes") |
@@ -180,7 +168,6 @@ function DischargeNode:delete() |
180 | 168 | g_effectManager:deleteEffects(self.effects) |
181 | 169 | g_soundManager:deleteSample(self.sample) |
182 | 170 | g_soundManager:deleteSample(self.dischargeSample) |
183 | | - g_soundManager:deleteSample(self.fillLevelSample) |
184 | 171 | g_soundManager:deleteSamples(self.dischargeStateSamples) |
185 | 172 | g_animationManager:deleteAnimations(self.animationNodes) |
186 | 173 | g_animationManager:deleteAnimations(self.effectAnimationNodes) |
@@ -483,12 +470,6 @@ function DischargeNode:updateTick(dt) |
483 | 470 |
|
484 | 471 | if self.isClient then |
485 | 472 | self:updateDischargeSound(dt) |
486 | | - self:updateFillLevelSound(dt) |
487 | | - end |
488 | | - |
489 | | - if self.fillLevelObjectChanges ~= nil then |
490 | | - local fillLevelPct = self:getFillLevelPercentage() |
491 | | - ObjectChangeUtil.setObjectChanges(self.fillLevelObjectChanges, fillLevelPct > self.fillLevelObjectChangeThreshold, self.vehicle, self.vehicle.setMovingToolDirty) |
492 | 473 | end |
493 | 474 |
|
494 | 475 | if self.isServer then |
@@ -920,26 +901,6 @@ function DischargeNode:updateDischargeInfo(x, y, z) |
920 | 901 | end |
921 | 902 | end |
922 | 903 |
|
923 | | -function DischargeNode:updateFillLevelSound(dt) |
924 | | - if self.playSound and self.fillLevelSample == nil then |
925 | | - return |
926 | | - end |
927 | | - |
928 | | - local fillLevelPct = self:getFillLevelPercentage() |
929 | | - local playSample = (self.fillLevelSoundThresholdIsGreater and fillLevelPct > self.fillLevelSoundThreshold) or (not self.fillLevelSoundThresholdIsGreater and fillLevelPct < self.fillLevelSoundThreshold) |
930 | | - local isPlaying = g_soundManager:getIsSamplePlaying(self.fillLevelSample) |
931 | | - |
932 | | - if not self.fillLevelSoundEnabledIfNotProcessing and not self.vehicle:getIsProcessingEnabled() then |
933 | | - playSample = false |
934 | | - end |
935 | | - |
936 | | - if playSample and not isPlaying then |
937 | | - g_soundManager:playSample(self.fillLevelSample) |
938 | | - elseif not playSample and isPlaying then |
939 | | - g_soundManager:stopSample(self.fillLevelSample) |
940 | | - end |
941 | | -end |
942 | | - |
943 | 904 | ---@param dt number |
944 | 905 | function DischargeNode:updateDischargeSound(dt) |
945 | 906 | local fillType = self:getDischargeFillType() |
|
0 commit comments