Go to file
Michael Mainguy 48ac74977f
All checks were successful
Build / build (push) Successful in 1m30s
Refactor: Move explosion sound to ExplosionManager
Moved explosion audio management from RockFactory to ExplosionManager for better separation of concerns and synchronized audio/visual effects.

Changes:
- ExplosionManager: Added audio support with sound pooling (5 instances)
  - New initAudio() method to load explosion sounds after audio unlock
  - Sound pool prevents concurrent explosion conflicts
  - Spatial audio synchronized with visual duration (1000ms)
  - Proper SoundState checking for available sounds

- RockFactory: Simplified by delegating audio to ExplosionManager
  - Removed _explosionSound and _audioEngine properties
  - initAudio() now delegates to ExplosionManager
  - Collision callback reduced from ~60 to ~30 lines
  - Fixed disposal order to prevent double-disposal errors

Benefits:
- Fixes concurrent explosion sound bug (multiple asteroids can explode simultaneously)
- Audio/visual timing synchronized (both use config.duration)
- Cleaner code organization (all explosion effects in one place)
- Proper disposal ordering prevents runtime errors

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-11 13:47:19 -06:00
.github/workflows increased heap space. 2025-10-28 12:01:29 -05:00
docs Add Blender export tooling and refactor asset structure 2025-11-06 12:25:34 -06:00
public Fix mesh rendering and CloudFlare proxy compatibility 2025-11-11 06:13:48 -06:00
scripts Add Blender export tooling and refactor asset structure 2025-11-06 12:25:34 -06:00
server Initial Commit 2025-02-15 11:19:24 -06:00
src Refactor: Move explosion sound to ExplosionManager 2025-11-11 13:47:19 -06:00
themes/default Fix explosion sound by migrating to AudioEngineV2 spatial audio API 2025-11-09 16:05:40 -06:00
.gitignore Initial Commit 2025-02-15 11:19:24 -06:00
CLAUDE.md Refactor asteroid scaling and reorganize assets 2025-11-10 12:19:31 -06:00
CONTROLLER_THRUST.md Refactor ship controls to force-based physics with world-space transformations 2025-10-31 11:20:31 -05:00
index.html Fix mesh rendering and CloudFlare proxy compatibility 2025-11-11 06:13:48 -06:00
package-lock.json Add Discord widget integration with dynamic script loading 2025-11-10 17:53:27 -06:00
package.json Restructure codebase into logical subdirectories 2025-11-11 12:53:18 -06:00
tsconfig.json Initial Commit 2025-02-15 11:19:24 -06:00
vite.config.ts Fix mesh rendering and CloudFlare proxy compatibility 2025-11-11 06:13:48 -06:00