feat: dash ability; ammo pressure scaling, full-HP hearts, muzzle alignment, holstered debug ammo
- Shift dash: 0.45*v*0.6 instant burst then 0.6s of 50% slow (net 95% of walking distance); slow doubles as cooldown, no dash while idle/slowed. - Generic ammo refills scale with the live pressure dial at 80% of the HP multiplier via ammoPressureMul(). - Hearts at full HP stay on the floor (magnet ignores them) instead of converting to score. - Muzzle audit: flame FX and pellets share one right-hand origin, Spinal Tap beam starts at the muzzle, saw flash suppressed (blade sparks are the effect). - Debug REFILL/INF AMMO and the ammo row now cover a spent special holstered behind the Bone Popper. - Sfx.duck() defaults its args; a no-arg call crashed the loop with a non-finite AudioParam value (found via the dash E2E).
This commit is contained in:
1 parent
684a54f5ad
commit
4b9e4a1e97
6 files changed
+49
-24
No files matched your search
@@ -77,7 +77,7 @@ const Sfx = {
|
||||
try { audio._sfxSource.disconnect(); } catch (e) {}
|
||||
// The owning Music entry is discarded immediately; never re-wrap this element.
|
||||
},
|
||||
duck(amount, duration) {
|
||||
duck(amount = 0.3, duration = 0.15) {
|
||||
if (!this.ctx || !this.duckGain || G.muted) return;
|
||||
const t = this.ctx.currentTime, gain = this.duckGain.gain;
|
||||
if (gain.cancelAndHoldAtTime) gain.cancelAndHoldAtTime(t);
|
||||
|
||||
Reference in new issue
Block a user