Ejemplo n.º 1
0
 public PlayerProfile(IPlayerExtendedProfile _extendedProfile = null)
 {
     if (_extendedProfile != null)
     {
         Ext = _extendedProfile;
     }
 }
 /// <summary>
 /// Create new player profile, if not exist already, and save updated list of available players on PlayerPrefs.
 /// </summary>
 /// <param name="_newPlayer"></param>
 /// <param name="_extProfile"></param>
 /// <returns></returns>
 public IPlayerProfile CreateNewPlayer(IPlayerProfile _newPlayer, IPlayerExtendedProfile _extProfile = null)
 {
     if (!Options.AvailablePlayers.Exists(p => p == _newPlayer.Key))
     {
         Options.AvailablePlayers.Add(_newPlayer.Key);
         SavePlayerSettings(_newPlayer);
         SaveAllOptions();
     }
     return(_newPlayer);
 }
        /// <summary>
        /// Save player settings on PlayerPrefs (do not update list of players and global options).
        /// </summary>
        /// <param name="_newPlayer"></param>
        /// <param name="_extProfile"></param>
        public void SavePlayerSettings(IPlayerProfile _newPlayer, IPlayerExtendedProfile _extProfile = null)
        {
            string storeKey       = GetStoreKeyForPlayer(_newPlayer.Key);
            string serializedObjs = JsonUtility.ToJson(_newPlayer);

            if (serializedObjs != null)
            {
                PlayerPrefs.SetString(storeKey, serializedObjs);
            }
            else
            {
                Debug.Log("Unable to serialize player profile : " + _newPlayer.Key);
            }
            PlayerPrefs.Save();
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Create new player with informations provided.
 /// </summary>
 /// <param name="_newPlayer"></param>
 /// <param name="_extProfile"></param>
 /// <returns>Player created or null if player with user id already exist.</returns>
 public IPlayerProfile CreateNewPlayer(IPlayerProfile _newPlayer, IPlayerExtendedProfile _extProfile = null)
 {
     return(ConcreteModuleImplementation.CreateNewPlayer(_newPlayer, _extProfile));
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Save player settins.
 /// </summary>
 /// <param name="_newPlayer"></param>
 /// <param name="_extProfile"></param>
 public void SavePlayerSettings(IPlayerProfile _newPlayer, IPlayerExtendedProfile _extProfile = null)
 {
     ConcreteModuleImplementation.SavePlayerSettings(_newPlayer, _extProfile);
 }
 /// <summary>
 /// Update player settings (and if, extended profile).
 /// </summary>
 /// <param name="_newPlayer"></param>
 /// <param name="_extProfile"></param>
 /// <returns></returns>
 public IPlayerProfile UpdatePlayer(IPlayerProfile _newPlayer, IPlayerExtendedProfile _extProfile = null)
 {
     SavePlayerSettings(_newPlayer);
     return(_newPlayer);
 }