- Introduce a canvas-based audio visualizer overlay on opponent portraits that activates during speech playback - Update `SpeechQueue` to support `onStart` and `onEnd` callbacks for hooking into audio events - Modify `Portrait` to trigger the visualizer with emotion-specific colors (blue for intro, green for happy, red for upset) - Add `speech` metadata to `opponents.json` for Ethel and Bernie, defining available intro/happy/upset audio clips - Ensure proper cleanup of visualizer state and resources on portrait destruction |
||
|---|---|---|
| .. | ||
| auth | ||
| db | ||
| games | ||
| history | ||
| profile | ||
| config.js | ||
| index.js | ||