不加入房间||光子双关语
does'nt join the room || Photon Pun
我最近正在使用 Unity3d 和 Photon PUN2 开发我的多人游戏;
我想做一个系统,玩家点击按钮加入房间如果不是avilabe然后创建;
当从 p1 的两个玩家 (parrelSync) 开始游戏时,它只会使房间正常(因为开始时没有房间可用)
形成p2不加入房间
这里是代码
string roomID = "002";
string maxPlayers = "10";
RoomOptions roomOptions = new RoomOptions();
roomOptions.MaxPlayers = (byte)int.Parse(maxPlayers);
if(PhotonNetwork.CurrentRoom != null){
PhotonNetwork.JoinRoom(roomID);
}else{
PhotonNetwork.CreateRoom(roomID, roomOptions);
}
}
PhotonNetwork.CurrentRoom
returns 您当前所在的房间,在您的情况下始终为 null。
而不是检查 PhotonNetwork.CurrentRoom
只需使用 PhotonNetwork.JoinRoom
并重写 OnJoinRoomFailed()
当我们尝试使用 roomID
加入房间时将被调用还不存在,就在里面新建一个房间。
像下面这样的东西会起作用
private string roomID = "002";
private void YourMethod() {
string maxPlayers = "10";
RoomOptions roomOptions = new RoomOptions();
roomOptions.MaxPlayers = (byte) int.Parse(maxPlayers);
PhotonNetwork.JoinRoom(roomID);
}
public override void OnJoinRoomFailed(short returnCode, string message) {
PhotonNetwork.CreateRoom(roomID);
}
并覆盖 OnJoinRoomFailed()
确保您的脚本派生自 MonoBehaviourPunCallbacks
class
我最近正在使用 Unity3d 和 Photon PUN2 开发我的多人游戏;
我想做一个系统,玩家点击按钮加入房间如果不是avilabe然后创建;
当从 p1 的两个玩家 (parrelSync) 开始游戏时,它只会使房间正常(因为开始时没有房间可用)
形成p2不加入房间
这里是代码
string roomID = "002";
string maxPlayers = "10";
RoomOptions roomOptions = new RoomOptions();
roomOptions.MaxPlayers = (byte)int.Parse(maxPlayers);
if(PhotonNetwork.CurrentRoom != null){
PhotonNetwork.JoinRoom(roomID);
}else{
PhotonNetwork.CreateRoom(roomID, roomOptions);
}
}
PhotonNetwork.CurrentRoom
returns 您当前所在的房间,在您的情况下始终为 null。
而不是检查 PhotonNetwork.CurrentRoom
只需使用 PhotonNetwork.JoinRoom
并重写 OnJoinRoomFailed()
当我们尝试使用 roomID
加入房间时将被调用还不存在,就在里面新建一个房间。
像下面这样的东西会起作用
private string roomID = "002";
private void YourMethod() {
string maxPlayers = "10";
RoomOptions roomOptions = new RoomOptions();
roomOptions.MaxPlayers = (byte) int.Parse(maxPlayers);
PhotonNetwork.JoinRoom(roomID);
}
public override void OnJoinRoomFailed(short returnCode, string message) {
PhotonNetwork.CreateRoom(roomID);
}
并覆盖 OnJoinRoomFailed()
确保您的脚本派生自 MonoBehaviourPunCallbacks
class