ロビーを実装する方法¶
ロビーを作るにはルームを作る必要があります。
まず、ルームとメンバープロパティが必要です。これらはプロパティマップを使用して構成します。
このブループリントは、ロビーの実装に必要なプロパティ値を設定するルームのプロパティマップを初期化します。
key1 - ルームがランク戦を行うかどうかを定義します。0はランク戦、1は非ランク戦を意味します。
key2 - ルームメンバーの平均スキルレベルです。
ここでは、現在のメンバープロパティマップを初期化します。nameプロパティの他に、stateプロパティの初期値も設定しています。stateプロパティは、メンバーの準備状態を保持します。0は準備ができておらず、1は準備ができていることを意味します。
注釈
どんな値を使用することもできますが、カスタムプロパティは検索できないことに注意してください。例えば、ルームを探す際にこの情報を利用できるようにする場合は、key1~key8のうちどれかの値を使用することになるでしょう。
これらのプロパティマップをCreate Node Room関数に渡します。これはランダムなノードにルームを作成します。
ルームを作成する前に、マスターサーバーへの接続を確立する必要があります。クライアントは、ルームの作成に成功すると作成したルームに自動的に参加します。そのクライアントがルームオーナーの権限を持ちます。つまり、ルーム情報を更新したり、他のメンバーをキックしたりする権限が与えられます。
ルームオーナーがゲームを始める準備ができたら、その状態を準備完了状態に設定する必要があります。これは、次のブループリントを使用して行います。
注釈
Setは既存のプロパティを上書きするため、必ずStrixの関数から受け取った既存のプロパティを含むメンバーを使用し、Set Property関数でそれを変更するようにしてください。
他のメンバーがルームに参加し全員の準備ができると、ゲームが開始します。このために、ルームオーナー以外のメンバーはJoin Node Room関数を使用してルームに参加します。全てのプレイヤーの準備ができるまで待つ方法で他のメンバーの待機に関する詳細をご覧ください。