プレイヤー管理パネルとテーマ
管理パネルは、セキュリティ担当者がすべてのプレイヤーのロールを閲覧・管理するための主要なインターフェースです。SS_SecuritySystemUI のカスタム Inspector によって編集時に一度だけ構築され、その配色は別の共有スクリプト SS_ConfigUI によって制御されます。
パネルについて
- ワールドに現在いるすべてのプレイヤーのライブ一覧で、それぞれ名前・プラットフォーム(VR または Desktop)・ロールごとのトグルを備えたカードとして表示されます。
- プレイヤー一覧を名前で絞り込む 検索ボックス があります — 空欄のままにすると全員が表示されます。
- プレイヤーの参加・退出や、誰かによるロールの変更に合わせて、再度開いたり更新したりする必要なく自動的に更新されます。
- 付与・剥奪の権限を現在持っていないプレイヤー(参照: セキュリティ権限)のロールをトグルしようとしても、単に元の状態に戻るだけです。
Adding & Removing Roles
このパネルは 完全にモジュール化 されており、Roles リストが変更されたときに手動で再構築する必要はありません。SS_RolesManagement でロールを追加すると、パネルは自動的にそれに合わせて拡張されます — 新しいロールの列が表示され、すべてのプレイヤーカードにそのための新しいトグルが追加されます。ロールを削除すると、同じ仕組みでパネルが縮小します。
この再構築が行われるのは、SS_SecuritySystemUI を保持している GameObject(プレハブ内では _securitySystemUI)の Inspector が開かれて再描画されている間だけです — これは編集時専用のツールであり、バックグラウンドで自動的に実行されるものではありません。ロールを追加・削除したら、必ずそのヒエラルキー内の GameObject を一度クリック して Inspector を再描画させ、パネルを再構築して変更を反映させてください。そうしないと、次にその Inspector がたまたま再描画されるまで、パネルには古いロールの列がそのまま表示され続けます。
テーマカラー
SS_ConfigUI には、パネル・プレイヤーカード・ロールの列全体で使用される 5 つの色があります。
| 色 | 用途 |
|---|---|
| Primary Color | メインのアクセントカラーです。 |
| Secondary Color | セカンダリのアクセントカラーです。 |
| Background Color | パネルの基本背景色です。 |
| Border Color | パネルとカードの境界線の色です。 |
| Theme Color | ワールドごとのアクセントカラーで、あなたのワールド自身の見た目に合わせて変更することを想定した色です — 他の 4 色は固定の構造的な色として扱われます。 |
各色には、それを適用する UI 要素の一覧もあります。SS_ConfigUI 自身の要素については直接配線されており、各 SS_PlayerCard / SS_RoleCard プレハブについては、カードが何度もインスタンス化されるため単一の要素リストを共有できないことから、それぞれ個別に配線されています。
SS_ConfigUI の色を変更すると、Unity Editor 上ですでに構築済みのすべてのプレイヤーカードとロールカードが即座に更新されます — 確認のために Play モードに入る必要はありません。これは通常、編集時に自動的に行われますが、色を変更するすべての方法(特にカラーピッカーウィンドウでのドラッグ操作)が確実にこれをトリガーするわけではありません。SS_ConfigUI の Inspector には、まさにこのようなケースのために、色フィールドの下に Apply Colors ボタンが用意されています — クリックすると、すでに構築済みのプレイヤーカード・ロールカードを含め、パネル全体にすべての色が強制的に適用されるため、色が確実に反映されるようにするにはこの方法が確実です。
カードのテーマの配線
プレイヤーカードとロールカードは編集時に一度だけ構築され、プレハブ自体には SS_ConfigUI への直接参照を持てません(プレハブアセットはシーンオブジェクトを参照できないため) — そのリンクは、SS_SecuritySystemUI のカスタム Inspector によって、SS_SecuritySystemUI の Config UI フィールドから、インスタンス化された各コピーに対して自動的に設定されます。同梱のプレハブにはこれがすでに配線済みの状態で入っているため、独自のカスタム構成でパネルを再構築する場合以外は、特に意識する必要はありません。