void SpawnPlayer()
    {
        object playerSelected;

        if (PhotonNetwork.LocalPlayer.CustomProperties.TryGetValue(CustomProps.CHARACTER_SELECTION_NAME, out playerSelected))
        {
            string temp = playerSelected as string;

            int randomSpawnPoint = Random.Range(0, spawnPositions.Length - 1);

            Vector3 instantiatePosition = spawnPositions[randomSpawnPoint].position;

            GameObject selected = GameManager.instance.characters.Find(a => a.name.ToLower() == temp.ToLower());

            //GameObject player = Instantiate(selected, instantiatePosition, Quaternion.identity);
            GameObject player = PhotonNetwork.Instantiate(temp, instantiatePosition, Quaternion.identity);


            PhotonView photonView = player.GetComponent <PhotonView>();


            if (photonView.Owner.IsMasterClient)
            {
                if (PhotonNetwork.AllocateRoomViewID(photonView))
                {
                    object[] data = new object[]
                    {
                        //player.transform.position - battleArena.transform.position, player.transform.rotation, photonView.ViewID, playerSelected
                        player.transform.position - Environment.transform.position, player.transform.rotation, photonView.ViewID, playerSelected
                    };

                    RaiseEventOptions raise = new RaiseEventOptions
                    {
                        Receivers     = ReceiverGroup.Others,
                        CachingOption = EventCaching.AddToRoomCache
                    };

                    SendOptions options = new SendOptions
                    {
                        Reliability = true
                    };

                    //Raise events
                    PhotonNetwork.RaiseEvent((byte)RaiseEventCodes.PlayerSpawnEventCode, data, raise, options);
                }
                else
                {
                    Debug.Log("Failed to allocate a viewID");
                    //Destroy(player);
                }
            }
        }
        else
        {
            Debug.Log("cant spawn player");
        }
    }