操作
機能 #412
完了
機能 #412:
Beatoraja側のステートごとにアバターの表示位置を移動させる
説明
ステートに応じてアバターの位置が変わったほうがいい
- MUSIC SELECT
- PLAY
- RESULT
の3つ?ほかにもあるっけ
操作
説明
ステートに応じてアバターの位置が変わったほうがいい
の3つ?ほかにもあるっけ
実装に着手しました。
feature/412
obs/avatar/)で状態フィードの phase(select/playing/result)に応じてペットの表示位置を切り替える。select=左下隅 / playing=右端中央 / result=中央やや右・下寄り(曲名とCHART INFOの間)。サイズは全ステート共通で位置のみ移動。対応が完了しました。
配信画面のステート(phase: select / playing / result)に応じて、アバター(obs/avatar/)の表示位置を画面内で自動的に移動させるようにした。各画面でゲームUI・スキン装飾を隠さない空き領域へアバターを寄せる。
phase を利用し、#app に data-phase 属性を付与して CSS transform: translate() で位置を切り替え(サイズは全ステート共通・位置のみ移動)。
select → 左下隅 / playing → 右端中央 / result → 中央やや右・下寄り(曲名とCHART INFOの間) / 未知・未設定 → 中央AvatarController.applyPhasePosition(phase) を追加。main.js は state.phase が含まれる時だけ適用し、部分state更新では現在位置を維持。--ease-glide(easeOutQuint 720ms)で滑らかに補間。prefers-reduced-motion 時は200msへ短縮。window.__avatar.getPhase() を追加、README に仕様を追記。obs/avatar/src/avatar.js / obs/avatar/src/main.js / obs/avatar/styles.css / obs/avatar/tests/app.spec.js / obs/avatar/README.md(計5件).\gradlew.bat test : 未実行(Java非変更のため対象外)npx playwright test(obs/avatar) : 9 passed(既存8 + 新規 phase テスト)styles.css の #app[data-phase=...] で可能。