private void CheckForNewRank(BnetPlayer player) { MedalInfoTranslator rankPresenceField = RankMgr.Get().GetRankPresenceField(player); if (rankPresenceField != null) { BnetGameAccountId hearthstoneGameAccountId = player.GetHearthstoneGameAccountId(); int rank = rankPresenceField.GetCurrentMedal().rank; if (!this.m_lastKnownMedal.ContainsKey(hearthstoneGameAccountId)) { this.m_lastKnownMedal[hearthstoneGameAccountId] = rank; } else if ((rank <= 10) && (this.m_lastKnownMedal[hearthstoneGameAccountId] > rank)) { this.m_lastKnownMedal[hearthstoneGameAccountId] = rank; if (rank == 0) { object[] args = new object[] { "5ecaf0ff", player.GetBestName() }; this.AddToast(GameStrings.Format("GLOBAL_SOCIAL_TOAST_FRIEND_RANK_LEGEND", args)); } else { object[] objArray2 = new object[] { "5ecaf0ff", player.GetBestName(), rankPresenceField.GetCurrentMedal().rank }; this.AddToast(GameStrings.Format("GLOBAL_SOCIAL_TOAST_FRIEND_GAINED_RANK", objArray2)); } } } }
public void UpdateMedalChange(MedalInfoTranslator medalInfo) { if ((medalInfo != null) && medalInfo.IsDisplayable()) { this.m_medal.SetMedal(medalInfo, false); } }
public void SetMedal(MedalInfoTranslator medal, bool showStars) { this.m_banner.SetActive(false); this.m_medal = medal; TranslatedMedalInfo currentMedal = this.m_medal.GetCurrentMedal(); this.m_rankMedal.GetComponent <Renderer>().enabled = false; AssetLoader.Get().LoadTexture(currentMedal.textureName, new AssetLoader.ObjectCallback(this.OnTextureLoaded), showStars, false); }
private void UpdateRank() { if (this.ShouldUseBogusRank()) { this.m_medalInfo = new MedalInfoTranslator(); } else { BnetPlayer player = BnetPresenceMgr.Get().GetPlayer(this.m_gameAccountId); this.m_medalInfo = RankMgr.Get().GetRankPresenceField(player); } }
public bool SetRankPresenceField(NetCache.NetCacheMedalInfo medalInfo) { TranslatedMedalInfo currentMedal = new MedalInfoTranslator(medalInfo).GetCurrentMedal(); List <byte> list = new List <byte>(); byte item = Convert.ToByte(currentMedal.rank); int legendIndex = currentMedal.legendIndex; list.Add(item); byte[] bytes = BitConverter.GetBytes(legendIndex); list.Add(bytes[0]); list.Add(bytes[1]); byte[] val = list.ToArray(); return(BnetPresenceMgr.Get().SetGameField(0x12, val)); }
public virtual void UpdateFriend() { this.m_ChatIcon.UpdateIcon(); if (this.m_player != null) { Color color; if (this.m_player.IsOnline()) { if (this.m_player.IsAway()) { color = TEXT_COLOR_AWAY; } else if (this.m_player.IsBusy()) { color = TEXT_COLOR_BUSY; } else { color = TEXT_COLOR_NORMAL; } } else { color = TEXT_COLOR_OFFLINE; } this.m_StatusText.TextColor = color; BnetGameAccount hearthstoneGameAccount = this.m_player.GetHearthstoneGameAccount(); this.m_medal = (hearthstoneGameAccount != null) ? RankMgr.Get().GetRankPresenceField(hearthstoneGameAccount) : null; if ((this.m_medal == null) || (this.m_medal.GetCurrentMedal().rank == 0x19)) { this.m_rankMedal.gameObject.SetActive(false); this.m_PlayerIcon.Show(); } else { this.m_PlayerIcon.Hide(); this.m_rankMedal.gameObject.SetActive(true); this.m_rankMedal.SetMedal(this.m_medal, false); } } }
public void CheatRankUp(string[] args) { bool flag = false; bool flag2 = false; for (int i = 0; i < args.Length; i++) { if (args[i].ToLower() == "winstreak") { flag = true; } if (args[i].ToLower() == "chest") { flag2 = true; } } this.m_debugClickCatcher.gameObject.SetActive(true); this.m_debugClickCatcher.AddEventListener(UIEventType.RELEASE, new UIEvent.Handler(this.Hide)); this.m_medalInfoTranslator = new MedalInfoTranslator(); TranslatedMedalInfo prevMedal = new TranslatedMedalInfo(); TranslatedMedalInfo currMedal = new TranslatedMedalInfo(); int result = 14; int num3 = 15; int num4 = 3; int num5 = 1; if (args.Length >= 2) { int.TryParse(args[0], out result); int.TryParse(args[1], out num3); } if (args.Length >= 4) { int.TryParse(args[2], out num4); int.TryParse(args[3], out num5); } prevMedal.earnedStars = num4; prevMedal.totalStars = 3; if (result <= 15) { prevMedal.totalStars = 4; } if (result <= 10) { prevMedal.totalStars = 5; } prevMedal.canLoseStars = result <= 20; prevMedal.canLoseLevel = result < 20; prevMedal.name = string.Format("Rank {0}", result); prevMedal.nextMedalName = string.Format("Rank {0}", num3); prevMedal.rank = result; prevMedal.textureName = string.Format("Medal_Ranked_{0}", result); currMedal.earnedStars = num5; currMedal.totalStars = 3; if (num3 <= 15) { currMedal.totalStars = 4; } if (num3 <= 10) { currMedal.totalStars = 5; } if (num3 == 0) { currMedal.legendIndex = 0x539; } currMedal.canLoseStars = num3 <= 20; currMedal.canLoseLevel = num3 < 20; currMedal.name = string.Format("Rank {0}", num3); currMedal.nextMedalName = string.Format("Rank {0}", num3); currMedal.rank = num3; currMedal.textureName = string.Format("Medal_Ranked_{0}", num3); if (flag) { currMedal.winStreak = 3; } if (flag2) { prevMedal.bestRank = prevMedal.rank; currMedal.bestRank = currMedal.rank; } this.m_medalInfoTranslator.TestSetMedalInfo(currMedal, prevMedal); }