public bool InitPlayerDataFromStr(string jsonStr) { PlayerPersistentInfoData newPlayerData; try { newPlayerData = JsonMapper.ToObject <PlayerPersistentInfoData>(jsonStr); } catch (JsonException e) { Debug.LogError("JSON exception caught: " + e.Message); return(false); } // fix daily rewards // which can be corrupted just after new account was created newPlayerData.DailyRewards = newPlayerData.DailyRewards ?? new PPIDailyRewards(); newPlayerData.DailyRewards.Fix(); PlayerData = newPlayerData; return(true); }
//.......................................................................................................................... static List <Item> HarvestStatistics(PlayerPersistentInfoData inPlayerData, List <FriendInfo> inFriendsData) { List <Item> statistics = new List <Item>(); statistics.Add(Get_Experiance(TEXT_ID_EXPERIENCE, inPlayerData, inFriendsData)); // statistics.Add( Get_Money (TEXT_ID_MONEY , inPlayerData, inFriendsData) ); // statistics.Add( Get_Gold (TEXT_ID_GOLD , inPlayerData, inFriendsData) ); statistics.Add(Get_Kills(TEXT_ID_KILLS, inPlayerData, inFriendsData)); statistics.Add(Get_Deaths(TEXT_ID_DEATHS, inPlayerData, inFriendsData)); // statistics.Add( Get_HeadShots (TEXT_ID_HEADSHOTS , inPlayerData, inFriendsData) ); // statistics.Add( Get_Carnages (TEXT_ID_CARNAGES , inPlayerData, inFriendsData) ); // statistics.Add( Get_Limbs (TEXT_ID_LIMBS , inPlayerData, inFriendsData) ); // statistics.Add( Get_PlayedMissions (TEXT_ID_MISSIONS_PLAYED , inPlayerData, inFriendsData) ); // statistics.Add( Get_MissionSuccess (TEXT_ID_SUCCESSED_MISSIONS , inPlayerData, inFriendsData) ); statistics.Add(Get_GameTime(TEXT_ID_TOTAL_TIME, inPlayerData, inFriendsData, E_Better.Bigger)); /* * // Specific statistics for 1. Arena * string arena1_name = TextDatabase.instance[TEXT_ID_ARENA_1]; * string arena1_HighScore = TextDatabase.instance[TEXT_ID_ARENA_1_HIGH_SCORE] .Replace("<ARENA_1_NAME>", arena1_name); * string arena1_TotalTime = TextDatabase.instance[TEXT_ID_ARENA_1_TOTAL_TIME] .Replace("<ARENA_1_NAME>", arena1_name); * string arena1_Played = TextDatabase.instance[TEXT_ID_ARENA_1_PLAYED] .Replace("<ARENA_1_NAME>", arena1_name); * * statistics.Add( Get_Arena1_HighScore(arena1_HighScore , inPlayerData, inFriendsData) ); * statistics.Add( Get_Arena1_GameTime (arena1_TotalTime , inPlayerData, inFriendsData, E_Better.Bigger) ); * statistics.Add( Get_Arena1_Played (arena1_Played , inPlayerData, inFriendsData) ); */ return(statistics); }
public void ResetPlayerData() { PlayerData = new PlayerPersistentInfoData(); IsValid = false; PlayerDataChanged = false; }
public void CopyFrom(PlayerPersistantInfo otherPPI) { Team = otherPPI.Team; ZoneIndex = otherPPI.ZoneIndex; // Score = otherPPI.Score; PlayerData = otherPPI.PlayerData; }
static Item _GetIntItem(int inItemNameTextID, PlayerPersistentInfoData inPlayerData, List <FriendInfo> inFriendsData, E_Better inBetter, IntExtractor inExtractor) { IntItem item = new IntItem(); item.m_NameIndex = inItemNameTextID; return(_GetIntItem(item, inPlayerData, inFriendsData, inBetter, inExtractor)); }
static Item Get_GameTime(int inItemNameTextID, PlayerPersistentInfoData inPlayerData, List <FriendInfo> inFriendsData, E_Better inBetter) { StringItem item = new StringItem(); item.m_NameIndex = inItemNameTextID; item.m_PlayerValue = "??:??"; item.m_SecondValue = "??:??"; return(item); /* * StringItem item = new StringItem(); * item.m_NameIndex = inItemNameTextID; * * float playersTime = inPlayerData.Params.GameTime; * float friendsTime = -1; * * foreach(FriendInfo fi in inFriendsData) * { * float friendValue = fi.m_PPIData.Params.GameTime; * if(friendValue > friendsTime) * { * friendsTime = friendValue; * item.m_SecondValueFriendName = fi.m_Name; * } * } * * if(inBetter != E_Better.None && inFriendsData.Count > 0) * { * item.m_HighlightPlayer = (inBetter == E_Better.Bigger && playersTime > friendsTime) || * (inBetter == E_Better.Smaller && playersTime < friendsTime); * item.m_HighlightFriend = (inBetter == E_Better.Bigger && playersTime < friendsTime) || * (inBetter == E_Better.Smaller && playersTime > friendsTime); * } * * System.TimeSpan duration = System.TimeSpan.FromSeconds( playersTime ); * * * //item.m_PlayerValue = string.Format("{0,3}:{1,2}", (int )duration.TotalHours, (int )duration.Minutes ); * item.m_PlayerValue = ((int )duration.TotalHours).ToString("00") +":"+((int )duration.Minutes).ToString("00"); * duration = System.TimeSpan.FromSeconds( friendsTime ); * //item.m_SecondValue = string.Format("{0,3}:{1,2}", (int )duration.TotalHours, (int )duration.Minutes ); * item.m_SecondValue = ((int )duration.TotalHours).ToString("00") +":"+((int )duration.Minutes).ToString("00"); * * return item; */ }
static Item _GetIntItem(IntItem inItem, PlayerPersistentInfoData inPlayerData, List <FriendInfo> inFriendsData, E_Better inBetter, IntExtractor inExtractor) { IntItem item = inItem; item.m_PlayerValue = -1; item.m_SecondValue = -1; return(item); /* * IntItem item = inItem; * item.m_PlayerValue = inExtractor(inPlayerData); * item.m_SecondValue = -1; * * foreach(FriendInfo fi in inFriendsData) * { * int friendValue = inExtractor(fi.m_PPIData); * if(friendValue > item.m_SecondValue) * { * item.m_SecondValue = friendValue; * item.m_SecondValueFriendName = fi.m_Name; * } * } * * if(inBetter != E_Better.None && inFriendsData.Count > 0) * { * item.m_HighlightPlayer = (inBetter == E_Better.Bigger && item.m_PlayerValue > item.m_SecondValue) || * (inBetter == E_Better.Smaller && item.m_PlayerValue < item.m_SecondValue); * item.m_HighlightFriend = (inBetter == E_Better.Bigger && item.m_PlayerValue < item.m_SecondValue) || * (inBetter == E_Better.Smaller && item.m_PlayerValue > item.m_SecondValue); * } * * return item; */ }
public void CopyPlayerData(PlayerPersistantInfo otherPPI) { PlayerData = otherPPI.PlayerData; }
//.......................................................................................................................... static Item Get_Deaths(int inItemNameTextID, PlayerPersistentInfoData inPlayerData, List <FriendInfo> inFriendsData) { return(_GetIntItem(inItemNameTextID, inPlayerData, inFriendsData, E_Better.Smaller, val => val.Stats.GetDeaths())); }
//.......................................................................................................................... static Item Get_Experiance(int inItemNameTextID, PlayerPersistentInfoData inPlayerData, List <FriendInfo> inFriendsData) { return(_GetIntItem(inItemNameTextID, inPlayerData, inFriendsData, E_Better.Bigger, val => val.Params.Experience)); }