Monobit Unity Networking ver.2.8.0 Client API Reference
MonobitEngine.MonobitNetwork Class Reference

MonobitNetworkプラグインで使うためのメインクラスです More...

Inheritance diagram for MonobitEngine.MonobitNetwork:
Collaboration diagram for MonobitEngine.MonobitNetwork:

Static Public Member Functions

static void MonobitNetworkInitialize ()
 
static bool ConnectServer (string gameVersion, Hashtable customAuthData=null)
 Monobitサーバーに接続します。 More...
 
static GameObject OnInstantiateWithResources (string prefabName)
 Resources.Load() を実行してプレハブを生成します。 More...
 
static GameObject OnInstantiateWithAssetBundle (string assetBundlePath, string assetBundleName)
 AssetBundle.LoadAsset() を実行してプレハブを生成します。 More...
 
static void SetInstantiateWithResourcesHandle (InstantiateWithResourcesHandle handle)
 InstantiateWithResources のイベントハンドルの設定. More...
 
static void SetInstantiateWithAssetBundleHandle (InstantiateWithAssetBundleHandle handle)
 InstantiateWithAssetBundle のイベントハンドルの設定. More...
 
static bool AddAuthParameters (string key, string value)
 カスタム認証パラメータの追加. More...
 
static bool RemoveAuthParameters (string key)
 カスタム認証パラメータの削除. More...
 
static bool ConnectServerBase (string gameVersion, Hashtable customAuthData=null)
 Monobitサーバーに接続します。 More...
 
static void DisconnectServer ()
 サーバからネットワークを切断する More...
 
static bool SearchPlayers (string[] playerToSearch)
 指定したプレイヤー一覧に対し、ルーム入室状況とオンライン状況をリクエストします。 More...
 
static bool CreateRoom (string roomName)
 ルームの作成 More...
 
static bool CreateRoom (string roomName, RoomSettings roomSettings, LobbyInfo lobbyInfo)
 ルームの作成 More...
 
static bool JoinRoom (string roomName)
 指定されたルーム名でルームに入室する More...
 
static bool JoinOrCreateRoom (string roomName, RoomSettings roomSettings, LobbyInfo lobbyInfo)
 指定されたルーム名の部屋を検索し、入室します。 入室するルームが見つからなかった場合、指定された引数を元にルームを作成します。 More...
 
static bool JoinRandomRoom ()
 現存するロビー内にあるルームのいずれかに入室する More...
 
static bool JoinRandomRoom (Hashtable expectedCustomRoomParameters, UInt32 expectedMaxPlayers)
 現存するロビー内にあるルーム内のうち、指定されたルームパラメータとルーム収容最大人数を設定しているいずれかのルームに入室する More...
 
static bool JoinRandomRoom (Hashtable expectedCustomRoomParameters, UInt32 expectedMaxPlayers, MatchmakingMode matchingType, LobbyInfo lobbyInfo=null, string queryLobbyFilter=null)
 指定されたロビー内にあるルーム内のうち、指定されたルームパラメータとルーム収容最大人数、 ならびにクエリーフィルターと一致するルームについて、指定されたマッチングアルゴリズムを用いて検索し入室する More...
 
static bool JoinLobby ()
 デフォルトのロビーに入ります。 More...
 
static bool JoinLobby (LobbyInfo lobbyInfo)
 サーバ上で任意のロビーを作成し、そのロビーに入室します。 More...
 
static bool LeaveLobby ()
 ロビーから退出します。 有効なルームリストについての更新について受信するのを停止します。 More...
 
static bool LeaveRoom ()
 現在のルームを退室して、ロビーに戻ります。 More...
 
static RoomData[] GetRoomData ()
 現在把握可能なルーム一覧情報をRoomData配列で取得します。 More...
 
static int AssignViewID ()
 現在使用している(またはローカルで使用している)プレイヤーに、 MonobitViewで使用される妥当なviewIDを割り当てます。 More...
 
static int AssignSceneViewID ()
 ホストにて、シーンオブジェクトにMonobitViewで使用される妥当なviewIDを出力します。 More...
 
static void UnassignViewID (int viewID)
 手動でインスタンス作成されて破棄するネットワーク上のオブジェクトに対し、viewIDの割り当てを解除します。 More...
 
static GameObject Instantiate (string prefabName, Vector3 position, Quaternion rotation, int group)
 インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します More...
 
static GameObject Instantiate (InstantiateType loadType, string prefabName, Vector3 position, Quaternion rotation, int group)
 インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します More...
 
static GameObject Instantiate (string prefabName, Vector3 position, Quaternion rotation, int group, object[] data, bool isDontDestroyOnLoad, bool isMine, bool isDontDestroyOnRoom)
 インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します More...
 
static GameObject Instantiate (InstantiateType loadType, string prefabName, Vector3 position, Quaternion rotation, int group, object[] data, bool isDontDestroyOnLoad, bool isMine, bool isDontDestroyOnRoom)
 インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します More...
 
static bool SendStream ()
 他のクライアントに対し、即座にRPC送信やInstantiate()を呼び出させるのに使います。 More...
 
static bool Kick (MonobitPlayer kickPlayer)
 クライアントに回線切断をリクエストします。 More...
 
static bool ChangeHost (MonobitPlayer hostPlayer)
 サーバに依頼して、別のプレイヤーを現在のルームのホストに割り当ててもらいます。 More...
 
static void Destroy (MonobitView targetView)
 指定されたMonobitViewが静的オブジェクトでないか、このクライアントが所有権を持っている場合、 GameObjectとそれに関連したMonobitViewをネットワーク上から破棄します。 More...
 
static void Destroy (GameObject targetGo)
 指定されたMonobitViewが静的オブジェクトでないか、このクライアントが所有権を持っている場合、 GameObjectとそれに関連したMonobitViewをネットワーク上から破棄します。 More...
 
static void DestroyPlayer (MonobitPlayer targetPlayer)
 指定したプレイヤーが所有しているGameObject、MonobitViewまたそれらの発したRPCをすべてネットワーク上から破棄します。 この関数をコールできるのは、ローカルプレイヤー(自身に向けて)、またはホスト(全クライアントに向けて)です。 More...
 
static void DestroyPlayer (int targetPlayerId)
 指定したプレイヤーが所有しているGameObject、MonobitViewまたそれらの発したRPCをすべてネットワーク上から破棄します。 この関数をコールできるのは、ローカルプレイヤー(自身に向けて)、またはホスト(全クライアントに向けて)です。 More...
 
static void DestroyAll ()
 ルーム内の全てのGameObject、MonobitView、また、それらの発したRPCをすべてネットワーク上から破棄します。 サーバにバッファリングされたルーム情報のすべてを削除します。 More...
 
static void RemoveRPCs (MonobitPlayer targetPlayer)
 指定されたプレイヤーによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。 More...
 
static void RemoveRPCs (MonobitView targetMonobitView)
 指定されたプレイヤーによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。 More...
 
static void RemoveRPCsInGroup (int targetGroup)
 指定されたグループIDによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。 More...
 
static void CleanupMunHideInHierarchyObject ()
 MUN内部で生成している、ネットワーク通信のために必要とされる隠しオブジェクトのクリーンアップを実行します. More...
 
static void SetPlayerCustomParameters (Hashtable playerParameters)
 自身のプレイヤーパラメータを設定して、他のプレイヤーにも同期します。 More...
 
static void SetReceivingEnabled (int group, bool enabled)
 指定されたグループに属するMonobitViewオブジェクトの受信の可否を決定する。 More...
 
static void SetReceivingEnabled (int[] enableGroups, int[] disableGroups)
 指定されたグループに属するMonobitViewオブジェクトの受信の可否を決定する More...
 
static void SetSendingEnabled (int group, bool enabled)
 指定されたグループに属するMonobitViewオブジェクトの送信の可否を決定する。 More...
 
static void SetSendingEnabled (int[] enableGroups, int[] disableGroups)
 指定されたグループに属するMonobitViewオブジェクトの送信の可否を決定する。 More...
 
static void SetLevelPrefix (short prefix)
 レベルプリフィックスの設定 これ以降インスタンス生成されるMonobitViewに設定されるレベルプリフィックス(monobitView.prefix)をセットします More...
 
static void LoadLevel (object level)
 シーンのロード(object版) More...
 

Static Public Attributes

static readonly int PERSONAL_VIEW_ID_MAX = 1000
 MUNクライアント1単位当たりで使用できる、割り当て可能なViewIDの登録最大数. More...
 
static string internalMUNVersion = "2.0"
 MUNのバージョン。MUNサーバ認証時に使用する. More...
 
static MonobitLogLevel logLevel = MonobitLogLevel.ErrorsOnly
 ログ出力レベル. More...
 
static bool UseRpcCache = false
 RPCキャッシュ機能を利用するかどうかのフラグ. More...
 
static int maxConnections
 旧UnityNetworkingにおける、ルーム接続最大数の設定値。 旧UnityNetworkingの互換のために用意されているもので、MUNでは使用しない. More...
 
static List< Type > SendMonoMessageTargetTypes = new List<Type>() { typeof(MonobitEngine.MonoBehaviour) }
 UnityでのSendMessageを送り付けるタイプ More...
 
static Type SendMonoMessageTargetType = typeof(MonobitEngine.MonoBehaviour)
 この変数はObsoleteです。SendMonoMessageTargetTypes を利用してください。 More...
 

Properties

static bool autoSyncScene [get, set]
 ルーム内の全クライアントが、ホストと同じゲームシーンをロードすべきかを決めます。 More...
 
static string ActiveSceneName [get]
 現在動作しているシーンのファイル名を取得します。 More...
 
static int ActiveSceneBuildIndex [get]
 現在動作しているシーンのインデックスを取得します。 More...
 
static string gameVersion [get, set]
 クライアントのバージョン情報 More...
 
static MonobitLogLevel LogLevel [get, set]
 ログ出力レベルの設定 More...
 
static string ServerAddress [get]
 現在使用しているサーバのアドレス. More...
 
static Hashtable CustomAuthParameters [get]
 カスタム認証パラメータの取得. More...
 
static string CustomAuthResultRaw [get]
 カスタム認証結果の生データの取得. More...
 
static bool isConnect [get]
 接続しているかの判定 More...
 
static bool isConnecting [get]
 接続中かの判定 More...
 
static bool isConnectReady [get]
 サーバー接続中&入退室ができる状態かの判定 More...
 
static ConnectionState connectionState [get]
 クライアント側の接続状態判定 More...
 
static PeerState connectionStateDetailed [get]
 接続状態の詳細を取得する More...
 
static bool isInstantiateInRoom [get, set]
 trueの場合、Instantiate()関数をコールすると、入室中かどうかをチェックします。 ルームに入室中でなければ、Instantiate() は失敗します。 More...
 
static bool isUsePrefabCache [get, set]
 true ならば、インスタンス生成時にMonobitNetwork.PrefabCacheを使い、GameObjectをメモリ内に保持します。 More...
 
static Dictionary< string, GameObject > PrefabCache [get, set]
 GameObjectの参照を、参照回数の多いインスタンス作成のためにメモリ上に保持します。 More...
 
static Room room [get]
 現在入室しているルームの情報 More...
 
static MonobitPlayer player [get]
 ローカルユーザーのMonobitPlayer More...
 
static MonobitPlayer host [get]
 現在入室しているルームのホストの情報 More...
 
static string playerName [get, set]
 プレイヤーのニックネームです。入室したルーム内の全員に同期します。 More...
 
static MonobitPlayer[] playerList [get]
 MonobitPlayerの一覧です。 More...
 
static MonobitPlayer[] otherPlayersList [get]
 ローカルプレイヤーを含まない、他のクライアントのMonobitPlayerの一覧です。 More...
 
static List< SearchPlayerDataSearchPlayerList [get, set]
 検索ユーザー一覧情報です。 More...
 
static int SeaechPlayersElapsedTime [get]
 検索ユーザー一覧情報の古さ。 More...
 
static bool offline [get, set]
 オフラインモードの設定です。 More...
 
static string AssetBundlePath [get, set]
 AssetBundleのパス. More...
 
static int[] AllowReceivingGroup [get]
 受信許可リスト. More...
 
static int[] BlockSendingGroup [get]
 受信拒否リスト. More...
 
static bool autoRemoveInLeftRoom [get, set]
 退室するプレイヤーにインスタンス生成されたGameObject/MonobitViewについて、ルーム内のプレイヤーが破棄すべきかどうかを決めます。 More...
 
static bool autoJoinLobby [get, set]
 mun_masterサーバに接続した時、MonobitNetworkが「直前まで入室していたロビー」に再入室させるべきかを決めます。 直前まで入室していたロビーが存在しない場合、または初回接続の際には、デフォルトのロビーに参加させるべきかを決めます。 More...
 
static bool EnableGetLobbyData [get, set]
 mun_masterサーバから有効なロビー一覧情報を取得可能にします。 More...
 
static List< LobbyDataLobbyDataList [get]
 MonobitNetwork.EnableLobbyStatisticsがtrue のときに、mun_masterサーバから有効なロビーの情報を取得します。 More...
 
static bool inLobby [get]
 このクライアントがロビーに入室していればtrueになります。 More...
 
static LobbyInfo lobby [get, set]
 MUNがロビーに入るか、ルームを作成するときに使われるロビーの情報です。 More...
 
static int sendRate [get, set]
 MonobitNetworkがパケットを1秒間に何回送信するかを決めます。 More...
 
static int updateStreamRate [get, set]
 OnMonobitSerialize()による転送処理によって、MonobitViewが1秒間に何回送信処理を実行するかを決めます。 MonobitNetwork.sendRateと関連させて、この値を決めてください。 More...
 
static bool isMessageQueueRunning [get, set]
 受信イベント(RPC受信、インスタンス作成、その他受信するすべて)の送信を一時停止するのに使われます。 More...
 
static bool isHost [get]
 自身がホストであるかどうかのフラグ。 More...
 
static bool isLeader [get]
 自身がリーダーであるかどうかのフラグ。 More...
 
static bool inRoom [get]
 自身がルームに入室している場合、この値が true になります。 More...
 
static int clientCountInApplication [get]
 同一ネットワーク上に存在する、認証クライアントの数を取得します。 More...
 
static int clientCountInRoom [get]
 サーバに接続している同一認証クライアントのうち、ルームに接続しているユーザー数を取得します。 More...
 
static int clientCountInLobby [get]
 サーバに接続している同一認証クライアントのうち、ロビーに接続しているユーザー数を取得します。 More...
 
static int roomCountInLobby [get]
 現在使用されているルーム数を取得します。 More...
 
static IMunPrefabPool ObjectPool [get, set]
 オブジェクトプールの情報。 More...
 
static InstantiateWithResourcesHandle InstantiateWithResources [set]
 Resources.Load() によるプレハブ生成処理ルーチンの登録. More...
 
static InstantiateWithAssetBundleHandle InstantiateWithAssetBundle [set]
 AssetBundle.LoadAsset() によるプレハブ生成処理ルーチンの登録. More...
 

Detailed Description

MonobitNetworkプラグインで使うためのメインクラスです

Member Function Documentation

static bool MonobitEngineBase.MonobitNetwork.AddAuthParameters ( string  key,
string  value 
)
staticinherited

カスタム認証パラメータの追加.

Parameters
keyカスタム認証パラメータのキー.
valueカスタム認証パラメータの実値.
Returns
追加できたら true、追加できなければ false。
static int MonobitEngineBase.MonobitNetwork.AssignSceneViewID ( )
staticinherited

ホストにて、シーンオブジェクトにMonobitViewで使用される妥当なviewIDを出力します。

Returns
割り当てられたviewID
static int MonobitEngineBase.MonobitNetwork.AssignViewID ( )
staticinherited

現在使用している(またはローカルで使用している)プレイヤーに、 MonobitViewで使用される妥当なviewIDを割り当てます。

Returns
割り当てられたviewID
static bool MonobitEngineBase.MonobitNetwork.ChangeHost ( MonobitPlayer  hostPlayer)
staticinherited

サーバに依頼して、別のプレイヤーを現在のルームのホストに割り当ててもらいます。

Parameters
hostPlayer次のホストになるプレイヤー。
Returns
true:成功、false:失敗

ChangeHost() は、ルームに所属する全てのクライアントからリクエストを送信することが可能です。 運用の際にはみだりに変更できないよう、特定のクライアントのみこのメソッド実行可能にするなど、外側で条件分岐させることが望ましいと思われます。

static void MonobitEngineBase.MonobitNetwork.CleanupMunHideInHierarchyObject ( )
staticinherited

MUN内部で生成している、ネットワーク通信のために必要とされる隠しオブジェクトのクリーンアップを実行します.

CleanupMunHideInHierarchyObject() はUnityエディタ専用関数です。Unityアプリケーション実行中にコールしても、何もしません。

Unity エディタ上のメニューから、「Window > Monobit Unity Networking > Cleanup MUN Internal HideInHierarchy object」を選択することで、 シーン内に不用意に生成された「MUNの秘匿オブジェクト」についいてピンポイントで抹消します。

「MUNの秘匿オブジェクト」はシーン内に多重生成されると、ネットワーク通信機能として正常に機能しません。 もしMUNサーバへの接続が行えない状況に陥った場合、MUNを利用する全てのシーンを1つずつ開いて、このメニューを選択し、シーンを上書き保存してください。

static bool MonobitEngine.MonobitNetwork.ConnectServer ( string  gameVersion,
Hashtable  customAuthData = null 
)
static

Monobitサーバーに接続します。

Parameters
gameVersionクライアントのバージョン番号
Returns
true:接続成功、false:接続失敗

ユーザーはゲームバージョンで個々に分断される

Here is the call graph for this function:

static bool MonobitEngineBase.MonobitNetwork.ConnectServerBase ( string  gameVersion,
Hashtable  customAuthData = null 
)
staticinherited

Monobitサーバーに接続します。

Parameters
gameVersionクライアントのバージョン番号
Returns
true:接続成功、false:接続失敗

ユーザーはゲームバージョンで個々に分断される

Here is the caller graph for this function:

static bool MonobitEngineBase.MonobitNetwork.CreateRoom ( string  roomName)
staticinherited

ルームの作成

Parameters
roomName参加するルーム名
Returns
true: 作成成功、false: 作成失敗
static bool MonobitEngineBase.MonobitNetwork.CreateRoom ( string  roomName,
RoomSettings  roomSettings,
LobbyInfo  lobbyInfo 
)
staticinherited

ルームの作成

Parameters
roomName参加するルーム名
roomSettingsルームパラメータの設定
lobbyInfoルームを作成するロビー情報
Returns
true: 作成成功、false: 作成失敗
static void MonobitEngineBase.MonobitNetwork.Destroy ( MonobitView  targetView)
staticinherited

指定されたMonobitViewが静的オブジェクトでないか、このクライアントが所有権を持っている場合、 GameObjectとそれに関連したMonobitViewをネットワーク上から破棄します。

Parameters
targetView破棄対象となるGameObjectが所有しているMonobitViewオブジェクト。

一般的にルームを退室すると、GameObjectは自動的に破棄されます。 ルーム内にいない時にGameObjectを破棄した場合、そのDestroy処理はローカルだけでしか実行されません。 ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。

static void MonobitEngineBase.MonobitNetwork.Destroy ( GameObject  targetGo)
staticinherited

指定されたMonobitViewが静的オブジェクトでないか、このクライアントが所有権を持っている場合、 GameObjectとそれに関連したMonobitViewをネットワーク上から破棄します。

Parameters
targetGo破棄対象となるGameObject。

一般的にルームを退室すると、GameObjectは自動的に破棄されます。 ルーム内にいない時にGameObjectを破棄した場合、そのDestroy処理はローカルだけでしか実行されません。 ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。

static void MonobitEngineBase.MonobitNetwork.DestroyAll ( )
staticinherited

ルーム内の全てのGameObject、MonobitView、また、それらの発したRPCをすべてネットワーク上から破棄します。 サーバにバッファリングされたルーム情報のすべてを削除します。

ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。

static void MonobitEngineBase.MonobitNetwork.DestroyPlayer ( MonobitPlayer  targetPlayer)
staticinherited

指定したプレイヤーが所有しているGameObject、MonobitViewまたそれらの発したRPCをすべてネットワーク上から破棄します。 この関数をコールできるのは、ローカルプレイヤー(自身に向けて)、またはホスト(全クライアントに向けて)です。

Parameters
targetPlayer破棄対象となるターゲットプレイヤー。

ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。

static void MonobitEngineBase.MonobitNetwork.DestroyPlayer ( int  targetPlayerId)
staticinherited

指定したプレイヤーが所有しているGameObject、MonobitViewまたそれらの発したRPCをすべてネットワーク上から破棄します。 この関数をコールできるのは、ローカルプレイヤー(自身に向けて)、またはホスト(全クライアントに向けて)です。

Parameters
targetPlayerId破棄対象となるターゲットプレイヤーのID。

ネットワーク上のオブジェクト破棄が実行できるのは、それがMonobitNetwork.Instantiate()関数およびMonobitNetwork.InstantiateSceneObject()関数を使って作られたオブジェクトのみです。 シーンと共に読み込まれたその他のオブジェクトは、MonobitViewコンポーネントを持つ/持たないに関わらず無視されます。

static void MonobitEngineBase.MonobitNetwork.DisconnectServer ( )
staticinherited

サーバからネットワークを切断する

一度回線切断すると、クライアントはサーバに再接続可能となります。 (再接続にはMonobitNetwork.ConnectServer() 関数などを使用してください。)

static RoomData [] MonobitEngineBase.MonobitNetwork.GetRoomData ( )
staticinherited

現在把握可能なルーム一覧情報をRoomData配列で取得します。

Returns
ルーム一覧情報。

ロビーにいるときに利用できます。

static GameObject MonobitEngineBase.MonobitNetwork.Instantiate ( string  prefabName,
Vector3  position,
Quaternion  rotation,
int  group 
)
staticinherited

インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します

Parameters
prefabNameインスタンスを生成するプレハブ名
positionインスタンス生成時に適用する、Vector3 で表される位置情報
rotationインスタンス生成時に適用する、Quaternionで表される回転情報
groupこのMonobitViewのグループ
Returns
この関数はインスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します。

Here is the caller graph for this function:

static GameObject MonobitEngineBase.MonobitNetwork.Instantiate ( InstantiateType  loadType,
string  prefabName,
Vector3  position,
Quaternion  rotation,
int  group 
)
staticinherited

インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します

Parameters
loadTypeインスタンスを生成時のプレハブロード方法
prefabNameインスタンスを生成するプレハブ名
positionインスタンス生成時に適用する、Vector3 で表される位置情報
rotationインスタンス生成時に適用する、Quaternionで表される回転情報
groupこのMonobitViewのグループ
Returns
この関数はインスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します。

Here is the call graph for this function:

static GameObject MonobitEngineBase.MonobitNetwork.Instantiate ( string  prefabName,
Vector3  position,
Quaternion  rotation,
int  group,
object[]  data,
bool  isDontDestroyOnLoad,
bool  isMine,
bool  isDontDestroyOnRoom 
)
staticinherited

インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します

Parameters
prefabNameインスタンスを生成するプレハブ名
positionインスタンス生成時に適用する、Vector3 で表される位置情報
rotationインスタンス生成時に適用する、Quaternionで表される回転情報
groupこのMonobitViewのグループ
data付随するインスタンス作成のデータ
isDontDestroyOnLoad生成したインスタンスをDontDestroyOnLoadにするかどうか
isMine生成したインスタンスの所有者を自分にするかどうか
isDontDestroyOnRoom所有者のルーム退室時に生成したインスタンスを削除せずに残しておくかどうか
Returns
この関数はインスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します。

Instantiate() の data は、Instantiate() の際に同時に送られる任意の配列データです。 このデータは OnMonobitInstantiate() のコールバックメソッドが実行された段階で、引数となる MonobitMessageInfo 型のパラメータ info を利用して、 info.monobitView.instantiationData として取得できます。 また、任意の段階で、MonobitView オブジェクトを利用して、monobitView.instatiationData でも取得可能です。

Here is the call graph for this function:

static GameObject MonobitEngineBase.MonobitNetwork.Instantiate ( InstantiateType  loadType,
string  prefabName,
Vector3  position,
Quaternion  rotation,
int  group,
object[]  data,
bool  isDontDestroyOnLoad,
bool  isMine,
bool  isDontDestroyOnRoom 
)
staticinherited

インスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します

Parameters
loadTypeインスタンスを生成時のプレハブロード方法
prefabNameインスタンスを生成するプレハブ名
positionインスタンス生成時に適用する、Vector3 で表される位置情報
rotationインスタンス生成時に適用する、Quaternionで表される回転情報
groupこのMonobitViewのグループ
data付随するインスタンス作成のデータ
isDontDestroyOnLoad生成したインスタンスをDontDestroyOnLoadにするかどうか
isMine生成したインスタンスの所有者を自分にするかどうか
isDontDestroyOnRoom所有者のルーム退室時に生成したインスタンスを削除せずに残しておくかどうか
Returns
この関数はインスタンス作成されたMonobitViewが、アタッチされたGameObjectのインスタンスを返します。

Instantiate() の data は、Instantiate() の際に同時に送られる任意の配列データです。 このデータは OnMonobitInstantiate() のコールバックメソッドが実行された段階で、引数となる MonobitMessageInfo 型のパラメータ info を利用して、 info.monobitView.instantiationData として取得できます。 また、任意の段階で、MonobitView オブジェクトを利用して、monobitView.instatiationData でも取得可能です。

static bool MonobitEngineBase.MonobitNetwork.JoinLobby ( )
staticinherited

デフォルトのロビーに入ります。

Returns
true:ロビーへの入室成功、false:ロビーへの入室失敗

そのロビーではMonobitNetwork.GetRoomData()を使い、現在使用中のルーム一覧を見ることができます。

static bool MonobitEngineBase.MonobitNetwork.JoinLobby ( LobbyInfo  lobbyInfo)
staticinherited

サーバ上で任意のロビーを作成し、そのロビーに入室します。

Parameters
lobbyInfoロビーの名前とタイプの情報。
Returns
true:ロビーへの入室成功、false:ロビーへの入室失敗

MonobitNetwork.GetRoomData()を使ってアクセスできるルーム一覧は(クエリーロビーでない限り)サーバから送信されて更新されます。

Here is the call graph for this function:

static bool MonobitEngineBase.MonobitNetwork.JoinOrCreateRoom ( string  roomName,
RoomSettings  roomSettings,
LobbyInfo  lobbyInfo 
)
staticinherited

指定されたルーム名の部屋を検索し、入室します。 入室するルームが見つからなかった場合、指定された引数を元にルームを作成します。

Parameters
roomName新規に作成する(または入室する)ルーム名
roomSettingsroomNameと一致する部屋が存在しなかった場合の、ルームパラメータの設定
lobbyInforoomNameと一致する部屋が存在しなかった場合の、ルームを作成するロビー情報
Returns
true:入室成功 false:入室失敗

JoinOrCreateRoom() では、lobbyInfo に指定したロビー情報が有効である場合、そのロビーに所属するルームに対してのみ作成・入室が可能です。 lobbyInfo に null が指定されている場合、デフォルトロビーに所属するルームに対してのみ作成・入室が可能です。

static bool MonobitEngineBase.MonobitNetwork.JoinRandomRoom ( )
staticinherited

現存するロビー内にあるルームのいずれかに入室する

Returns
true:入室成功 false:入室失敗

この JoinRandomRoom() では、デフォルトロビーに所属するルームに対してのみ入室可能です。

Here is the caller graph for this function:

static bool MonobitEngineBase.MonobitNetwork.JoinRandomRoom ( Hashtable  expectedCustomRoomParameters,
UInt32  expectedMaxPlayers 
)
staticinherited

現存するロビー内にあるルーム内のうち、指定されたルームパラメータとルーム収容最大人数を設定しているいずれかのルームに入室する

Parameters
expectedCustomRoomParametersロビー通知を許可されたルームパラメータと一致するルームを検索するためのフィルター
expectedMaxPlayersこのルーム収容最大人数と一致するルームを検索するためのフィルター
Returns
true:入室成功 false:入室失敗

この JoinRandomRoom() では、デフォルトロビーに所属するルームに対してのみ入室可能です。

Here is the call graph for this function:

static bool MonobitEngineBase.MonobitNetwork.JoinRandomRoom ( Hashtable  expectedCustomRoomParameters,
UInt32  expectedMaxPlayers,
MatchmakingMode  matchingType,
LobbyInfo  lobbyInfo = null,
string  queryLobbyFilter = null 
)
staticinherited

指定されたロビー内にあるルーム内のうち、指定されたルームパラメータとルーム収容最大人数、 ならびにクエリーフィルターと一致するルームについて、指定されたマッチングアルゴリズムを用いて検索し入室する

Parameters
expectedCustomRoomParametersロビー通知を許可されたルームパラメータと一致するルームを検索するためのフィルター
expectedMaxPlayersこのルーム収容最大人数と一致するルームを検索するためのフィルター
matchingTypeマッチメイキングルールのためのオプション
lobbyInfo検索対象となるロビーの指定
queryLobbyFilterクエリーロビーのための、WHEREフィルター文字列
Returns
true:入室成功 false:入室失敗

この JoinRandomRoom() では、lobbyInfo に指定したロビー情報が有効である場合、そのロビーに所属するルームに対してのみ入室可能です。 lobbyInfo に null が指定されている場合、デフォルトロビーに所属するルームに対してのみ入室可能です。

static bool MonobitEngineBase.MonobitNetwork.JoinRoom ( string  roomName)
staticinherited

指定されたルーム名でルームに入室する

Parameters
roomName参加するルーム名
Returns
true:入室成功 false:入室失敗

JoinRoom() では、自身が入室しているロビーに属するルーム(MonobitNetwork.GetRoomData() で取得対象となるルーム)に対してのみ入室可能です。 自身がロビーに入室していない場合、デフォルトロビーに所属するルームに対してのみ入室可能です。

static bool MonobitEngineBase.MonobitNetwork.Kick ( MonobitPlayer  kickPlayer)
staticinherited

クライアントに回線切断をリクエストします。

Parameters
kickPlayer切断対象のプレイヤー。
Returns
true:リクエスト成功、false:リクエスト失敗
static bool MonobitEngineBase.MonobitNetwork.LeaveLobby ( )
staticinherited

ロビーから退出します。 有効なルームリストについての更新について受信するのを停止します。

Returns
true:ロビーから退出成功、false:ロビーから退出失敗

Here is the caller graph for this function:

static bool MonobitEngineBase.MonobitNetwork.LeaveRoom ( )
staticinherited

現在のルームを退室して、ロビーに戻ります。

Returns
true:ルームから退出成功、false:ルームから退出失敗
static void MonobitEngineBase.MonobitNetwork.LoadLevel ( object  level)
staticinherited

シーンのロード(object版)

Parameters
levelシーン名orID

引数はstringかintで

static GameObject MonobitEngine.MonobitNetwork.OnInstantiateWithAssetBundle ( string  assetBundlePath,
string  assetBundleName 
)
static

AssetBundle.LoadAsset() を実行してプレハブを生成します。

Parameters
assetBundlePathアセットバンドルのパス名
assetBundleNameアセットバンドル名
Returns
新しく生成されたインスタンスを返します。
static GameObject MonobitEngine.MonobitNetwork.OnInstantiateWithResources ( string  prefabName)
static

Resources.Load() を実行してプレハブを生成します。

Parameters
prefabNameプレハブ名
Returns
新しく生成されたインスタンスを返します。
static bool MonobitEngineBase.MonobitNetwork.RemoveAuthParameters ( string  key)
staticinherited

カスタム認証パラメータの削除.

Parameters
keyカスタム認証パラメータのキー.
Returns
削除できたら true、削除できなければ false。
static void MonobitEngineBase.MonobitNetwork.RemoveRPCs ( MonobitPlayer  targetPlayer)
staticinherited

指定されたプレイヤーによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。

Parameters
targetPlayerRPC破棄対象となるターゲットプレイヤー。

MonobitNetwork.RemoveRPCs() は、バッファリング(MonobitTargets.AllBuffered など)により送信されたRPC送信キュー情報を消し、後続入室者への送信を停止します。

static void MonobitEngineBase.MonobitNetwork.RemoveRPCs ( MonobitView  targetMonobitView)
staticinherited

指定されたプレイヤーによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。

Parameters
targetMonobitViewRPC破棄対象となるMonobitViewオブジェクト。

MonobitNetwork.RemoveRPCs() は、バッファリング(MonobitTargets.AllBuffered など)により送信されたRPC送信キュー情報を消し、後続入室者への送信を停止します。

static void MonobitEngineBase.MonobitNetwork.RemoveRPCsInGroup ( int  targetGroup)
staticinherited

指定されたグループIDによって送信され、サーバ上でバッファリングされたRPCを、すべてネットワーク上から破棄します。

Parameters
targetGroupRPC破棄対象となるグループID。

MonobitNetwork.RemoveRPCsInGroup() は、バッファリング(MonobitTargets.AllBuffered など)により送信されたグループ別のRPC送信キュー情報を消し、後続入室者への送信を停止します。

static bool MonobitEngineBase.MonobitNetwork.SearchPlayers ( string[]  playerToSearch)
staticinherited

指定したプレイヤー一覧に対し、ルーム入室状況とオンライン状況をリクエストします。

Parameters
playerToSearchプレイヤー一覧の配列。
Returns
リクエストを送信したらtrue、送信できなかったらfalseを返します。
static bool MonobitEngineBase.MonobitNetwork.SendStream ( )
staticinherited

他のクライアントに対し、即座にRPC送信やInstantiate()を呼び出させるのに使います。

static void MonobitEngineBase.MonobitNetwork.SetInstantiateWithAssetBundleHandle ( InstantiateWithAssetBundleHandle  handle)
staticinherited

InstantiateWithAssetBundle のイベントハンドルの設定.

static void MonobitEngineBase.MonobitNetwork.SetInstantiateWithResourcesHandle ( InstantiateWithResourcesHandle  handle)
staticinherited

InstantiateWithResources のイベントハンドルの設定.

static void MonobitEngineBase.MonobitNetwork.SetLevelPrefix ( short  prefix)
staticinherited

レベルプリフィックスの設定 これ以降インスタンス生成されるMonobitViewに設定されるレベルプリフィックス(monobitView.prefix)をセットします

Parameters
prefixレベルプリフィックスの値

prefixはshortの最大値(32767)

static void MonobitEngineBase.MonobitNetwork.SetPlayerCustomParameters ( Hashtable  playerParameters)
staticinherited

自身のプレイヤーパラメータを設定して、他のプレイヤーにも同期します。

Parameters
playerParameters自身のプレイヤーパラメータの情報

自身のプレイヤーパラメータは MonobitNetwork.player.customParameters に入っていますが、 これを直接編集しないでください!(必ず MonobitNetworkCore.SetPlayerCustomParameters() 関数を使ってください。)

static void MonobitEngineBase.MonobitNetwork.SetReceivingEnabled ( int  group,
bool  enabled 
)
staticinherited

指定されたグループに属するMonobitViewオブジェクトの受信の可否を決定する。

Parameters
enabled影響するグループID。
groupgroupからの受信の可否を設定します。 ・可能にするなら true を設定します。 ・不可能にするなら false を設定します。

「グループID=0番」は、MUNの内部通信でも使用するチャンネルのため、常に受信許可を維持します。 SetReceivingEnabled() で無効化しようとしても反映されません。

static void MonobitEngineBase.MonobitNetwork.SetReceivingEnabled ( int[]  enableGroups,
int[]  disableGroups 
)
staticinherited

指定されたグループに属するMonobitViewオブジェクトの受信の可否を決定する

Parameters
disableGroups受信可能にするグループID群。 nullを指定した場合には、全グループ受信不可となります。
enableGroups受信不可能にするグループID群。 nullを指定した場合には、全グループ受信可能となります。

「グループID=0番」は、MUNの内部通信でも使用するチャンネルのため、常に受信許可を維持します。 SetReceivingEnabled() で無効化しようとしても反映されません。

static void MonobitEngineBase.MonobitNetwork.SetSendingEnabled ( int  group,
bool  enabled 
)
staticinherited

指定されたグループに属するMonobitViewオブジェクトの送信の可否を決定する。

Parameters
enabled影響するグループID。
groupgroupからの送信の可否を設定します。 ・可能にするなら true を設定します。 ・不可能にするなら false を設定します。

「グループID=0番」は、MUNの内部通信でも使用するチャンネルのため、常に送信許可を維持します。 SetSendingEnabled() で無効化しようとしても反映されません。

static void MonobitEngineBase.MonobitNetwork.SetSendingEnabled ( int[]  enableGroups,
int[]  disableGroups 
)
staticinherited

指定されたグループに属するMonobitViewオブジェクトの送信の可否を決定する。

Parameters
disableGroups送信可能にするグループID群。 nullを指定した場合には、全グループ送信不可となります。
enableGroups送信不可能にするグループID群。 nullを指定した場合には、全グループ送信可能となります。

「グループID=0番」は、MUNの内部通信でも使用するチャンネルのため、常に送信許可を維持します。 SetSendingEnabled() で無効化しようとしても反映されません。

static void MonobitEngineBase.MonobitNetwork.UnassignViewID ( int  viewID)
staticinherited

手動でインスタンス作成されて破棄するネットワーク上のオブジェクトに対し、viewIDの割り当てを解除します。

Parameters
viewIDAllocateViewID()または AllocateSceneViewID()で割り当てたviewID。

Member Data Documentation

string MonobitEngineBase.MonobitNetwork.internalMUNVersion = "2.0"
staticinherited

MUNのバージョン。MUNサーバ認証時に使用する.

MonobitLogLevel MonobitEngineBase.MonobitNetwork.logLevel = MonobitLogLevel.ErrorsOnly
staticinherited

ログ出力レベル.

int MonobitEngineBase.MonobitNetwork.maxConnections
staticinherited

旧UnityNetworkingにおける、ルーム接続最大数の設定値。 旧UnityNetworkingの互換のために用意されているもので、MUNでは使用しない.

readonly int MonobitEngineBase.MonobitNetwork.PERSONAL_VIEW_ID_MAX = 1000
staticinherited

MUNクライアント1単位当たりで使用できる、割り当て可能なViewIDの登録最大数.

Type MonobitEngineBase.MonobitNetwork.SendMonoMessageTargetType = typeof(MonobitEngine.MonoBehaviour)
staticinherited

この変数はObsoleteです。SendMonoMessageTargetTypes を利用してください。

List<Type> MonobitEngineBase.MonobitNetwork.SendMonoMessageTargetTypes = new List<Type>() { typeof(MonobitEngine.MonoBehaviour) }
staticinherited

UnityでのSendMessageを送り付けるタイプ

複数を指定できるように変更しています。

bool MonobitEngineBase.MonobitNetwork.UseRpcCache = false
staticinherited

RPCキャッシュ機能を利用するかどうかのフラグ.

Property Documentation

int MonobitEngine.MonobitNetwork.ActiveSceneBuildIndex
staticget

現在動作しているシーンのインデックスを取得します。

string MonobitEngine.MonobitNetwork.ActiveSceneName
staticget

現在動作しているシーンのファイル名を取得します。

int [] MonobitEngineBase.MonobitNetwork.AllowReceivingGroup
staticgetinherited

受信許可リスト.

string MonobitEngineBase.MonobitNetwork.AssetBundlePath
staticgetsetinherited

AssetBundleのパス.

bool MonobitEngineBase.MonobitNetwork.autoJoinLobby
staticgetsetinherited

mun_masterサーバに接続した時、MonobitNetworkが「直前まで入室していたロビー」に再入室させるべきかを決めます。 直前まで入室していたロビーが存在しない場合、または初回接続の際には、デフォルトのロビーに参加させるべきかを決めます。

ロビーに入室していない状態ではルーム一覧は MonobitNetwork.GetRoomData()などでは取得できません。 ロビーに入室していなくとも、ルームの作成&ランダム入室は可能です。

bool MonobitEngineBase.MonobitNetwork.autoRemoveInLeftRoom
staticgetsetinherited

退室するプレイヤーにインスタンス生成されたGameObject/MonobitViewについて、ルーム内のプレイヤーが破棄すべきかどうかを決めます。

true の場合、RPCと退室するプレイヤーがインスタンス作成したGameObjectとMonobitViewを、サーバはクリーンアップして、 入室してくるプレイヤーがそれらを受け取らないようにします。

bool MonobitEngine.MonobitNetwork.autoSyncScene
staticgetset

ルーム内の全クライアントが、ホストと同じゲームシーンをロードすべきかを決めます。

読み込むゲームシーンを同期するためには、ホストはMonobitNetwork.LoadLevelを使っている必要があります。 そうであれば、全てのクライアントは、更新や入室の際に新しいシーンを読み込むことになります。

int [] MonobitEngineBase.MonobitNetwork.BlockSendingGroup
staticgetinherited

受信拒否リスト.

int MonobitEngineBase.MonobitNetwork.clientCountInApplication
staticgetinherited

同一ネットワーク上に存在する、認証クライアントの数を取得します。

int MonobitEngineBase.MonobitNetwork.clientCountInLobby
staticgetinherited

サーバに接続している同一認証クライアントのうち、ロビーに接続しているユーザー数を取得します。

int MonobitEngineBase.MonobitNetwork.clientCountInRoom
staticgetinherited

サーバに接続している同一認証クライアントのうち、ルームに接続しているユーザー数を取得します。

ConnectionState MonobitEngineBase.MonobitNetwork.connectionState
staticgetinherited

クライアント側の接続状態判定

PeerState MonobitEngineBase.MonobitNetwork.connectionStateDetailed
staticgetinherited

接続状態の詳細を取得する

オフラインモードはPeerState.Joinedを返します。 offlineModeRoomがNULLの時点ではPeerState.ConnectedToMasterを返します。

Hashtable MonobitEngineBase.MonobitNetwork.CustomAuthParameters
staticgetinherited

カスタム認証パラメータの取得.

string MonobitEngineBase.MonobitNetwork.CustomAuthResultRaw
staticgetinherited

カスタム認証結果の生データの取得.

bool MonobitEngineBase.MonobitNetwork.EnableGetLobbyData
staticgetsetinherited

mun_masterサーバから有効なロビー一覧情報を取得可能にします。

string MonobitEngineBase.MonobitNetwork.gameVersion
staticgetsetinherited

クライアントのバージョン情報

MonobitPlayer MonobitEngineBase.MonobitNetwork.host
staticgetinherited

現在入室しているルームのホストの情報

bool MonobitEngineBase.MonobitNetwork.inLobby
staticgetinherited

このクライアントがロビーに入室していればtrueになります。

ルームに入室したとき、ロビーからは自動的に退出します。

bool MonobitEngineBase.MonobitNetwork.inRoom
staticgetinherited

自身がルームに入室している場合、この値が true になります。

多くのアクション(インスタンス作成や退室など)はルーム内だけで実行できます。 オフラインモードでもルームに入室できます。

InstantiateWithAssetBundleHandle MonobitEngineBase.MonobitNetwork.InstantiateWithAssetBundle
staticsetprotectedinherited

AssetBundle.LoadAsset() によるプレハブ生成処理ルーチンの登録.

InstantiateWithResourcesHandle MonobitEngineBase.MonobitNetwork.InstantiateWithResources
staticsetprotectedinherited

Resources.Load() によるプレハブ生成処理ルーチンの登録.

bool MonobitEngineBase.MonobitNetwork.isConnect
staticgetinherited

接続しているかの判定

bool MonobitEngineBase.MonobitNetwork.isConnecting
staticgetinherited

接続中かの判定

bool MonobitEngineBase.MonobitNetwork.isConnectReady
staticgetinherited

サーバー接続中&入退室ができる状態かの判定

bool MonobitEngineBase.MonobitNetwork.isHost
staticgetinherited

自身がホストであるかどうかのフラグ。

bool MonobitEngineBase.MonobitNetwork.isInstantiateInRoom
staticgetsetinherited

trueの場合、Instantiate()関数をコールすると、入室中かどうかをチェックします。 ルームに入室中でなければ、Instantiate() は失敗します。

bool MonobitEngineBase.MonobitNetwork.isLeader
staticgetinherited

自身がリーダーであるかどうかのフラグ。

bool MonobitEngineBase.MonobitNetwork.isMessageQueueRunning
staticgetsetinherited

受信イベント(RPC受信、インスタンス作成、その他受信するすべて)の送信を一時停止するのに使われます。

bool MonobitEngineBase.MonobitNetwork.isUsePrefabCache
staticgetsetinherited

true ならば、インスタンス生成時にMonobitNetwork.PrefabCacheを使い、GameObjectをメモリ内に保持します。

LobbyInfo MonobitEngineBase.MonobitNetwork.lobby
staticgetsetinherited

MUNがロビーに入るか、ルームを作成するときに使われるロビーの情報です。

クライアントがロビーにいるか知るためにはMonobitNetwork.inLobbyをチェックしてください。

List<LobbyData> MonobitEngineBase.MonobitNetwork.LobbyDataList
staticgetinherited

MonobitNetwork.EnableLobbyStatisticsがtrue のときに、mun_masterサーバから有効なロビーの情報を取得します。

MonobitLogLevel MonobitEngineBase.MonobitNetwork.LogLevel
staticgetsetinherited

ログ出力レベルの設定

IMunPrefabPool MonobitEngineBase.MonobitNetwork.ObjectPool
staticgetsetinherited

オブジェクトプールの情報。

オブジェクトプールは、一度インスタンス化したオブジェクトのインスタンスを保持し、それを再利用して使用します。

MonobitEngine.IMunPrefabPool にインタフェースに定義されている Instantiate(), Destroy() を実装することにより、 MUN 内部で実行するオブジェクトの動的生成および削除の機能をカスタマイズすることが可能です。

ただし、カスタマイズされた機能は同一のルームに所属する全てのクライアントで「同じタイミングで」登録する必要がありますので、 値代入は「ルーム入室以外」であることが望ましいです(ルーム入室中に実装することは可能ですが、カスタマイズの難度が飛躍的に上がります)。

また、ルーム入室外で ObjectPool を代入する場合にも、同期オブジェクトとして生成されるprefabには MonobitView がアタッチされており、 プール生成と同時に「プレイヤー所有権を与えられないシーン静的オブジェクトのMonobitView.viewID」が与えられることになりますので、 そのままの状態ではプレイヤー個別の同期オブジェクトとして利用できませんのでご注意ください。

以下は、その点を意識した上での ObjectPool に代入可能なクラスの一例です。

using System.Collections.Generic;
namespace TestMunFeature
{
public class PrefabPool : MonobitEngine.IMunPrefabPool
{
private static int maxCount = プールするオブジェクト数;
private static string prefabName = プレハブ名;
private static List<GameObject> poolList = new List<GameObject>();
// コンストラクタ
public PrefabPool()
{
// 非アクティブのプレハブを生成する
for (int i = 0; i < maxCount; i++)
{
obj = GameObject.Instantiate(MonobitNetwork.OnInstantiateWithResources(prefabName), Vector3.zero, Quaternion.identity) as GameObject;
if (obj != null)
{
GameObject.DontDestroyOnLoad(obj);
obj.active = false;
poolList.Add(obj);
}
else
{
Debug.LogError(prefabName);
}
}
}
// オブジェクト動的生成のカスタマイズ
public GameObject Instantiate(string prefabName, Vector3 position, Quaternion rotation)
{
// インスタンスをアクティブにして、transform を設定
GameObject go = null;
foreach (GameObject obj in poolList)
{
if (obj.active == false)
{
go = obj;
go.active = true;
break;
}
}
if (go != null)
{
go.transform.position = position;
go.transform.rotation = rotation;
}
return go;
}
// オブジェクト動的破棄のカスタマイズ
public void Destroy(GameObject obj)
{
MonobitView view = obj.GetComponent<MonobitView>();
if (view != null && view.isMine)
{
// 自身のオブジェクトであれば非アクティブ化
obj.active = false;
}
else
{
// 他クライアントからのオブジェクトであれば破棄
GameObject.Destroy(obj);
}
}
// 明示的なデストラクタ
public static void DestroyAll()
{
foreach (GameObject obj in poolList)
{
MonobitNetwork.Destroy(obj);
GameObject.Destroy(obj);
}
poolList.Clear();
}
}
}
bool MonobitEngineBase.MonobitNetwork.offline
staticgetsetinherited

オフラインモードの設定です。

MonobitPlayer [] MonobitEngineBase.MonobitNetwork.otherPlayersList
staticgetinherited

ローカルプレイヤーを含まない、他のクライアントのMonobitPlayerの一覧です。

MonobitPlayer MonobitEngineBase.MonobitNetwork.player
staticgetinherited

ローカルユーザーのMonobitPlayer

MonobitPlayer [] MonobitEngineBase.MonobitNetwork.playerList
staticgetinherited

MonobitPlayerの一覧です。

string MonobitEngineBase.MonobitNetwork.playerName
staticgetsetinherited

プレイヤーのニックネームです。入室したルーム内の全員に同期します。

playerName はただのニックネームで、ユニーク名である必要はなく、アカウントと共にバックアップする必要もありません。 この値はいつ設定しても(例えば接続前でも)、プレイしているどのユーザーに対しても有効です。

Dictionary<string, GameObject> MonobitEngineBase.MonobitNetwork.PrefabCache
staticgetsetinherited

GameObjectの参照を、参照回数の多いインスタンス作成のためにメモリ上に保持します。

キャッシュはいつでも好きな時に編集可能です。 ただしInstantiate()を使っている時だけは例外的に編集不可です。

Room MonobitEngineBase.MonobitNetwork.room
staticgetinherited

現在入室しているルームの情報

int MonobitEngineBase.MonobitNetwork.roomCountInLobby
staticgetinherited

現在使用されているルーム数を取得します。

int MonobitEngineBase.MonobitNetwork.SeaechPlayersElapsedTime
staticgetinherited

検索ユーザー一覧情報の古さ。

List<SearchPlayerData> MonobitEngineBase.MonobitNetwork.SearchPlayerList
staticgetsetinherited

検索ユーザー一覧情報です。

オンライン状況と、入室しているルームの読み込み専用リストです。 MonobitNetwork.SearchPlayers() 関数がコールされるまでは null のままです。 また、このリストを編集しないでください。MonobitNetwork.SearchPlayers()関数によって内部的に扱われます。 MonobitNetwork.SeaechPlayersElapsedTime の値によって、データがどれだけ古いものかがミリ秒単位で分かります。

int MonobitEngineBase.MonobitNetwork.sendRate
staticgetsetinherited

MonobitNetworkがパケットを1秒間に何回送信するかを決めます。

string MonobitEngineBase.MonobitNetwork.ServerAddress
staticgetinherited

現在使用しているサーバのアドレス.

int MonobitEngineBase.MonobitNetwork.updateStreamRate
staticgetsetinherited

OnMonobitSerialize()による転送処理によって、MonobitViewが1秒間に何回送信処理を実行するかを決めます。 MonobitNetwork.sendRateと関連させて、この値を決めてください。

sendRate


The documentation for this class was generated from the following file: