Exemple #1
0
        public void Init(StatBoard.PlayerStatData statData, FightStatType type)
        {
            //IL_0092: Unknown result type (might be due to invalid IL or missing references)
            //IL_009f: Unknown result type (might be due to invalid IL or missing references)
            //IL_00a4: Unknown result type (might be due to invalid IL or missing references)
            //IL_00ab: Unknown result type (might be due to invalid IL or missing references)
            int num = default(int);

            if (statData.playerStats.Stats.TryGetValue((int)type, ref num))
            {
                if (type == FightStatType.PlayTime)
                {
                    TimeSpan timeSpan = TimeSpan.FromSeconds(num);
                    string   text     = (timeSpan.Hours > 0) ? timeSpan.ToString("hh\\:mm\\:ss") : timeSpan.ToString("mm\\:ss");
                    m_valueText.SetText(text);
                }
                else
                {
                    m_valueText.SetText(num.ToString());
                }
            }
            else
            {
                m_valueText.SetText("-");
            }
            Color color = statData.playerStats.Titles.Contains((int)type) ? m_statData.bestValueColor : m_statData.neutralValueColor;

            m_valueText.color = color;
        }
        private void SetTitles(RepeatedField <int> titles)
        {
            int num = 0;

            for (int i = 0; i < titles.get_Count(); i++)
            {
                FightStatType fightStatType = (FightStatType)titles.get_Item(i);
                if (fightStatType != 0)
                {
                    if (i >= m_titleIcons.Count)
                    {
                        Image val = Object.Instantiate <Image>(m_titleIcons[0]);
                        val.get_transform().SetParent(m_titleIcons[0].get_transform().get_parent());
                        m_titleIcons.Add(val);
                    }
                    Image obj = m_titleIcons[i];
                    obj.get_gameObject().SetActive(true);
                    obj.set_sprite(m_statData.GetIcon(fightStatType));
                    num++;
                }
            }
            for (int j = num; j < m_titleIcons.Count; j++)
            {
                m_titleIcons[j].get_gameObject().SetActive(false);
            }
        }
Exemple #3
0
 public Sprite GetIcon(FightStatType type)
 {
     if (((Dictionary <FightStatType, Sprite>)m_fightStatTypeIcons).TryGetValue(type, out Sprite value))
     {
         return(value);
     }
     return(null);
 }
Exemple #4
0
 private void InitOptionnalLine(StatValueLine line, FightStatType type, bool displayOpponent)
 {
     if (m_availableStats.Contains(type))
     {
         line.Init(m_allies, m_opponents, type, displayOpponent);
         line.get_gameObject().SetActive(true);
     }
     else
     {
         line.get_gameObject().SetActive(false);
     }
 }
Exemple #5
0
 public void Init(List <StatBoard.PlayerStatData> allies, List <StatBoard.PlayerStatData> opponents, FightStatType type, bool displayOpponents)
 {
     InitList(m_alliesStats, m_alliesGroup, allies, type);
     if (displayOpponents)
     {
         m_opponentsGroup.get_gameObject().SetActive(true);
         InitList(m_opponentStats, m_opponentsGroup, opponents, type);
     }
     else
     {
         m_opponentsGroup.get_gameObject().SetActive(false);
     }
 }
Exemple #6
0
        private void InitList(List <StatValue> stats, LayoutGroup group, List <StatBoard.PlayerStatData> statDatas, FightStatType type)
        {
            int num = 0;

            for (int i = 0; i < statDatas.Count; i++)
            {
                StatBoard.PlayerStatData statData = statDatas[i];
                if (i >= stats.Count)
                {
                    StatValue statValue = Object.Instantiate <StatValue>(stats[0]);
                    statValue.get_transform().SetParent(group.get_transform());
                    stats.Add(statValue);
                }
                StatValue statValue2 = stats[i];
                statValue2.Init(statData, type);
                statValue2.get_gameObject().SetActive(true);
                num++;
            }
            for (int j = num; j < stats.Count; j++)
            {
                stats[j].get_gameObject().SetActive(false);
            }
        }
Exemple #7
0
        public IEnumerator Init(GameStatistics gameStatistics)
        {
            m_allies.Clear();
            m_opponents.Clear();
            m_availableStats.Clear();
            RepeatedField <GameStatistics.Types.PlayerStats> playerStats = gameStatistics.PlayerStats;

            for (int i = 0; i < playerStats.get_Count(); i++)
            {
                GameStatistics.Types.PlayerStats playerStats2 = playerStats.get_Item(i);
                for (int j = 0; j < playerStats2.Titles.get_Count(); j++)
                {
                    FightStatType item = (FightStatType)playerStats2.Titles.get_Item(j);
                    if (!m_availableStats.Contains(item))
                    {
                        m_availableStats.Add(item);
                    }
                }
                if (GameStatus.GetFightStatus(playerStats2.FightId).TryGetEntity(playerStats2.PlayerId, out PlayerStatus entityStatus) && entityStatus.heroStatus != null)
                {
                    PlayerStatData playerStatData = default(PlayerStatData);
                    playerStatData.name             = entityStatus.nickname;
                    playerStatData.weaponDefinition = (WeaponDefinition)entityStatus.heroStatus.definition;
                    playerStatData.playerStats      = playerStats2;
                    PlayerStatData item2 = playerStatData;
                    if (GameStatus.localPlayerTeamIndex == entityStatus.teamIndex)
                    {
                        item2.ally = true;
                        m_allies.Add(item2);
                    }
                    else
                    {
                        item2.ally = false;
                        m_opponents.Add(item2);
                    }
                }
            }
            PlayerStatDataComparer comparer = new PlayerStatDataComparer();

            m_allies.Sort(comparer);
            m_opponents.Sort(comparer);
            if (GameStatus.fightType == FightType.TeamVersus)
            {
                m_teamScoreLine.get_gameObject().SetActive(true);
                m_allyTeamScore.SetText(GameStatus.allyTeamPoints.ToString());
                m_opponentTeamScore.SetText(GameStatus.opponentTeamPoints.ToString());
            }
            else
            {
                m_teamScoreLine.get_gameObject().SetActive(false);
            }
            bool displayOpponent = m_opponents.Count > 0 || GameStatus.fightType != FightType.BossFight;

            m_versusImage.get_gameObject().SetActive(displayOpponent);
            m_versusBloom.get_gameObject().SetActive(displayOpponent);
            yield return(m_playerLine.Init(m_allies, m_opponents, displayOpponent));

            m_statLines[0].Init(m_allies, m_opponents, FightStatType.TotalDamageDealt, displayOpponent);
            m_statLines[1].Init(m_allies, m_opponents, FightStatType.TotalDamageSustained, displayOpponent);
            m_statLines[2].Init(m_allies, m_opponents, FightStatType.PlayTime, displayOpponent);
            m_statLines[3].Init(m_allies, m_opponents, FightStatType.TotalKills, displayOpponent);
            InitOptionnalLine(m_statLines[4], FightStatType.CompanionGiven, displayOpponent);
            InitOptionnalLine(m_statLines[5], FightStatType.BudgetPointsDiff, displayOpponent);
            InitOptionnalLine(m_statLines[6], FightStatType.BudgetPointsWon, displayOpponent);
        }