When I use CreateRoom, the room is not created or something
Options
Hi,
I'm having trouble creating rooms and display them. I was looking everywhere and debugging I found out that after using the function PhotonNetworking.CreateRoom(nameRoom, roomOps), if I look in PhotonNetworking data the CountOfRooms still in 0.
I check everything and I don't know what to do.
I'm having trouble creating rooms and display them. I was looking everywhere and debugging I found out that after using the function PhotonNetworking.CreateRoom(nameRoom, roomOps), if I look in PhotonNetworking data the CountOfRooms still in 0.
I check everything and I don't know what to do.
public class NetworkController : MonoBehaviourPunCallbacks { void Start() { PhotonNetwork.ConnectUsingSettings(); } public override void OnConnectedToMaster() //Cuando te conectas, ejecuta esto { Debug.Log("Connected. Server: " + PhotonNetwork.CloudRegion); } }
public class LobbyController : MonoBehaviourPunCallbacks { [SerializeField] Text nameRoom; [SerializeField] GameObject connecting; [SerializeField] GameObject lobby; [SerializeField] GameObject setNamePanel; [SerializeField] GameObject room; [SerializeField] Transform roomsContainer; [SerializeField] GameObject roomListingPrefab; [SerializeField] GameObject mainMenu; [SerializeField] Text textNameInput; [SerializeField] Text playersInLobby; List<RoomInfo> roomListInfo; string roomName; int roomSize; public override void OnConnectedToMaster() { PhotonNetwork.AutomaticallySyncScene = true; connecting.SetActive(false); setNamePanel.SetActive(true); } public void JoinLobbyOnClick() { roomListInfo = new List<RoomInfo>(); PhotonNetwork.JoinLobby(); PhotonNetwork.NickName = textNameInput.text; PlayerPrefs.SetString("NickName", textNameInput.text); playersInLobby.text = PhotonNetwork.CountOfPlayers.ToString(); } public override void OnRoomListUpdate(List<RoomInfo> roomList) { Debug.Log("OnRoomListUpdate Excecuted."); int tempIndex; foreach (RoomInfo room in roomList) { Debug.Log("There are rooms."); if (roomListInfo != null) tempIndex = roomListInfo.FindIndex(ByName(room.Name)); else tempIndex = -1; if(tempIndex != -1) { roomListInfo.RemoveAt(tempIndex); Destroy(roomsContainer.GetChild(tempIndex).gameObject); } if(room.PlayerCount >0) { roomListInfo.Add(room); ListRoom(room); } } } static System.Predicate<RoomInfo> ByName(string name) { return delegate (RoomInfo room) { return room.Name == name; }; } void ListRoom(RoomInfo room) { if (room.IsOpen && room.IsVisible) { GameObject tempListing = Instantiate(roomListingPrefab, roomsContainer); RoomButton tempButton = tempListing.GetComponent<RoomButton>(); tempButton.SetRoom(room.Name, room.MaxPlayers, room.PlayerCount); } } public void OnRoomNameChanged(string name) { roomName = name; } public void OnRoomSizeChange(string sizeIn) { roomSize = int.Parse(sizeIn); } public void CreateRoom() { RoomOptions roomOps = new RoomOptions() { IsVisible = true, IsOpen = true, MaxPlayers = 6 }; PhotonNetwork.CreateRoom(nameRoom.text, roomOps); PhotonNetwork.CountOfPlayers.ToString(); lobby.SetActive(false); room.SetActive(true); } public override void OnCreateRoomFailed(short returnCode, string message) { Debug.Log("Room creation failed. Message: " + message + ". Code: " + returnCode); //RoomOptions roomOps = new RoomOptions() { IsVisible = true, IsOpen = true, MaxPlayers = 6 }; //PhotonNetwork.CreateRoom(nameRoom.text, roomOps); } public void LeaveRoom() { PhotonNetwork.LeaveRoom(); connecting.SetActive(true); room.SetActive(false); } public void LeaveLobby() { PhotonNetwork.LeaveLobby(); lobby.GetComponentInParent<GameObject>().SetActive(false); mainMenu.SetActive(true); } }
0
Comments
-
Hi @AlejandroCarr,
Thank you for choosing Photon!
I think you are successfully joined to a room.
Make sure to override "OnJoinedRoom" or "OnCreatedRoom" callbacks.
Otherwise,
What do you see in the error logs?
If room creation fails you should see a message starting with "Room creation failed. Message:".
Maybe the connection fails?
Do you see "Connected. Server:"?
Override "OnDisconnected" callback to see if you don't get a connection failure.
Also, application stats (e.g CountOfRooms) and lobby stats do not work when joined to rooms only when joined to lobbies or connected to master server.
0