プレイヤーカスタムパラメータ

目次

  概要
  事前設定
  MonobitEngine.MonobitNetwork.SetPlayerCustomParameters メソッド
  他プレイヤーのプレイヤーカスタムパラメータを取得するためには?


概要

プレイヤー(クライアント)のデータとして、ルーム内の他プレイヤー(クライアント)と共有させたい任意の情報群の設定

  プレイヤーカスタムパラメータは、プレイヤーの標準パラメータとは別に、プレイヤー(クライアント)の情報として、
  ルーム内のプレイヤー間で共有させたい、任意に設定可能な情報群です。

  考えられる要素としては、例えばプレイヤーの体力値などのゲーム固有のステータス情報や、クライアント個人のプロフィールに相当する情報などを指定し、
  ルーム内の他プレイヤーと情報共有させることができます。


事前設定

プレイヤーカスタムパラメータを「設定」するタイミングは、どのタイミングでも構わない。

  プレイヤーカスタムパラメータについては、任意のタイミングで設定することができます。

他プレイヤーと情報共有するためには、ルームに入室している必要がある。

  ただし、プレイヤーカスタムパラメータを他のプレイヤーと共有するためには、同一のルームに入室している必要があります。
  ルーム未入室の状態(例えば接続しただけ、ロビーに入室しているだけの状態)では、プレイヤーカスタムパラメータを他クライアントと共有させることが出来ません。

  情報共有手段として利用する際には、「ルームに入室している状態かどうか」に注意してください。


MonobitEngine.MonobitNetwork.SetPlayerCustomParameters メソッド

機能

  自身のプレイヤーカスタムパラメータについて変更を加えます。

  このメソッド自体の呼び出しは、MUNサーバへの接続状態やロビー/ルーム入室の是非を問わず、いつでも設定可能です。
  ただし、このメソッドで設定した情報は、自身がルームに入室していて、かつ、同一ルーム内にいるプレイヤー(クライアント)に対してのみ共有可能です。

引数

変数名 内容
Hashtable playerParameters 更新・設定・同期するプレイヤーカスタムパラメータのハッシュテーブルを設定します。

戻り値

内容
void -

記述例

// 自身のプレイヤーカスタムパラメータとして、「HitPoint」(体力)を、値「100」として設定します。
Hashtable customParams = new Hashtable();
customParams["HitPoint"] = 100;
MonobitEngine.MonobitNetwork.SetPlayerCustomParameters( customParams );


他プレイヤーのプレイヤーカスタムパラメータを取得するためには?

同一ルームに所属しているプレイヤー情報から、プレイヤーカスタムパラメータを取得する。

  プレイヤーカスタムパラメータは、同一ルームに所属しているプレイヤーに対してのみ、
  MonobitEngine.MonobitNetwork.playerList プロパティ を利用することで取得することが出来ます。

  例えば上記で触れた「HitPoint」について、以下のように実装すれば、
  ルーム内の全プレイヤーの「HitPoint」の情報を取得することができます。
// 同一ルーム内に所属している全プレイヤーの HitPoint を表示します。
if( MonobitEngine.MonobitNetwork,isRoom )
{
    foreach( MonobitEngine.MonobitPlayer player in MonobitEngine.MonobitNetwork.playerList )
    {
        Debug.Log( "PlayerName : " + player.name + ", HitPoint : " + player.customParameters["HitPoint"] );
    }
}