Photon Unity Networking  v1.84
English | 日本語 | 한국
Public Member Functions | List of all members
Photon.PunBehaviour Class Reference

このクラスは、.photonViewと、PUNがコールできるすべてのコールバック/イベントを提供します。使いたいイベント/メソッドをoverride(上書き)してください。 More...

Inherits Photon.MonoBehaviour, and IPunCallbacks.

Public Member Functions

virtual void OnConnectedToPhoton ()
 最初の接続が確立されたときに呼び出されますが、サーバを使用する前に呼び出されます。OnJoinedLobby()またはOnConnectedToMaster()は、PUNの準備ができた際に呼び出されます。 More...
 
virtual void OnLeftRoom ()
 ローカルユーザ/クライアントがルームを出たときに呼び出されます。 More...
 
virtual void OnMasterClientSwitched (PhotonPlayer newMasterClient)
 現在のMasterClientが離れるときに新しいMasterClientに切り替えた後に呼び出されます。 More...
 
virtual void OnPhotonCreateRoomFailed (object[] codeAndMsg)
 CreateRoom()呼び出しが失敗したときに呼び出されます。このパラメータはErrorCodeとmessage(配列として)を提供します。 More...
 
virtual void OnPhotonJoinRoomFailed (object[] codeAndMsg)
 JoinRoom()呼び出しが失敗したときに呼び出されます。このパラメータは、ErrorCodeとmessage(配列として)を提供します。 More...
 
virtual void OnCreatedRoom ()
 このクライアントがルームを作成して入力したときに呼び出されます。OnJoinedRoom()も呼び出されます。 More...
 
virtual void OnJoinedLobby ()
 マスターサーバー上のロビーに入るときに呼び出されます。実際のルームリストの更新はOnReceivedRoomListUpdate()を呼び出します。 More...
 
virtual void OnLeftLobby ()
 ロビーを離れた後に呼び出されます。 More...
 
virtual void OnFailedToConnectToPhoton (DisconnectCause cause)
 接続が確立される前にPhotonサーバへの接続呼び出しが失敗した後、OnDisconnectedFromPhoton()を呼び出したときに呼び出されます。 More...
 
virtual void OnDisconnectedFromPhoton ()
 Photonサーバーから切断した後に呼び出されます。 More...
 
virtual void OnConnectionFail (DisconnectCause cause)
 何らかの理由で接続が失敗して(それが確立された後)、続いてOnDisconnectedFromPhoton()が呼び出された時に呼び出されます。 More...
 
virtual void OnPhotonInstantiate (PhotonMessageInfo info)
 PhotonNetwork.Instantiateを使用してインスタンス化されたGameObject(および子)のすべてのスクリプトで呼び出されます。 More...
 
virtual void OnReceivedRoomListUpdate ()
 マスターサーバ上のロビー(PhotonNetwork.insideLobby)にいる間にルームリストの更新を呼び出します。 More...
 
virtual void OnJoinedRoom ()
 ルームに入るときに(作成または参加して)呼び出されます。すべてのクライアント(マスタークライアントを含む)で呼び出されます。 More...
 
virtual void OnPhotonPlayerConnected (PhotonPlayer newPlayer)
 リモートプレイヤーがルームに入ったときに呼び出されます。このPhotonPlayerは、この時点で既にplayerlistに追加されています。 More...
 
virtual void OnPhotonPlayerDisconnected (PhotonPlayer otherPlayer)
 リモートプレイヤーが退室したときに呼び出されます。このPhotonPlayerは、この時点で既にプレイヤーリストから削除されています。 More...
 
virtual void OnPhotonRandomJoinFailed (object[] codeAndMsg)
 JoinRandom()呼び出しが失敗したときに呼び出されます。このパラメータはErrorCodeとメッセージを提供します。 More...
 
virtual void OnConnectedToMaster ()
 マスタへの接続が確立され、認証された後で、PhotonNetwork.autoJoinLobbyがfalseの場合にのみ呼び出されます。 More...
 
virtual void OnPhotonMaxCccuReached ()
 同時ユーザ制限に(一時的に)達したため、このクライアントはサーバによって拒否され、切断されます。 More...
 
virtual void OnPhotonCustomRoomPropertiesChanged (Hashtable propertiesThatChanged)
 ルームのカスタムプロパティが変更されたときに呼び出されます。propertiesThatChangedには、Room.SetCustomPropertiesを介して設定されたすべてが含まれます。 More...
 
virtual void OnPhotonPlayerPropertiesChanged (object[] playerAndUpdatedProps)
 カスタムプレイヤープロパティが変更されたときに呼び出されます。プレイヤーと変更されたプロパティはobject[]として渡されます。 More...
 
virtual void OnUpdatedFriendList ()
 サーバーがFindFriendsリクエストに応答を送信し、PhotonNetwork.Friendsを更新したときに呼び出されます。 More...
 
virtual void OnCustomAuthenticationFailed (string debugMessage)
 カスタム認証が失敗したときに呼び出されます。その後に切断します! More...
 
virtual void OnCustomAuthenticationResponse (Dictionary< string, object > data)
 カスタム認証サービスが追加データで応答したときに呼び出されます。 More...
 
virtual void OnWebRpcResponse (OperationResponse response)
 WebRPCへの応答が利用可能なときにPUNによって呼び出されます。PhotonNetwork.WebRPCを参照してください。 More...
 
virtual void OnOwnershipRequest (object[] viewAndPlayer)
 他のプレイヤーがあなた(現在の所有者)からPhotonViewの所有権をリクエストすると呼び出されます。 More...
 
virtual void OnLobbyStatisticsUpdate ()
 マスタサーバーがロビー統計情報の更新を送信し、PhotonNetwork.LobbyStatisticsを更新するときに呼び出されます。 More...
 
virtual void OnPhotonPlayerActivityChanged (PhotonPlayer otherPlayer)
 リモートPhoton Playerアクティビティが変更されたときに呼び出されます。これは、PlayerTtlが0より大きい場合にのみ呼び出されます。 More...
 
virtual void OnOwnershipTransfered (object[] viewAndPlayers)
 PhotonViewの所有権が他のプレイヤーに移転されたときに呼び出されます。 More...
 

Additional Inherited Members

- Properties inherited from Photon.MonoBehaviour
PhotonView photonView [get]
 このGameObjectのPhotonViewのキャッシュ参照です。 More...
 
new PhotonView networkView [get]
 このプロパティは開発者に古いものであることを通知するためだけにあります。 More...
 

Detailed Description

このクラスは、.photonViewと、PUNがコールできるすべてのコールバック/イベントを提供します。使いたいイベント/メソッドをoverride(上書き)してください。

このクラスを継承することによって、個々のメソッドをoverrideとして実装できます。

Visual StudioとMonoDevelopは「override」と入力し始めたら、メソッド一覧を表示してきます。 実装するとき、「base.method()」をコールする必要はありません。

このクラスはIPunCallbacksを実装しており、すべてのPUNコールバックの定義が使われています。 あなたのクラスの中でIPunCallbackを実装せず、代わりにPunBehaviourかここのメソッドを実装してください。

Member Function Documentation

virtual void Photon.PunBehaviour.OnConnectedToMaster ( )
virtual

マスタへの接続が確立され、認証された後で、PhotonNetwork.autoJoinLobbyがfalseの場合にのみ呼び出されます。

PhotonNetwork.autoJoinLobbyをtrueに設定すると、OnJoinedLobby()がこの代わりに呼び出されます。

ロビーにいなくてもルームに参加または作成することができます。その場合、デフォルトのロビーが使用されます。 利用可能なルームのリストは、PhotonNetwork.joinLobby経由でロビーに参加しない限り利用できません。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnConnectedToPhoton ( )
virtual

最初の接続が確立されたときに呼び出されますが、サーバを使用する前に呼び出されます。OnJoinedLobby()またはOnConnectedToMaster()は、PUNの準備ができた際に呼び出されます。

このコールバックは、サーバが(技術的に)到達できるかどうかを検出するためにのみ役立ちます。 ほとんどの場合、OnFailedToConnectToPhoton()とOnDisconnectedFromPhoton()を実装すれば十分です。

OnJoinedLobby()またはOnConnectedToMaster()は、PUNの準備ができ次第呼び出されます。

これが呼び出されると、低レベルの接続が確立され、PUNはAppId、ユーザなどをバックグラウンドで送信します。 これは、マスターサーバーからゲームサーバーへの移行には呼び出されません。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnConnectionFail ( DisconnectCause  cause)
virtual

何らかの理由で接続が失敗して(それが確立された後)、続いてOnDisconnectedFromPhoton()が呼び出された時に呼び出されます。

サーバが到達できなかった場合は、代わりにOnFailedToConnectToPhotonが呼び出されます。 エラーの理由は、DisconnectCauseとして提供されています。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnCreatedRoom ( )
virtual

このクライアントがルームを作成して入力したときに呼び出されます。OnJoinedRoom()も呼び出されます。

このコールバックはルームを作成したクライアントでのみ呼び出されます(PhotonNetwork.CreateRoomを参照)。

如何なるクライアントもいつでも閉じる(または接続を切断する)可能性があるため、 ルームの作成者はOnCreatedRoomを実行しません。

特定のルームのプロパティや「開始信号」が必要な場合は、OnMasterClientSwitched()を実装して 新しいMasterClientにルームの状態を確認させる方が安全です。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnCustomAuthenticationFailed ( string  debugMessage)
virtual

カスタム認証が失敗したときに呼び出されます。その後に切断します!

ユーザ入力、不適切なトークン/秘密によりカスタム認証が失敗する可能性があります。 認証が成功した場合、このメソッドは呼び出されません。OnJoinedLobby()またはOnConnectedToMaster()を実装します(通常どおり)。

ゲームの開発中に、サーバ側の構成が正しくないために失敗することもあります。 そのような場合、debugMessageのロギングは非常に重要です。

[ダッシュボード](https://www.photonengine.com/dashboard)でアプリ用のカスタム認証サービスを設定していない限り、 これは呼び出されません!

Parameters
debugMessage認証が失敗した理由を示すデバッグメッセージが含まれています。これは開発時に修正する必要があります。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnCustomAuthenticationResponse ( Dictionary< string, object >  data)
virtual

カスタム認証サービスが追加データで応答したときに呼び出されます。

カスタム認証サービスは、応答にカスタムデータを含めることができます。 存在する場合、そのデータはこのコールバックで辞書として利用可能になります。 データのキーは文字列でなければなりませんが、値は文字列または数値(Json内)のいずれかです。 あなたは値の型があなたが期待するものであることを必ず確認する必要があります。数字は(現在)int64です。

例: void OnCustomAuthenticationResponse(Dictionary<string, object> data) { ... }

https://doc.photonengine.com/en/realtime/current/reference/custom-authentication

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnDisconnectedFromPhoton ( )
virtual

Photonサーバーから切断した後に呼び出されます。

場合によっては、OnDisconnectedFromPhotonが呼び出される前に他のコールバックが呼び出されます。 例:OnConnectionFail()とOnFailedToConnectToPhoton()。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnFailedToConnectToPhoton ( DisconnectCause  cause)
virtual

接続が確立される前にPhotonサーバへの接続呼び出しが失敗した後、OnDisconnectedFromPhoton()を呼び出したときに呼び出されます。

これは、接続がまったく確立できないときに呼び出されます。 既存の接続が失敗したときに呼び出されるOnConnectionFailとは異なります。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnJoinedLobby ( )
virtual

マスターサーバー上のロビーに入るときに呼び出されます。実際のルームリストの更新はOnReceivedRoomListUpdate()を呼び出します。

注意:PhotonNetwork.autoJoinLobbyがfalseの場合、OnConnectedToMaster()が呼び出され、ルームリストは利用できなくなります。

ロビーにいる間、ルームリストは自動的に一定の間隔で更新されます(変更することはできません)。 OnJoinedLobby()の後にOnReceivedRoomListUpdate()が呼び出されると、ルームリストが使用可能になります。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnJoinedRoom ( )
virtual

ルームに入るときに(作成または参加して)呼び出されます。すべてのクライアント(マスタークライアントを含む)で呼び出されます。

このメソッドは、プレイヤーのキャラクタをインスタンス化するためによく使用されます。 一致を「アクティブに」開始する必要がある場合は、ユーザのボタンまたはタイマーによってトリガされた PunRPCを呼び出すことができます。

これが呼び出されると、通常すでにPhotonNetwork.playerList経由でルームの既存のプレイヤーにアクセスできます。 また、すべてのカスタムプロパティはRoom.customPropertiesとして既に使用可能です。Room.playerCountをチェックして 十分なプレイヤーがルームにいてプレイを始められるかを確認します。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnLeftLobby ( )
virtual

ロビーを離れた後に呼び出されます。

ロビーを離れると、 CreateRoomJoinRandomRoomが 自動的に既定のロビーを参照します。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnLeftRoom ( )
virtual

ローカルユーザ/クライアントがルームを出たときに呼び出されます。

ルームを出るとき、PUNはあなたをMaster Serverに戻します。 ロビーを使用してルームに参加または作成する前に、OnJoinedLobby()またはOnConnectedToMaster()が再び呼び出されます。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnLobbyStatisticsUpdate ( )
virtual

マスタサーバーがロビー統計情報の更新を送信し、PhotonNetwork.LobbyStatisticsを更新するときに呼び出されます。

このコールバックには、次の2つの前提条件があります: このクライアントが接続する前に、EnableLobbyStatisticsをtrueに設定する必要があります。 クライアントは、ロビーに関する情報を提供しているマスターサーバーに接続する必要があります。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnMasterClientSwitched ( PhotonPlayer  newMasterClient)
virtual

現在のMasterClientが離れるときに新しいMasterClientに切り替えた後に呼び出されます。

クライアントがルームに入ったときに呼び出されることはありません。 このメソッドが呼び出される際、元のMasterClientはまだプレイヤーリストにあります。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnOwnershipRequest ( object[]  viewAndPlayer)
virtual

他のプレイヤーがあなた(現在の所有者)からPhotonViewの所有権をリクエストすると呼び出されます。

パラメータviewAndPlayerには次のものが含まれます:

PhotonView;としてPhotonView view = viewAndPlayer[0]

PhotonPlayer;としてPhotonPlayer requestingPlayer = viewAndPlayer[1]

Parameters
viewAndPlayerPhotonViewはviewAndPlayer[0]で、リクエスト元のプレイヤーはviewAndPlayer[1]です。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnOwnershipTransfered ( object[]  viewAndPlayers)
virtual

PhotonViewの所有権が他のプレイヤーに移転されたときに呼び出されます。

パラメータviewAndPlayersには次が含まれます:

PhotonView;としてPhotonView view = viewAndPlayers[0]

PhotonPlayer;としてPhotonPlayer newOwner = viewAndPlayers[1]

PhotonPlayer;としてPhotonPlayer oldOwner = viewAndPlayers[2]

void OnOwnershipTransfered(object[] viewAndPlayers) {} //

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonCreateRoomFailed ( object[]  codeAndMsg)
virtual

CreateRoom()呼び出しが失敗したときに呼び出されます。このパラメータはErrorCodeとmessage(配列として)を提供します。

ルーム名がすでに使用されている可能性があります(他のクライアントがあなたよりも先に)。 PUNは、PhotonNetwork.logLevelが>= PhotonLogLevel.Informationalである場合に情報をログします。

Parameters
codeAndMsgcodeAndMsg[0]は短いErrorCodeで、codeAndMsg[1]は文字列debug msgです。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonCustomRoomPropertiesChanged ( Hashtable  propertiesThatChanged)
virtual

ルームのカスタムプロパティが変更されたときに呼び出されます。propertiesThatChangedには、Room.SetCustomPropertiesを介して設定されたすべてが含まれます。

v1.25以降、このメソッドには1つのパラメータがあります:Hashtable propertiesThatChanged。
プロパティの変更は、このコールバックをローカルで発生させるRoom.SetCustomPropertiesによって行う必要があります。

Parameters
propertiesThatChanged

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonInstantiate ( PhotonMessageInfo  info)
virtual

PhotonNetwork.Instantiateを使用してインスタンス化されたGameObject(および子)のすべてのスクリプトで呼び出されます。

PhotonMessageInfoパラメータは、オブジェクトの作成者といつ(PhotonNetworking.timeに基づき)に関する情報を提供します。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonJoinRoomFailed ( object[]  codeAndMsg)
virtual

JoinRoom()呼び出しが失敗したときに呼び出されます。このパラメータは、ErrorCodeとmessage(配列として)を提供します。

おそらくエラーは、ルームが存在しない、またはルームが満室であることが原因です(他のクライアントはあなたよりも先に入った)。 PUNは、PhotonNetwork.logLevelが >= PhotonLogLevel.Informationalである場合に情報をログします。

Parameters
codeAndMsgcodeAndMsg[0]は短いErrorCodeです。codeAndMsg[1]は文字列debug msgです。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonMaxCccuReached ( )
virtual

同時ユーザ制限に(一時的に)達したため、このクライアントはサーバによって拒否され、切断されます。

これが発生すると、ユーザは後で再試行する可能性があります。OnPhotonMaxCcuReached()内のルームを作成または参加することはできません。クライアントが切断されるためです。 新しいライセンスを取得(自身でホストする場合)する、または拡張購読(Photon Cloudを使用する場合)を使用して、CCUの制限を上げることができます。 CCUの制限に達すると、Photon Cloudがメールを送ります。これはダッシュボード(Webページ)でも表示されます。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonPlayerActivityChanged ( PhotonPlayer  otherPlayer)
virtual

リモートPhoton Playerアクティビティが変更されたときに呼び出されます。これは、PlayerTtlが0より大きい場合にのみ呼び出されます。

PhotonPlayer.IsInactiveを使用して、プレイヤーの現在のアクティビティ状態を確認します。

例: void OnPhotonPlayerActivityChanged(PhotonPlayer otherPlayer) {...}

このコールバックには前提条件があります: PlayerTtlは0より大きくなければなりません。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonPlayerConnected ( PhotonPlayer  newPlayer)
virtual

リモートプレイヤーがルームに入ったときに呼び出されます。このPhotonPlayerは、この時点で既にplayerlistに追加されています。

ゲームが特定の数のプレイヤーから始まる場合、このコールバックは Room.playerCountを確認して開始できるかどうかを調べます。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonPlayerDisconnected ( PhotonPlayer  otherPlayer)
virtual

リモートプレイヤーが退室したときに呼び出されます。このPhotonPlayerは、この時点で既にプレイヤーリストから削除されています。

クライアントがPhotonNetwork.leaveRoomを呼び出すと、PUNは残りのクライアントでこのメソッドを呼び出します。 リモートクライアントが接続を切断するか、クローズされると、このコールバックが 数秒後に実行されます。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonPlayerPropertiesChanged ( object[]  playerAndUpdatedProps)
virtual

カスタムプレイヤープロパティが変更されたときに呼び出されます。プレイヤーと変更されたプロパティはobject[]として渡されます。

v1.25以降、このメソッドにはobject[] playerAndUpdatedPropsという1つのパラメータがあり、これには2つのエントリが含まれています。
[0]は影響を受けるPhotonPlayerです。
[1]は変更されたプロパティのハッシュテーブルです。

UnityのGameObject.SendMessage(任意のパラメータは1つだけです)の制限のため、object[]を使用しています。

プロパティの変更はPhotonPlayer.SetCustomPropertiesから実行する必要があります。これにより、このコールバックがローカルで発生します。

例:

void OnPhotonPlayerPropertiesChanged(object[] playerAndUpdatedProps) {
    PhotonPlayer player = playerAndUpdatedProps[0] as PhotonPlayer;
    Hashtable props = playerAndUpdatedProps[1] as Hashtable;
    //...
}
Parameters
playerAndUpdatedPropsPhotonPlayerと変更されたプロパティを含みます。備考を参照してください。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnPhotonRandomJoinFailed ( object[]  codeAndMsg)
virtual

JoinRandom()呼び出しが失敗したときに呼び出されます。このパラメータはErrorCodeとメッセージを提供します。

ほとんどの場合、すべてのルームが満席であるか、利用可能なルームがありません。
複数のロビーを使用する場合(JoinLobbyまたはTypedLobby経由)、別のロビーにより多くの/適切なルームがある可能性があります。
PUNは、PhotonNetwork.logLevelが>= PhotonLogLevel.Informationalである場合にいくつかの情報をログに記録します。

Parameters
codeAndMsgcodeAndMsg[0]は短いErrorCodeです。codeAndMsg[1]は文字列debug msgです。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnReceivedRoomListUpdate ( )
virtual

マスターサーバ上のロビー(PhotonNetwork.insideLobby)にいる間にルームリストの更新を呼び出します。

PUNはPhotonNetwork.GetRoomList()でルームのリストを提供します。
各項目は、カスタムプロパティを含む可能性のあるRoomInfoです(ルームを作成するときにロビーにリストされたものとして定義されている場合)。

すべてのタイプのロビーがクライアントにルームのリストを提供するわけではありません。いくつかは静かで、サーバ側のマッチメイキングに特化しています。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnUpdatedFriendList ( )
virtual

サーバーがFindFriendsリクエストに応答を送信し、PhotonNetwork.Friendsを更新したときに呼び出されます。

フレンドリストはPhotonNetwork.Friends、リスト名、オンライン状態、 ユーザがいるルーム(存在する場合)として利用できます。

Implements IPunCallbacks.

virtual void Photon.PunBehaviour.OnWebRpcResponse ( OperationResponse  response)
virtual

WebRPCへの応答が利用可能なときにPUNによって呼び出されます。PhotonNetwork.WebRPCを参照してください。

重要:PhotonがあなたのWebサービスにアクセスできる場合、response.ReturnCodeは0です。 レスポンスの内容は、Webサービスが送信した内容です。そこからWebResponseインスタンスを作成できます。 例:WebRpcResponse webResponse = new WebRpcResponse(operationResponse);

注:クラスOperationResponseは "使用"する必要がある名前空間にあります: ExitGames.Client.Photonを使用//OperationResponse(および他のクラス)を含む

PhotonによるOperationResponse.ReturnCodeは次のとおりです:<pre> "OK"の場合は0 -3「Webサービスが構成されていない」(ダッシュボード/ WebHooksを参照) -5 "Web-ServiceはRPCパス/名前を持つようになりました"(少なくともAzureの場合)

Implements IPunCallbacks.