CreateRoom() public static method

Creates a room with given name but fails if this room is existing already.
If you don't want to create a unique room-name, pass null or "" as name and the server will assign a roomName (a GUID as string). Call this only on the master server. Internally, the master will respond with a server-address (and roomName, if needed). Both are used internally to switch to the assigned game server and roomName. PhotonNetwork.autoCleanUpPlayerObjects will become this room's AutoCleanUp property and that's used by all clients that join this room.
public static CreateRoom ( string roomName ) : void
roomName string Unique name of the room to create.
return void
Ejemplo n.º 1
0
    public void btn_crearSalaCustom_click()
    {
        string metodo = "btn_crearSalaCustom_click";

        Debug.Log(metodo + "INICIO");

        string NombreSala      = if_nombreSala.text;
        string NumeroJugadores = dropdown_numeroJugadores.options[dropdown_numeroJugadores.value].text;

        if (string.IsNullOrEmpty(NombreSala))
        {
            NombreSala = "Sala " + Random.Range(1000, 10000);
        }

        RoomOptions OpcioneDeSala = new RoomOptions();

        OpcioneDeSala.MaxPlayers = (byte)int.Parse(NumeroJugadores);

        Debug.Log(OpcioneDeSala.MaxPlayers);

        PhotonNetwork.CreateRoom(NombreSala, OpcioneDeSala);//Requerido importar P.RealTime para confirgurar las opciones     -  Aqui se puede añadir expectador
        Debug.Log(metodo + "FIN");
    }
Ejemplo n.º 2
0
        public void CreateGame()
        {
            if (GameManager.instance.IsGameplayScene())
            {
                MPLogger.Log("Creating room...");

                RoomOptions options = new RoomOptions()
                {
                    CustomRoomProperties = new ExitGames.Client.Photon.Hashtable()
                    {
                        { "IsPublic", true },
                        { "Name", PhotonNetwork.playerName },
                    },
                    CustomRoomPropertiesForLobby = new string[] { "IsPublic", "Name" }
                };

                PhotonNetwork.CreateRoom(new Guid().ToString(), options, PhotonNetwork.lobby);
            }
            else
            {
                MPLogger.Log("Tried to create room, but we weren't in the game!");
            }
        }
Ejemplo n.º 3
0
    public void OnClick()
    {
        string roomName = InputFieldRoomName.roomName;

        RoomInfo[] allRooms = PhotonNetwork.GetRoomList();

        foreach (RoomInfo room in allRooms)
        {
            if (room.Name.Equals(roomName))
            {
                PhotonNetwork.JoinRoom(roomName);
                return;
            }
        }
        // ルームオプションを作成
        RoomOptions roomOptions = new RoomOptions();

        roomOptions.MaxPlayers = 2;
        roomOptions.IsOpen     = true;
        roomOptions.IsVisible  = true;

        PhotonNetwork.CreateRoom(roomName, roomOptions, null);
    }
Ejemplo n.º 4
0
 /// <summary>
 /// Setup a 1v1 regular match.
 /// </summary>
 public void onevone()
 {
     if (PhotonNetwork.connectedAndReady && PhotonNetwork.playerName != null && PhotonNetwork.playerName != "" && GameObject.Find("MainMenuHolder").GetComponent <MainMenuValueHolder>().currentlyloading == false)
     {
         Loading.SetActive(true);
         ExitGames.Client.Photon.Hashtable customRoomPropertiesToSet = new ExitGames.Client.Photon.Hashtable()
         {
             { "Fr", "false" }, { "Un", PhotonNetwork.playerName }, { "st", "in Lobby" }, { "3v3", "No" }, { "team1a", 400 }, { "team1b", 400 }, { "team1c", 400 }, { "team2a", 400 }, { "team2b", 400 }, { "team2c", 400 }, { "GameMode", 0 }, { "Bots", true }, { "Botdif", 0 }, { "sky", 0 }, { "Scenery", 0 }
         };
         string[] customlobby = new string[4] {
             "Fr", "Un", "st", "3v3"
         };
         //    PhotonNetwork.FindFriends(getfriendslist());
         PhotonNetwork.CreateRoom(roomName, new RoomOptions()
         {
             MaxPlayers = 2, IsOpen = true, IsVisible = true, PublishUserId = true, CustomRoomProperties = customRoomPropertiesToSet, CustomRoomPropertiesForLobby = customlobby
         }, null);
         PhotonNetwork.automaticallySyncScene = false;
         PhotonNetwork.LoadLevel(1);
         Debug.Log(PhotonNetwork.room.CustomProperties);
         Debug.Log("1v1");
     }
 }
Ejemplo n.º 5
0
    /// <summary>
    /// creates a new room numbered 'current room count + 1', or joins
    /// that room if someone else has just created it
    /// </summary>
    protected virtual void TryCreateRoom()
    {
        //vp_MPDebug.Log("trying to create room: " + "Room" + (PhotonNetwork.countOfRooms + 1).ToString());

        string roomName = "Room" + (PhotonNetwork.countOfRooms + 1).ToString();

        // if someone else is creating the wanted room right now, join it instead of creating it
        foreach (RoomInfo room in PhotonNetwork.GetRoomList())
        {
            if (room.Name == roomName)
            {
                //vp_MPDebug.Log("someone else was creating " + "Room" + (PhotonNetwork.countOfRooms + 1).ToString() + " so joining it");
                PhotonNetwork.JoinRoom(room.Name);
                return;
            }
        }

        // noone else is creating the wanted room, so create it!
        if (PhotonNetwork.CreateRoom(roomName))
        {
            //vp_MPDebug.Log("create room success");
        }
    }
Ejemplo n.º 6
0
    public void CreateRoom(RoomType type, string roomName = null)
    {
        switch (type)
        {
        case RoomType.Custom:
            roomName = "%" + roomName;                     // PhotonNetwork.NickName + "'s Room";
            var options = new RoomOptions {
                MaxPlayers = 2, PublishUserId = true, PlayerTtl = 0
            };
            PhotonNetwork.CreateRoom(roomName, options, customLobby);
            break;

        case RoomType.Random:
            var roomOptions = new RoomOptions {
                MaxPlayers = 2, PlayerTtl = 0
            };
            PhotonNetwork.CreateRoom(null, roomOptions);
            break;

        default:
            throw new ArgumentOutOfRangeException(nameof(type), type, null);
        }
    }
Ejemplo n.º 7
0
    public void onClickCreate()
    {
        //host = true;
        // player_num = "player1";
        // random pin number every time
        PIN.text = Random.Range(1000, 9999).ToString();
        string      password    = PIN.text;
        RoomOptions roomoptions = new RoomOptions();

        roomoptions.MaxPlayers = 4;
        string[] roompropsInLobby = { "gm" }; // game mode
        //party game mode
        //1. 丢纸团 = tp
        //2. 转盘= roll
        //3。 摇可乐 = shake
        ExitGames.Client.Photon.Hashtable customesproperties = new ExitGames.Client.Photon.Hashtable();
        roomoptions.CustomRoomPropertiesForLobby = roompropsInLobby;
        roomoptions.CustomRoomProperties         = customesproperties;
        PhotonNetwork.CreateRoom(password, roomoptions);
        // create_join_panel.SetActive(false);
        // RoomPanel.SetActive(true);
        //setPlayerName(player_num, PhotonNetwork.LocalPlayer.NickName);
    }
Ejemplo n.º 8
0
    public void Connect()
    {
        if (roomOptions.MaxPlayers == 1)
        {
            //Check if the room exists in the current room list
            foreach (RoomInfo roomInfo in currRoomList)
            {
                if (roomInfo.Name == roomName)
                {
                    menu.ManageDebugText("Room already exists. Cannot play singleplayer in room.");
                    return;
                }
            }

            //If it doesn't, create and join
            PhotonNetwork.CreateRoom(roomName, roomOptions, null);
        }
        else
        {
            Debug.Log("Joining or Creating Room");
            PhotonNetwork.JoinOrCreateRoom(roomName, roomOptions, null);
        }
    }
Ejemplo n.º 9
0
        public void CreateRoom(string roomName)
        {
            Debug.LogError("CreateRoom: " + PhotonNetwork.IsConnectedAndReady);
            if (!PhotonNetwork.IsConnectedAndReady)
            {
                m_uiEngine.DisplayResult(new Error()
                {
                    ErrorCode = Error.E_InvalidOperation,
                    ErrorText = "Not connected to multiplayer server yet."
                });
                return;
            }

            m_uiEngine.DisplayProgress("Creating room: " + roomName);
            RoomOptions options = new RoomOptions
            {
                IsVisible  = true,
                IsOpen     = true,
                MaxPlayers = 10
            };

            PhotonNetwork.CreateRoom(roomName, options);
        }
        void CreateRoom(string _roomName)
        {
            RoomOptions roomOptions = new RoomOptions();

            roomOptions.MaxPlayers = byte.Parse(MaxPlayersTxt.text);
            roomOptions.CustomRoomPropertiesForLobby = new string[] { "mode" };
            roomOptions.CustomRoomProperties         = new ExitGames.Client.Photon.Hashtable()
            {
                { "mode", GameMode }
            };

            MinsForMatch  = int.Parse(MaxTimeTxt.text);
            KillsForMatch = int.Parse(MaxKillsTxt.text);
            MaxPing       = int.Parse(MaxPingTxt.text);

            timer = MinsForMatch * 60;

            PhotonNetwork.CreateRoom(_roomName, roomOptions, null);
            foreach (var uiEff in FadeInOnHost)
            {
                uiEff.DoFadeOut();
            }
        }
    void OnPhotonRandomJoinFailed()
    {
        if (m_CurrentMode == ApplicationMode.Resolving)
        {
            m_CurrentMode = ApplicationMode.Ready;
            _ResetStatus();
            return;
        }
        if (m_CurrentMode == ApplicationMode.Hosting)
        {
            m_CurrentMode = ApplicationMode.Ready;
            _ResetStatus();
            return;
        }
        RoomOptions roomoptions = new RoomOptions()
        {
            isVisible = true, maxPlayers = 6
        };
        int randNum = UnityEngine.Random.Range(0, 100);

        PhotonNetwork.CreateRoom(randNum.ToString(), roomoptions, TypedLobby.Default);
        _ShowAndroidToastMessage("Created new room : " + randNum);
    }
 /// <summary>
 /// Create a room with the target name for other players to join in the default lobby. Will connect to master server and default lobby if not already connected.
 /// </summary>
 /// <param name="roomName"></param>
 public void CreateRoom(string roomName)
 {
     _connecting = true;
     _roomName   = roomName;
     if (PhotonNetwork.IsConnected == false || PhotonNetwork.InLobby == false)
     {
         _createRoom = true;
         JoinLobby();
     }
     else
     {
         _connectStatus = "Creating a new room...";
         if (debugging == true)
         {
             Debug.Log(_connectStatus);
         }
         RoomOptions options = new RoomOptions()
         {
             MaxPlayers = maxPlayerPerRoom, PublishUserId = true, IsVisible = true, IsOpen = true
         };
         PhotonNetwork.CreateRoom(_roomName, options, TypedLobby.Default);
     }
 }
Ejemplo n.º 13
0
    public void CreatePrivateRoom()
    {
        GameManager.Instance.JoinedByID = false;
        RoomOptions roomOptions = new RoomOptions();

        roomOptions.MaxPlayers = 4;


        string roomName = "";

        for (int i = 0; i < 8; i++)
        {
            roomName = roomName + UnityEngine.Random.Range(0, 10);
        }

        roomOptions.CustomRoomPropertiesForLobby = new String[] { "bet", "game" };
        roomOptions.CustomRoomProperties         = new ExitGames.Client.Photon.Hashtable()
        {
            { "bet", GameManager.Instance.payoutCoins }, { "game", "Ludo" }
        };
        Debug.Log("Private room name: " + roomName);
        PhotonNetwork.CreateRoom("", roomOptions, TypedLobby.Default);
    }
Ejemplo n.º 14
0
    public void createRoom()
    {
        // (ノಠ益ಠ)ノ彡┻━┻
        // This static property needs to be reset before another attempt at creating room else the room will automatically find our player in it and falsly report that we've already joined it.
        // Also, this static property can't be reset to "". This is not documented anywhere in the PUN API.
        PhotonNetwork.playerName = "_1_abc";
        ExitGames.Client.Photon.Hashtable tId = new ExitGames.Client.Photon.Hashtable();
        tId.Add("teamId", 0);
        PhotonNetwork.player.SetCustomProperties(tId);
        Debug.Log("player name: " + PhotonNetwork.player.name);
        RoomOptions options = new RoomOptions();

        ExitGames.Client.Photon.Hashtable initProps = new ExitGames.Client.Photon.Hashtable();
        switch (MapSelectionManager.mapName)
        {
        case "sacredforest": options.maxPlayers = 6;
            initProps.Add("mapName", "sacredforest");
            initProps.Add("players", new string[6] {
                "", "", "", "", "", ""
            });
            break;

        case "desert":
            options.maxPlayers = 6;
            initProps.Add("mapName", "desert");
            initProps.Add("players", new string[6] {
                "", "", "", "", "", ""
            });
            break;
        }

        options.customRoomProperties         = initProps;
        options.customRoomPropertiesForLobby = new string[] { "mapName", "players" };
        string roomName = LoginManager.getUsername() + "'s game #" + Math.Abs(PhotonNetwork.ServerTimestamp.GetHashCode());

        PhotonNetwork.CreateRoom(roomName, options, PhotonNetwork.lobby);
    }
Ejemplo n.º 15
0
        public void OnPhotonRandomJoinFailed(object[] codeAndMsg)
        {
            //Int16 nReturnCode = (Int16)codeAndMsg[0];
            //string strMessage = (string)codeAndMsg[1];
            if (PhotonNetwork.insideLobby == true)
            {
                //Create room
                RoomOptions opts = new RoomOptions();
                switch (m_eCurGameType)
                {
                case EGameType.PvP1x1:
                    opts.MaxPlayers = 2;
                    break;

                case EGameType.PvP2x2:
                    opts.MaxPlayers = 4;
                    break;

                case EGameType.PvP3x3:
                    opts.MaxPlayers = 6;
                    break;

                default:
                    Debug.LogError("Unexpected game type " + m_eCurGameType.ToString());
                    break;
                }
                opts.IsOpen       = true;
                opts.PlayerTtl    = 100;
                opts.EmptyRoomTtl = 100;

                PhotonNetwork.CreateRoom(null, opts, null);
            }
            else
            {
                FailedEnterRoom();
            }
        }
Ejemplo n.º 16
0
    void OnGUI()
    {
        // network error messages
        if (!PhotonNetwork.connected)
        {
            GUILayout.Label(PhotonNetwork.connectionStateDetailed.ToString());
        }

        else if (PhotonNetwork.room == null)
        {
            PlayerName = GUI.TextField(new Rect(100, 50, 100, 30), PlayerName, 20);
            // Create Room
            if (GUI.Button(new Rect(100, 100, 500, 100), "Start Server"))
            {
                PhotonNetwork.player.name = PlayerName;
                PhotonNetwork.CreateRoom(roomName + Guid.NewGuid().ToString("N"), new RoomOptions()
                {
                    maxPlayers = 4
                }, null);
            }

            // Join Room
            if (roomsList != null)
            {
                for (int i = 0; i < roomsList.Length; i++)
                {
                    //PhotonNetwork.player.name = "ClientPlayer";
                    if (GUI.Button(new Rect(100, 250 + (95 * i), 500, 90), "Join " + roomsList[i].name))
                    {
                        PhotonNetwork.player.name = "ClientPlayer " + Time.time;
                        //PhotonNetwork.player.name = PlayerName;
                        PhotonNetwork.JoinRoom(roomsList[i].name);
                    }
                }
            }
        }
    }
Ejemplo n.º 17
0
    public void OnClick_CreateRoom()
    {
        if (ClientNumber.text != "")
        {
            if (int.Parse(ClientNumber.text) > 1)
            {
                RoomOptions roomOptions = new RoomOptions()
                {
                    IsVisible = true, IsOpen = true, MaxPlayers = byte.Parse(ClientNumber.text)
                };

                if (RoomName.text != "")
                {
                    if (PhotonNetwork.CreateRoom(RoomName.text, roomOptions, TypedLobby.Default))
                    {
                        LogLayoutGroup.Instance.AddNewLog("Create room successfully sent.");
                    }
                    else
                    {
                        LogLayoutGroup.Instance.AddNewLog("Create room failed to send.");
                    }
                }
                else
                {
                    LogLayoutGroup.Instance.AddNewLog("Enter room name first.");
                }
            }
            else
            {
                LogLayoutGroup.Instance.AddNewLog("Client number must be greater than 1.");
            }
        }
        else
        {
            LogLayoutGroup.Instance.AddNewLog("Client number must be greater than 1.");
        }
    }
    public void _OnClickCreateRoom()
    {
        Debug.Log("NetworkButtons - _OnClickCreateRoom()");

        bool bug = true;

        if (createRoomInput.text.Length > 0 && usernameInput.text.Length > 0)
        {
            Debug.Log("Name of the room : " + createRoomInput.text);

            usernameGO.name = usernameInput.text;
            PhotonNetwork.CreateRoom(createRoomInput.text, new RoomOptions()
            {
                MaxPlayers = 3
            }, null);

            bug = false;
        }
        if (usernameInput.text.Length == 0)
        {
            Debug.Log("Please enter username of length > 0");

            usernameInput.placeholder.color = Color.red;
            bug = false;
        }
        if (createRoomInput.text.Length == 0)
        {
            Debug.Log("Please enter room name of length > 0");

            createRoomInput.placeholder.color = Color.red;
            bug = false;
        }
        if (bug)
        {
            Debug.Log("Room cannot be joined");
        }
    }
Ejemplo n.º 19
0
    //ルームを作成する
    public static void CreateRoom(string RoomName, int NumOfPlayers)
    {
        PhotonNetwork.autoCleanUpPlayerObjects = false;
        //カスタムプロパティ
        // ExitGames.Client.Photon.Hashtable customProp = new ExitGames.Client.Photon.Hashtable();
        // customProp.Add ("RoomName", RoomName); //ルーム名
        // PhotonNetwork.SetPlayerCustomProperties(customProp);



        // Debug.Log("int:"+NumOfPlayers+" byte:"+(byte)NumOfPlayers);
        RoomOptions roomOptions = new RoomOptions()
        {
            MaxPlayers = (byte)NumOfPlayers, // 部屋の最大人数
            IsOpen     = true,               // 入室を許可
            IsVisible  = true,               // ロビーから見えるようにする
            // ロビーで見える情報
            CustomRoomProperties = new ExitGames.Client.Photon.Hashtable()
            {
                { "Playing", false }
            },                                                                                 // Stageに移行しているかどうか、FalseならまだWaitingRoom
            CustomRoomPropertiesForLobby = new string[] { "Playing" }
        };


        // roomOptions.customRoomProperties = customProp;
        // //ロビーで見えるルーム情報としてカスタムプロパティのRoomNameを使いますよという宣言
        // roomOptions.customRoomPropertiesForLobby = new string[]{"RoomName"};
        // roomOptions.maxPlayers = 4; //部屋の最大人数
        // roomOptions.isOpen = true; //入室許可する
        // roomOptions.isVisible = true; //ロビーから見えるようにする
        //RoomNameが名前のルームがなければ作って入室、あれば普通に入室する。
        // PhotonNetwork.JoinOrCreateRoom (RoomName, roomOptions, null);
        Debug.Log("heyatukuru");

        PhotonNetwork.CreateRoom(RoomName, roomOptions, null);
    }
Ejemplo n.º 20
0
    /// <summary>
    /// Create a room on click. It generates a 4 digit room code automatically and creates the room with the specified room options.
    /// The room options sets whether the room is visible in the lobby, is open to be joined, and the maximum number of players.
    /// </summary>
    public void CreateRoomOnClick()
    {
        RoomOptions roomOps = new RoomOptions()
        {
            IsVisible = true, IsOpen = true, MaxPlayers = (byte)roomSize
        };

        roomOps.PublishUserId = true;

        int roomCode = Random.Range(1000, 10000);

        roomName = roomCode.ToString();

        roomController.GetComponent <AvatarController>().enabled    = true;
        roomController.GetComponent <AvatarController>().maxPlayers = roomSize;
        roomController.GetComponent <AvatarController>().isCreator  = true;

        LobbyPanel.SetActive(false);
        RoomPanel.SetActive(true);

        PhotonNetwork.CreateRoom(roomName, roomOps);

        codeDisplay.text = "Code: " + roomName;
    }
Ejemplo n.º 21
0
 /// <summary>
 /// Connects the client to the plantion server
 /// </summary>
 public void Connect()
 {
     if (PhotonNetwork.IsConnected)
     {
         if (debug)
         {
             //if(PhotonNetwork.IsConnectedAndReady())
             PhotonNetwork.CreateRoom(roomName, new RoomOptions()
             {
                 MaxPlayers = maxPlayersPerRoom
             });
         }
         if (PhotonNetwork.InLobby)
         {
             PhotonNetwork.LeaveLobby();
             //PhotonNetwork.JoinRandomRoom();
         }
     }
     else
     {
         PhotonNetwork.ConnectUsingSettings();
         PhotonNetwork.GameVersion = gameVersion;
     }
 }
Ejemplo n.º 22
0
    //ルーム作成、もしくはルームに参加する
    public override void OnConnectedToMaster()
    {
        //ランダムマッチング
        if (randomOn == true)
        {
            PhotonNetwork.JoinRandomRoom();

            //ルームを作成する
        }
        else if (createOn == true)
        {
            PhotonNetwork.CreateRoom(roomName,
                                     new RoomOptions()
            {
                MaxPlayers = 4, IsVisible = false
            });

            //ルームに参加する
        }
        else if (joinOn == true)
        {
            PhotonNetwork.JoinRoom(roomName);
        }
    }
Ejemplo n.º 23
0
    // Update is called once per frame
    void Update()
    {
        // Input para criar a sala
        if (Input.GetKeyDown(KeyCode.C))
        {
            PhotonNetwork.CreateRoom("Sala_Man");
            txt_status.text  = "Criou a sala!";
            txt_status.color = Color.yellow;
        }

        // Input para entrar na sala
        if (Input.GetKeyDown(KeyCode.E))
        {
            PhotonNetwork.JoinRoom("Sala_Man");
        }

        // Instanciar os players
        if (Input.GetKeyDown(KeyCode.E))
        {
            PhotonNetwork.Instantiate("player", new Vector3(5, 5, 5), Quaternion.identity, 0);
            txt_status.text  = "Instanciou o player";
            txt_status.color = Color.green;
        }
    }
Ejemplo n.º 24
0
    public void CreateRoomOnClick()
    {
        // HAVE TO ADD SOME DATA VALIDATION:
        //
        //
        if (game_name_input.text.Equals(""))
        {
            return;
        }


        Debug.Log("Creating room...");
        Create_Game.ROOMNAME = game_name_input.text;



        if (PhotonNetwork.InLobby)
        {
            RoomOptions roomOps = new RoomOptions()
            {
                IsVisible = !game_private, IsOpen = true, MaxPlayers = (byte)4
            };
            if (PhotonNetwork.CreateRoom(Create_Game.ROOMNAME, roomOps)) //attempting to create a new room
            {
                Debug.Log("Room Created!");
            }
            else
            {
                Debug.Log("Could not create room.");
            }
        }
        else
        {
            Debug.Log("Not in Lobby1?");
        }
    }
Ejemplo n.º 25
0
    void OnGUI()
    {
        // if we're not inside a room, let the player create a room
        if (PhotonNetwork.room == null)
        {
            if (GUILayout.Button("Create Room", GUILayout.Width(200f)))
            {
                // create a room called "RoomNameHere", visible to the lobby, allows other players to join, and allows up to 8 players
                PhotonNetwork.CreateRoom("RoomNameHere", true, true, 8);
            }
        }
        else
        {
            // display some stats about this room
            GUILayout.Label("Connected to room: " + PhotonNetwork.room.name);
            GUILayout.Label("Players in room: " + PhotonNetwork.playerList.Length);

            // disconnect from the current room
            if (GUILayout.Button("Disconnect", GUILayout.Width(200f)))
            {
                PhotonNetwork.LeaveRoom();
            }
        }
    }
Ejemplo n.º 26
0
    /// <summary>
    /// Connection à une room
    /// </summary>
    public void SearchGame()
    {
        UpdateListRoom();
        if (PhotonNetwork.connected)
        {
            if (listNameRoomOpenOfType.Count > 0)
            {
                int randRoom = Random.Range(0, listNameRoomOpenOfType.Count);
                PhotonNetwork.JoinRoom(listNameRoomOpenOfType[randRoom]);
            }
            else
            {
                RoomOptions option = new RoomOptions();
                option.MaxPlayers = (byte)ToG;
                option.IsOpen     = true;
                option.IsVisible  = true;
                option.PlayerTtl  = 5 * 60 * 1000;

                hashSet = new Hashtable();
                hashSet["TypeOfGame"]  = ToG;
                hashSet["MapName"]     = mapName;
                hashSet["NbrWorms"]    = NbrWormsPT;
                hashSet["PlayerName1"] = "";
                hashSet["PlayerName2"] = "";
                hashSet["PlayerName3"] = "";
                hashSet["PlayerName4"] = "";

                option.CustomRoomProperties = hashSet;

                string[] lobbyProps = { "TypeOfGame", "MapName", "NbrWorms", "PlayerName1", "PlayerName2", "PlayerName3", "PlayerName4" };
                option.CustomRoomPropertiesForLobby = lobbyProps;

                PhotonNetwork.CreateRoom(ToG.ToString() + " | " + mapName + " n°" + PhotonNetwork.countOfRooms, option, TypedLobby.Default);
            }
        }
    }
Ejemplo n.º 27
0
    public void CreateRoom()
    {
        if (FindObjectOfType <LanguageControl>().GetSelectedLanguage() == 0)
        {
            roomSceneGMGUIController.feedbackText.text = "Creating room...";
        }
        else
        {
            roomSceneGMGUIController.feedbackText.text = "Creando sala...";
        }



        string      roomName    = gmRoomCode.text;
        RoomOptions roomOptions = new RoomOptions();

        roomOptions.MaxPlayers = 20;        //(byte)roomSceneGMGUIController.maxPlayers.GetComponentInChildren<Slider>().value;
        roomOptions.IsVisible  = false;     //FALSE = Hace la sala privada
        PhotonNetwork.CreateRoom(roomName, roomOptions, null);
        Debug.Log("Sala creada: " + roomName);
        PhotonNetwork.SetMasterClient(PhotonNetwork.LocalPlayer);

        PhotonNetwork.NickName = "GM";        //roomSceneGMGUIController.usernameInput.text;
    }
Ejemplo n.º 28
0
    /**
     * ROOMの作成.
     */
    public void OnClickRoomAddButton()
    {
        InputField RoomName = GameObject.Find("RoomName").GetComponent <InputField>();

        if (RoomName != null)
        {
            var val = RoomName.text;
            if (val != null && val != "")
            {
                //作成する部屋の設定
                RoomOptions roomOptions = new RoomOptions();
                //ロビーで見える部屋にする
                roomOptions.IsVisible = true;
                //他のプレイヤーの入室を許可する
                roomOptions.IsOpen = true;
                //入室可能人数を設定
                roomOptions.MaxPlayers = (byte)10;
                // ルームを作成
                bool result = PhotonNetwork.CreateRoom(val, roomOptions, null);
                // Serverですよフラグ
                m_is_server = true;
            }
        }
    }
Ejemplo n.º 29
0
    public override void OnJoinRandomFailed(short returnCode, string message)
    {
        base.OnJoinRandomFailed(returnCode, message);

        //If no random room is available to join, then we should make our own new one
        //The null is just not specifying a name - it'll create a random one

        //Debug.LogError("Failed to join a room: " + returnCode + " " + message);

        RoomOptions roomOptions = new RoomOptions();

        roomOptions.CustomRoomProperties = new ExitGames.Client.Photon.Hashtable()
        {
            { "lvl", nMyLevel }
        };
        roomOptions.CustomRoomPropertiesForLobby = new string[] { "type", "lvl" };

        //Set the max players to be the amount we most recently queue'd up for
        roomOptions.MaxPlayers = (byte)nMostRecentMaxPlayersInRoom;

        //Debug.Log("Creating a room with properties " + roomOptions.CustomRoomProperties["lvl"]);

        PhotonNetwork.CreateRoom(null, roomOptions);
    }
Ejemplo n.º 30
0
    public void CreateRoom()
    {
        bool createRoom = true;

        foreach (RoomInfo room in rooms)
        {
            if (room.Name == nameInput.text)
            {
                createRoom = false;
                break;
            }
        }

        if (createRoom)
        {
            RoomOptions options = new RoomOptions();
            options.MaxPlayers = (byte)Mathf.RoundToInt(slider.value);
            PhotonNetwork.CreateRoom(nameInput.text, options, TypedLobby.Default);
        }
        else
        {
            Debug.Log("Roomname is taken");
        }
    }