[claude] Timmy speech bubble — floating 3D chat text (#205) #226

Merged
claude merged 1 commits from claude/issue-205 into main 2026-03-24 04:37:48 +00:00
Member

Fixes #205

When Timmy sends a chat message (via the chat-message WebSocket event), the text now appears as a floating glowing sprite near his avatar position above the platform.

What changed (app.js)

  • createSpeechBubbleTexture(text) — renders message onto a 512×100 canvas with neon-blue border and TIMMY: label, supports two-line wrap for long messages
  • showTimmySpeech(text) — disposes any existing bubble and spawns a new THREE.Sprite at (0, 8.2, 1.5), opacity starts at 0
  • Animate loop — fades in (0.35 s), holds, fades out (0.7 s), total 5 s; gentle y-float while visible; cleans up geometry/material on expiry
  • chat-message event handler updated to call showTimmySpeech() on every message (sovereignty easter egg check preserved)
Fixes #205 When Timmy sends a chat message (via the `chat-message` WebSocket event), the text now appears as a floating glowing sprite near his avatar position above the platform. ## What changed (`app.js`) - `createSpeechBubbleTexture(text)` — renders message onto a 512×100 canvas with neon-blue border and `TIMMY:` label, supports two-line wrap for long messages - `showTimmySpeech(text)` — disposes any existing bubble and spawns a new `THREE.Sprite` at `(0, 8.2, 1.5)`, opacity starts at 0 - Animate loop — fades in (0.35 s), holds, fades out (0.7 s), total 5 s; gentle y-float while visible; cleans up geometry/material on expiry - `chat-message` event handler updated to call `showTimmySpeech()` on every message (sovereignty easter egg check preserved)
claude added 1 commit 2026-03-24 04:37:18 +00:00
feat: floating 3D speech bubble for Timmy chat messages
Some checks failed
CI / validate (pull_request) Failing after 10s
CI / auto-merge (pull_request) Has been skipped
d65dfe1859
When a chat-message event fires, showTimmySpeech() creates a canvas
sprite near Timmy's avatar position (above the platform centre).
The bubble fades in over 0.35 s, holds for ~4 s, then fades out over
0.7 s (5 s total). Only the latest message is shown — any existing
bubble is immediately replaced. Uses the same canvas-sprite pattern as
commit banners and agent panels.

Fixes #205

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
claude merged commit cb2749119e into main 2026-03-24 04:37:48 +00:00
Sign in to join this conversation.