ルーム一覧の取得

目次

  概要
  事前設定
  MonobitEngine.MonobitNetwork.GetRoomData メソッド
  関連する接続コールバック


概要

ロビーに紐づけられた、ルーム情報の一覧を取得します

  ロビーに紐づけられて作成されている、ルーム情報の一覧を取得する機能です。

  ロビーにつきましては こちら を御覧ください。
  ルームにつきましては こちら を御覧ください。


事前設定

MUNサーバに接続、かつロビーに入室している必要があります。

  ロビーに入室していない場合、ルーム一覧を取得することが出来ません。

ルームに入室している場合、ルーム退室までの間、入室以降に起きたロビー内のルーム更新情報は一切取得できません。

  ルーム一覧はあくまで「ロビーにいて、ルーム未入室のプレイヤー」に対して通知されます。
  ルームに入室しているクライアントから、別のルームの状態について、リアルタイムな情報を取得することは出来ません。
例えば、3クライアント(A, B, C)が同一のロビーに入室&ルーム未入室の状態にあり、以下の手順でルームに入室したとします。
 
 ① クライアントA がルームαを作成&ルームαに入室する。
 ② クライアントB がルームβを作成&ルームβに入室する。
 ③ クライアントC がルームαに入室する。

このとき、

 ・クライアントAからルーム一覧情報の取得を実行した場合、ルームα, βの情報は取得できません。
  以降、ルーム退室までのルームの変化について、ルームα, βを含むすべてのリアルタイムなルーム更新情報は取得できません。

 ・クライアントBからルーム一覧情報の取得を実行した場合、ルームαの情報は取得できますが、ルームαのルーム内プレイヤー数は1と表示されます。
  (ルームβ入室後に起きたルームの更新情報、すなわち、クライアントCがルームαに入室した情報を取得できません)
  以降、ルーム退室までのルームの変化について、ルームα, βを含むすべてのリアルタイムなルーム更新情報は取得できません。

 ・クライアントCからルーム一覧情報の取得を実行した場合、ルームα, βの情報は取得できますが、ルームα, βともに、ルーム内プレイヤー数は1と表示されます。
  以降、ルーム退室までのルームの変化について、ルームα, βを含むすべてのリアルタイムなルーム更新情報は取得できません。


MonobitEngine.MonobitNetwork.GetRoomData メソッド

機能

  現在入室しているロビーに紐づけられている、ルーム情報の一覧を取得します。

引数

変数名 内容
- - -

戻り値

内容
RoomData[] ルーム情報の一覧を配列情報で取得します。
なお、RoomData は以下のプロパティを持ちます。
変数名 内容
string name ルーム名
int maxPlayers 入室可能なプレイヤー人数の上限値
(無制限の場合には 0 を示します)
int playerCount 現在入室しているプレイヤーの人数
bool open そのルームに入室可能かどうかを示すフラグ
(入室可能であれば true, 入室不可能であれば false を示します)
bool visible MonobitNetwork.GetRoomData() による一覧取得が可能かどうかを示すフラグ
(GetRoomData の実行結果として取得することになるため、この戻り値内では常に true を示します)
bool isLocalClientInside 自分自身がそのルームに入室済み、または入室リクエストを送信している状態であるかどうかを示すフラグ
(入室済み or 入室リクエスト送信済みであれば true, 未入室 or 退室リクエスト送信済みであれば false を示します)
Hashtable customParameters ルームパラメータ
string[] parametersLIstedInLobby ロビーから入室する際の検索条件となるルームパラメータのキー

記述例

// ルーム一覧の情報を表示します。
foreach (RoomData info in MonobitEngine.MonobitNetwork.GetRoomData())
{
	Debug.Log(" Room Name : " + info.name);
	Debug.Log(" Players in Room : " + info.playerCount);
	Debug.Log(" Limit of Players : " + info.maxPlayers);
	Debug.Log(" Room is Open ? : " + ((info.open) ? "true" : "false"));
}


関連する接続コールバック

ルーム一覧情報が更新される際にコールバックされるメソッド

  このメソッドに関連して、以下の接続コールバックがあります。
  (接続コールバックについては こちら を参照してください。)
OnReceivedRoomListUpdate メソッド MUNサーバより、ルームの一覧の更新を受信した際に呼び出されます。