メインコンテンツまでスキップ

API リファレンス

RS_RoomSystem スクリプトは、個々のルームのコアとなるスクリプトです。

以下は、RS_RoomSystem で利用可能な主要なパブリックメソッドのリファレンスです。独自のカスタムスクリプトを Room System と統合したい場合に役立ちます。


コアメソッド​

これらのメソッドは、ルームの状態の初期化、リセット、ネットワーク同期を処理します。

  • Initialize(byte roomNumber, RS_ConfigUI configUI): このルームの同期状態、プレイヤーリスト、および関連するユーザーインターフェースを初期化します。
  • Reset(): ルームのネットワーク設定とプレイヤーリストを、デフォルトの空の状態に復元します。
  • SyncRoomSystem(): 現在の状態からルームの UI を更新し、ルームのメンバーシップが変更されたときにローカルプレイヤーをテレポートします。

ゲッター​

これらのメソッドを使用して、ルームを変更せずに現在の状態を読み取ります。

  • GetIsLocked(): ルームがロックされているかどうかを取得します。ルームへの新規入室がロックされている場合に true を返します。
  • GetIsAnon(): ルームの UI でプレイヤー名が非表示になっているかどうかを取得します。匿名モードが有効な場合に true を返します。
  • GetIsNotDisturb(): ルームの応答不可(do-not-disturb)モードが有効かどうかを取得します。
  • GetEnteredRoom(): ローカルプレイヤーが現在このルーム内にいるとみなされているかどうかを取得します。
  • GetPlayersCount(): 現在このルームに割り当てられているプレイヤーの数を取得します。
  • IsPlayerInRoom(int playerId): プレイヤーがこのルームのメンバーとして登録されているかどうかを確認します。プレイヤーがルーム内にいる場合は true を、そうでない場合は false を返します。

セッターとアクション(ネットワーク同期)​

これらのメソッドを使用すると、ルームの状態を変更できます。Room System は手動同期モードに依存しているため、これらのメソッドのほとんどは、自動的にネットワークの所有権を取得し、変数を更新し、ネットワーク全体でのシリアライズを要求します。

  • SetIsLocked(bool state): ルームのロック状態を設定し、所有権を取得して、変更を同期します。
  • SetIsAnon(bool state): 匿名モードを設定し、所有権を取得して、変更を同期します。
  • SetIsNotDisburb(bool state): 応答不可モードを設定し、所有権を取得して、変更を同期します。
  • SetRoomText(string text): ルームに表示されるテキストを設定し、所有権を取得して、変更を同期します。
  • SetRoomNumber(byte value): このルームのローカル識別子を設定します。
  • AddPlayer(int playerId): プレイヤーをルームに追加し、プレイヤー数を更新して、変更を同期します。
  • RemovePlayer(int playerId): プレイヤーをルームから削除し、ルームが空になったときに依存するシステムをリセットします。