Add emit initial delay option for widget audio emit

This commit is contained in:
Jage9
2026-02-28 03:21:55 -05:00
parent 3bd4f35653
commit 294ccfa902
8 changed files with 44 additions and 2 deletions

View File

@@ -161,6 +161,7 @@
"emitVolume": 100,
"emitSoundSpeed": 50,
"emitSoundTempo": 50,
"emitInitialDelay": 0,
"emitLoopDelay": 0,
"emitEffect": "off",
"emitEffectValue": 50,
@@ -177,6 +178,7 @@
- `emitVolume`: integer, range `0-100`, default `100`.
- `emitSoundSpeed`: integer, range `0-100`, default `50`; controls emitted sound speed/pitch (`0=0.5x`, `50=1.0x`, `100=2.0x`).
- `emitSoundTempo`: integer, range `0-100`, default `50`; controls emitted sound tempo (`0=0.5x`, `50=1.0x`, `100=2.0x`).
- `emitInitialDelay`: number, range `0-300`, precision `0.1`, default `0`; delay in seconds before emitted audio starts after enable.
- `emitLoopDelay`: number, range `0-300`, precision `0.1`, default `0`; delay in seconds between each emitted playback.
- `emitEffect`: one of `reverb | echo | flanger | high_pass | low_pass | off`, default `off`.
- `emitEffectValue`: number, range `0-100`, precision `0.1`, default `50`.

View File

@@ -141,6 +141,7 @@ This is behavior-focused documentation for item types and their defaults.
- `emitVolume=100`
- `emitSoundSpeed=50`
- `emitSoundTempo=50`
- `emitInitialDelay=0`
- `emitLoopDelay=0`
- `emitEffect="off"`
- `emitEffectValue=50`
@@ -154,6 +155,7 @@ This is behavior-focused documentation for item types and their defaults.
- `directional=false`
- `emitSoundSpeed=50`
- `emitSoundTempo=50`
- `emitInitialDelay=0`
- `emitLoopDelay=0`
### Use
@@ -167,6 +169,7 @@ This is behavior-focused documentation for item types and their defaults.
- `emitVolume`: integer `0..100`
- `emitSoundSpeed`: integer `0..100` (`0=0.5x`, `50=1.0x`, `100=2.0x`) for speed/pitch
- `emitSoundTempo`: integer `0..100` (`0=0.5x`, `50=1.0x`, `100=2.0x`) for tempo
- `emitInitialDelay`: number `0..300` with `0.1` step/precision; delay in seconds before emitted audio starts after enable
- `emitLoopDelay`: number `0..300` with `0.1` step/precision; delay in seconds between each emitted loop playback
- `emitEffect`: `reverb | echo | flanger | high_pass | low_pass | off`
- `emitEffectValue`: number `0..100` with `0.1` precision

View File

@@ -100,7 +100,7 @@ This is a behavior guide for packet semantics beyond raw schemas.
- `itemTypes[].capabilities`: server-declared actions supported by the type
- `itemTypes[].editableProperties`: editable property keys by item type
- `itemTypes[].propertyMetadata`: property-level metadata (`valueType`, optional `label`, optional `range`, optional `tooltip`, optional `maxLength`, optional `options`, optional `visibleWhen`)
- `itemTypes[].globalProperties`: non-editable global values (`useSound`, `emitSound`, `useCooldownMs`, `emitRange`, `directional`, `emitSoundSpeed`, `emitSoundTempo`, `emitLoopDelay`)
- `itemTypes[].globalProperties`: non-editable global values (`useSound`, `emitSound`, `useCooldownMs`, `emitRange`, `directional`, `emitSoundSpeed`, `emitSoundTempo`, `emitInitialDelay`, `emitLoopDelay`)
- `adminMenu.actions`: server-authored admin root menu labels/ordering for the authenticated user.
- Client item UI requires this metadata from the server; there is no fallback item definition map.
- Client property help/type rendering is metadata-driven; it does not infer fallback types/tooltips from hardcoded key heuristics.