Photon Unity Networking  v1.67
Public Attributes | Properties | List of all members
RoomOptions Class Reference

Room作成時に必要な一般的Roomプロパティをまとめたものです。 More...

Public Attributes

byte maxPlayers
 Room内に存在できるプレイヤーの最大数。0は「制限なし」の意味です。 More...
 
int PlayerTtl
 Room内での「actor」の有効期間(TTL)。クライアントが回線切断したときこのactorは最初無効化され、このタイムアウトの後で削除されます。単位ミリ秒。 More...
 
Hashtable customRoomProperties
 セットできる、Roomのカスタムプロパティ。string型のキーを使ってください。 More...
 
string[] customRoomPropertiesForLobby = new string[0]
 ロビーで一覧表示されるRoomのカスタムプロパティを決めます。 More...
 
string[] plugins
 プラグインのセットアップを期待するかどうかの情報です。 More...
 

Properties

bool isVisible [get, set]
 ロビー内で、このRoomが一覧にあるかどうか決めます。もしないなら、このRoomはランダムに入室されません。 More...
 
bool isOpen [get, set]
 このRoomに入室できるかどうかを決めます。 More...
 
bool cleanupCacheOnLeave [get, set]
 最後のプレイヤーが退室してからの有効期間(TTL)。プレイヤーがすぐ再入室する場合のためメモリ上にRoomの残しておきます。単位ミリ秒。 More...
 
bool suppressRoomEvents [get]
 サーバーは、プレイヤーの入退室イベントをスキップするかを示します。 More...
 
bool publishUserId [get, set]
 プレイヤーのUserIDをルームに公開するかどうかを決めます。他のプレイヤーが一緒にプレイしたい場合に、FindFriendsで有用です。 More...
 

Detailed Description

Room作成時に必要な一般的Roomプロパティをまとめたものです。

これは、Roomクラスのフィールドに直接割り当てます。

Member Data Documentation

Hashtable RoomOptions.customRoomProperties

セットできる、Roomのカスタムプロパティ。string型のキーを使ってください。

Roomのカスタムプロパティはゲームのセットアップで定義する必要のある複数のキー&値です。 キーは短い方がよいです。 例: Map、Mode (「Map」と合わせて使うときはキーを「m」にできます)、TileSet (「t」にできます).

string [] RoomOptions.customRoomPropertiesForLobby = new string[0]

ロビーで一覧表示されるRoomのカスタムプロパティを決めます。

ロビー内で利用できるRoomのカスタムRoomプロパティを名付けます。 注意して使用してください。カスタムプロパティがマッチメイキングまたはユーザー情報に不可欠でないなら、 ロビーに送信されないほうがよいです。送信されると、ロビー内のクライアントの通信量増大と遅延の原因となります。

デフォルトは、どのカスタムプロパティもロビーに送信されません。

byte RoomOptions.maxPlayers

Room内に存在できるプレイヤーの最大数。0は「制限なし」の意味です。

int RoomOptions.PlayerTtl

Room内での「actor」の有効期間(TTL)。クライアントが回線切断したときこのactorは最初無効化され、このタイムアウトの後で削除されます。単位ミリ秒。

string [] RoomOptions.plugins

プラグインのセットアップを期待するかどうかの情報です。

このオペレーションはプラグインのミスマッチが起きた場合にエラーコードPluginMismatch 32757(0x7FFF - 10)が発生します。 string[]{}を設定すると、クライアントはプラグインの設定を期待しません。 注意: 後方互換性のため、nullのチェックを省略します。

Property Documentation

bool RoomOptions.cleanupCacheOnLeave
getset

最後のプレイヤーが退室してからの有効期間(TTL)。プレイヤーがすぐ再入室する場合のためメモリ上にRoomの残しておきます。単位ミリ秒。

ユーザーが退室したとき、Roomからユーザーのイベントとプロパティを削除します。

これに意味があるのは、Room内でプレイヤーがアイテムを配置できない場所を完全に消滅させるときです。 これが無効だと、Roomをずっと使用しているとイベント・ヒストリーが読み込めないほど長くなることが起きかねません。 デフォルトはtrueです。退室するユーザーのキャッシュとプロパティをクリーンアップします。

bool RoomOptions.isOpen
getset

このRoomに入室できるかどうかを決めます。

もしRoomが閉まっていたら、どのプレイヤーも入室できません。 これに意味がある例としては、3か4人のプレイヤーがゲームプレイを開始して、ゲーム中に誰も入室してほしくないときです。 Roomはまだロビー内で一覧できます。(isVisible設定でロビーで一覧にでてくるかコントロールできます)。

bool RoomOptions.isVisible
getset

ロビー内で、このRoomが一覧にあるかどうか決めます。もしないなら、このRoomはランダムに入室されません。

見えないRoomは、ロビーのクライアントから送信される、Room一覧から除外されます。 不可視Roomは名前で入室できますが、ランダム・マッチメイキングからは除外されます。

これを使ってRoomを「隠す」ことと「私室」のシミュレートができます。 プレイヤーはRoom名を変更することと、Roomを不可視にして他人に入室させないことができます。

bool RoomOptions.publishUserId
getset

プレイヤーのUserIDをルームに公開するかどうかを決めます。他のプレイヤーが一緒にプレイしたい場合に、FindFriendsで有用です。

これをtrueにセットすると、PhotonはプレイヤーのUserIDをルーム内に公開します。 この場合、PhotonPlayer.userIdとしてどのプレイヤーのUserIDにもアクセスできます。 これはFindFriendsに有用で、待機ユーザーとしてルームのスロットを予約するにも使えます。(PhotonNetwork.JoinRoomを参照)

bool RoomOptions.suppressRoomEvents
get

サーバーは、プレイヤーの入退室イベントをスキップするかを示します。

これを使うと、クライアントがRoom内の他プレイヤーに気づかなくなります。 これはプレイヤー更新のサーバーロジックによっては通信量をいくらか減らせますが、 クライアントの使い勝手を制限します。

これを使うとPUNは中断します。そのためこれはセットできません。

Online Documentation  -  Dashboard  -  Support Forum Exit Games GmbH