Example #1
0
 public Room(string roomName, string roomId, RoomOption roomOption) : this(roomName, roomId)
 {
     RoomProperties         = roomOption.RoomProperties;
     RoomPropertiesForLobby = roomOption.RoomPropertiesForLobby;
     IsVisible           = roomOption.IsVisible;
     IsOpen              = roomOption.IsOpen;
     MaxPlayerCount      = roomOption.MaxPlayerCount;
     BlockedPlayerIdList = roomOption.BlockedPlayerIdList;
     ExpectPlayerIdList  = roomOption.ExpectPlayerIdList;
     Password            = roomOption.Password;
 }
Example #2
0
        public void JoinOrCreateRoom(string userToken, string roomName, RoomOption roomOption)
        {
            if (XRSocialSDK.InLobby() == false)
            {
                Debug.LogError("You can create or join the room only when you are in the lobby");
                SalinCallbacks.OnPhotonCallbackError(new PhotonEvent(PhotonAction.CreateRoom, ErrorCode.NotInTheLobby));
                return;
            }

            RoomOptions PhotonRoomOptions = PhotonUtility.ConvertPhotonRoomOption(roomOption);

            if (PhotonRoomOptions != null)
            {
                if (PhotonRoomOptions.CustomRoomProperties == null)
                {
                    PhotonRoomOptions.CustomRoomProperties = new Hashtable();
                }
                PhotonRoomOptions.CustomRoomProperties.Add(RoomOptionKey.RoomName, roomName);
            }

            PhotonNetwork.JoinOrCreateRoom(roomName, PhotonRoomOptions, TypedLobby.Default);
        }
Example #3
0
 public void JoinOrCreateRoom(string roomName, RoomOption roomOption = null)
 {
     roomManager.JoinOrCreateRoom(SalinTokens.UserToken, roomName, roomOption);
 }
Example #4
0
        public static RoomOptions ConvertPhotonRoomOption(RoomOption sdkRO)
        {
            if (sdkRO == null)
            {
                return(new RoomOptions());
            }

            RoomOptions photonRO = new RoomOptions();

            photonRO.IsOpen     = sdkRO.IsOpen;
            photonRO.MaxPlayers = (byte)sdkRO.MaxPlayerCount;

            if (sdkRO.RoomPropertiesForLobby != null)
            {
                photonRO.CustomRoomPropertiesForLobby = sdkRO.RoomPropertiesForLobby.ToArray();
            }

            if (sdkRO.RoomProperties != null)
            {
                photonRO.CustomRoomProperties = (Hashtable)sdkRO.RoomProperties;
            }
            else
            {
                photonRO.CustomRoomProperties = new Hashtable();
            }


            if (photonRO.CustomRoomProperties != null)
            {
                if (photonRO.CustomRoomProperties.ContainsKey(RoomOptionKey.IsVisible) == true)
                {
                    photonRO.CustomRoomProperties[RoomOptionKey.IsVisible] = sdkRO.IsVisible;
                }
                else
                {
                    photonRO.CustomRoomProperties.Add(RoomOptionKey.IsVisible, sdkRO.IsVisible);
                }

                if (string.IsNullOrEmpty(sdkRO.Password) == false)
                {
                    if (photonRO.CustomRoomProperties.ContainsKey(RoomOptionKey.Password) == true)
                    {
                        photonRO.CustomRoomProperties[RoomOptionKey.Password] = sdkRO.Password;
                    }
                    else
                    {
                        photonRO.CustomRoomProperties.Add(RoomOptionKey.Password, sdkRO.Password);
                    }
                }

                if (sdkRO.BlockedPlayerIdList != null)
                {
                    if (photonRO.CustomRoomProperties.ContainsKey(RoomOptionKey.BlockedPlayerIdList) == true)
                    {
                        photonRO.CustomRoomProperties[RoomOptionKey.BlockedPlayerIdList] = sdkRO.BlockedPlayerIdList;
                    }
                    else
                    {
                        photonRO.CustomRoomProperties.Add(RoomOptionKey.BlockedPlayerIdList, sdkRO.BlockedPlayerIdList);
                    }
                }
            }

            return(photonRO);
        }
Example #5
0
 public static void CreateRoom(string roomName, RoomOption roomOption = null)
 {
     _multiplayManager.CreateRoom(roomName, roomOption);
 }