Skip to content

Commit e2e0348

Browse files
committed
Removed fillLevelObjectChanges and fillLevelSound from DischargeNode
1 parent fe1beb2 commit e2e0348

3 files changed

Lines changed: 0 additions & 130 deletions

File tree

docs/DISCHARGE_NODE.md

Lines changed: 0 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
# Table of contents
2-
3-
- [Custom discharge node](#custom-discharge-node)
4-
- [Fill level object changes](#fill-level-object-changes)
5-
- [Fill level sound](#fill-level-sound)
6-
71
## Custom discharge node
82

93
```
@@ -77,73 +71,3 @@ Material Processor relies on using custom discharge nodes to enchance functional
7771
</materialProcessor>
7872
</vehicle>
7973
```
80-
81-
## Fill level object changes
82-
83-
```
84-
vehicle.materialProcessor.dischargeNodes.node(%).fillLevelObjectChanges
85-
```
86-
87-
Trigger object changes based on the fill level percentage.
88-
89-
### Attributes
90-
| Name | Type | Required | Default | Description |
91-
|-----------|-------|----|-----------|------------------------------|
92-
| threshold | float | No | ```0.5```| Defines at which fillUnit fill level percentage the object changes |
93-
94-
95-
### Example
96-
```xml
97-
<?xml version="1.0" encoding="utf-8" standalone="no"?>
98-
<vehicle>
99-
<materialProcessor type="split">
100-
<configurations>
101-
...
102-
</configurations>
103-
104-
<dischargeNodes>
105-
<node node="dischargeNodeSideR" emptySpeed="100" fillUnitIndex="4" unloadInfoIndex="1">
106-
...
107-
<fillLevelObjectChanges threshold="0.85">
108-
<objectChange node="alarmBeacon" visibilityActive="true" visibilityInactive="false" />
109-
</fillLevelObjectChanges>
110-
</node>
111-
</dischargeNodes>
112-
</materialProcessor>
113-
</vehicle>
114-
```
115-
116-
## Fill level sound
117-
118-
```
119-
vehicle.materialProcessor.dischargeNodes.node(%).fillLevelSound
120-
```
121-
122-
Play sound depending on the fill level percentage.
123-
Same as a normal vehicle sample entry, but with additional attributes.
124-
125-
### Attributes
126-
| Name | Type | Required | Default | Description |
127-
|-----------|-------|----|-----------|------------------------------|
128-
| threshold | float | No | ```0.5```| Defines at which fillUnit fill level percentage the sound is triggered |
129-
| thresholdIsGreater | boolean | No | ```true``` | If true the sound is triggered above threshold, if not then below threshold |
130-
| enabledIfNotProcessing | boolean | No | ```true``` | Determine whether sound can be played if the processor is active or not |
131-
132-
### Example
133-
```xml
134-
<?xml version="1.0" encoding="utf-8" standalone="no"?>
135-
<vehicle>
136-
<materialProcessor type="split">
137-
<configurations>
138-
...
139-
</configurations>
140-
141-
<dischargeNodes>
142-
<node node="dischargeNodeSideR" emptySpeed="100" fillUnitIndex="4" unloadInfoIndex="1">
143-
...
144-
<fillLevelSound threshold="0.9" template="rollbeltAlarm" linkNode="alarmSoundNode" />
145-
</node>
146-
</dischargeNodes>
147-
</materialProcessor>
148-
</vehicle>
149-
```

scripts/DischargeNode.lua

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,6 @@
4444
---@field dischargeStateSamples table
4545
---@field turnOffSoundTimer? number
4646
---@field stateObjectChanges? table
47-
---@field fillLevelObjectChanges? table
48-
---@field fillLevelObjectChangeThreshold number
4947
---@field isAsyncRaycastActive boolean
5048
---@field raycastDischargeObject? table
5149
---@field raycastDischargeHitObject? table
@@ -63,10 +61,6 @@
6361
---@field distanceObjectChangeThreshold number
6462
---@field lineOffset number
6563
---@field playSound boolean
66-
---@field fillLevelSoundThreshold number
67-
---@field fillLevelSoundThresholdIsGreater boolean
68-
---@field fillLevelSoundEnabledIfNotProcessing boolean
69-
---@field fillLevelSample? table
7064
---
7165
---@field canFillOwnVehicle boolean
7266
---@field canDischargeToVehicle boolean
@@ -118,19 +112,13 @@ function DischargeNode.registerXMLPaths(schema, key)
118112
schema:register(XMLValueType.FLOAT, key .. ".distanceObjectChanges#threshold", "Defines at which raycast distance the object changes", 0.5)
119113
ObjectChangeUtil.registerObjectChangeXMLPaths(schema, key .. '.distanceObjectChanges')
120114
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")
123115

124116
-- Discharge effects, animations
125117
schema:register(XMLValueType.NODE_INDEX, key .. '#soundNode', 'Sound node index path')
126118
schema:register(XMLValueType.BOOL, key .. '#playSound', 'Whether to play sounds', true)
127119
EffectManager.registerEffectXMLPaths(schema, key .. ".effects")
128120
SoundManager.registerSampleXMLPaths(schema, key, "dischargeSound")
129121
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)
134122
schema:register(XMLValueType.BOOL, key .. ".dischargeSound#overwriteSharedSound", "Overwrite shared discharge sound with sound defined in discharge node", false)
135123
AnimationManager.registerAnimationNodesXMLPaths(schema, key .. ".animationNodes")
136124
AnimationManager.registerAnimationNodesXMLPaths(schema, key .. ".effectAnimationNodes")
@@ -180,7 +168,6 @@ function DischargeNode:delete()
180168
g_effectManager:deleteEffects(self.effects)
181169
g_soundManager:deleteSample(self.sample)
182170
g_soundManager:deleteSample(self.dischargeSample)
183-
g_soundManager:deleteSample(self.fillLevelSample)
184171
g_soundManager:deleteSamples(self.dischargeStateSamples)
185172
g_animationManager:deleteAnimations(self.animationNodes)
186173
g_animationManager:deleteAnimations(self.effectAnimationNodes)
@@ -483,12 +470,6 @@ function DischargeNode:updateTick(dt)
483470

484471
if self.isClient then
485472
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)
492473
end
493474

494475
if self.isServer then
@@ -920,26 +901,6 @@ function DischargeNode:updateDischargeInfo(x, y, z)
920901
end
921902
end
922903

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-
943904
---@param dt number
944905
function DischargeNode:updateDischargeSound(dt)
945906
local fillType = self:getDischargeFillType()

scripts/ProcessorUtils.lua

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -92,11 +92,6 @@ function ProcessorUtils.loadDischargeEffects(dischargeNode, xmlFile, key)
9292
dischargeNode.playSound = false
9393
end
9494

95-
dischargeNode.fillLevelSoundEnabledIfNotProcessing = xmlFile:getValue(key .. '.fillLevelSound#enabledIfNotProcessing', true)
96-
dischargeNode.fillLevelSoundThreshold = xmlFile:getValue(key .. '.fillLevelSound#threshold', 0.5)
97-
dischargeNode.fillLevelSoundThresholdIsGreater = xmlFile:getValue(key .. '.fillLevelSound#thresholdIsGreater', true)
98-
dischargeNode.fillLevelSample = g_soundManager:loadSampleFromXML(xmlFile, key, "fillLevelSound", dischargeNode.vehicle.baseDirectory, dischargeNode.vehicle.components, 0, AudioGroup.VEHICLE, dischargeNode.vehicle.i3dMappings, dischargeNode.vehicle)
99-
10095
dischargeNode.dischargeStateSamples = g_soundManager:loadSamplesFromXML(xmlFile, key, "dischargeStateSound", dischargeNode.vehicle.baseDirectory, dischargeNode.vehicle.components, 0, AudioGroup.VEHICLE, dischargeNode.vehicle.i3dMappings, dischargeNode.vehicle)
10196
dischargeNode.animationNodes = g_animationManager:loadAnimations(xmlFile, key .. ".animationNodes", dischargeNode.vehicle.components, dischargeNode.vehicle, dischargeNode.vehicle.i3dMappings)
10297
dischargeNode.effectAnimationNodes = g_animationManager:loadAnimations(xmlFile, key .. ".effectAnimationNodes", dischargeNode.vehicle.components, dischargeNode.vehicle, dischargeNode.vehicle.i3dMappings)
@@ -129,14 +124,4 @@ function ProcessorUtils.loadDischargeObjectChanges(node, xmlFile, key)
129124
else
130125
ObjectChangeUtil.setObjectChanges(node.stateObjectChanges, false, node.vehicle, node.vehicle.setMovingToolDirty)
131126
end
132-
133-
node.fillLevelObjectChanges = {}
134-
ObjectChangeUtil.loadObjectChangeFromXML(xmlFile, key .. '.fillLevelObjectChanges', node.fillLevelObjectChanges, node.vehicle.components, node.vehicle)
135-
136-
if #node.fillLevelObjectChanges == 0 then
137-
node.fillLevelObjectChanges = nil
138-
else
139-
node.fillLevelObjectChangeThreshold = xmlFile:getValue(key .. '.fillLevelObjectChanges#threshold', 0.5)
140-
ObjectChangeUtil.setObjectChanges(node.fillLevelObjectChanges, false, node.vehicle, node.vehicle.setMovingToolDirty)
141-
end
142127
end

0 commit comments

Comments
 (0)