Пример #1
0
        public QuestResultData(PlayerData player, int bonusFlags, BattleCore.Record record, List <Unit> units, bool isFirstWin)
        {
            this.StartExp        = player.Exp;
            this.StartGold       = player.Gold;
            this.Record          = record;
            this.StartBonusFlags = bonusFlags;
            this.IsFirstWin      = isFirstWin;
            if (this.Record.items != null)
            {
                List <ItemParam> itemParamList = new List <ItemParam>();
                if (this.Record.items.Count != 0)
                {
                    for (int index = 0; index < this.Record.items.Count; ++index)
                    {
                        if (this.Record.items[index].itemParam != null)
                        {
                            itemParamList.Add(this.Record.items[index].itemParam);
                        }
                    }
                }
                this.GetUnits = new UnitGetParam(itemParamList.ToArray());
            }
            if (units.Count > 1)
            {
                for (int i = 0; i < units.Count; ++i)
                {
                    if (units[i] != null && units[i].Side == EUnitSide.Player && (units[i].UnitType == EUnitType.Unit && player.Units.Find((Predicate <UnitData>)(u => u.UniqueID == units[i].UnitData.UniqueID)) != null))
                    {
                        UnitData.CharacterQuestParam charaEpisodeData = units[i].UnitData.GetCurrentCharaEpisodeData();
                        if (charaEpisodeData != null)
                        {
                            this.CharacterQuest.Add(units[i].UnitData.UniqueID, charaEpisodeData);
                        }
                    }
                }
            }
            List <UnitData> units1 = player.Units;

            for (int index = 0; index < units1.Count; ++index)
            {
                string str1 = units1[index].UnlockedSkillIds();
                this.SkillUnlocks.Add(units1[index].UniqueID, str1);
                string str2 = units1[index].UnlockedCollaboSkillIds();
                this.CollaboSkillUnlocks.Add(units1[index].UniqueID, str2);
            }
        }
        public void Init(UnitGetParam rewards = null)
        {
            UnitGetParam unitGetParam = rewards == null ? GlobalVars.UnitGetReward : rewards;

            if (unitGetParam == null || unitGetParam.Params.Count <= 0)
            {
                this.mIsEnd = true;
            }
            else
            {
                bool     flag      = true;
                string[] unitIds   = new string[unitGetParam.Params.Count];
                bool[]   isConvert = new bool[unitGetParam.Params.Count];
                for (int index = 0; index < unitGetParam.Params.Count; ++index)
                {
                    if (unitGetParam.Params[index].ItemType != EItemType.Unit)
                    {
                        unitIds[index] = string.Empty;
                    }
                    else
                    {
                        if (flag)
                        {
                            flag = false;
                        }
                        unitIds[index]   = unitGetParam.Params[index].ItemId;
                        isConvert[index] = unitGetParam.Params[index].IsConvert;
                        if (!isConvert[index])
                        {
                            DownloadUtility.DownloadUnit(unitGetParam.Params[index].UnitParam, (JobData[])null);
                        }
                    }
                }
                this.mIsEnd = flag;
                if (this.mIsEnd)
                {
                    return;
                }
                this.StartCoroutine(this.SpawnEffectAsync(unitIds, isConvert));
            }
        }
Пример #3
0
        public QuestResultData(PlayerData player, int bonusFlags, BattleCore.Record record, List <Unit> units, bool isFirstWin)
        {
            // ISSUE: object of a compiler-generated type is created
            // ISSUE: variable of a compiler-generated type
            QuestResultData.\u003CQuestResultData\u003Ec__AnonStorey26A dataCAnonStorey26A = new QuestResultData.\u003CQuestResultData\u003Ec__AnonStorey26A();
            // ISSUE: reference to a compiler-generated field
            dataCAnonStorey26A.units = units;
            this.CharacterQuest      = new Dictionary <long, UnitData.CharacterQuestParam>();
            this.SkillUnlocks        = new Dictionary <long, string>();
            this.CollaboSkillUnlocks = new Dictionary <long, string>();
            // ISSUE: explicit constructor call
            base.\u002Ector();
            this.StartExp        = player.Exp;
            this.StartGold       = player.Gold;
            this.Record          = record;
            this.StartBonusFlags = bonusFlags;
            this.IsFirstWin      = isFirstWin;
            if (this.Record.items != null)
            {
                this.GetUnits = new UnitGetParam(this.Record.items.ToArray());
            }
            // ISSUE: reference to a compiler-generated field
            if (dataCAnonStorey26A.units.Count > 1)
            {
                // ISSUE: object of a compiler-generated type is created
                // ISSUE: variable of a compiler-generated type
                QuestResultData.\u003CQuestResultData\u003Ec__AnonStorey26B dataCAnonStorey26B = new QuestResultData.\u003CQuestResultData\u003Ec__AnonStorey26B();
                // ISSUE: reference to a compiler-generated field
                dataCAnonStorey26B.\u003C\u003Ef__ref\u0024618 = dataCAnonStorey26A;
                // ISSUE: reference to a compiler-generated field
                // ISSUE: reference to a compiler-generated field
                // ISSUE: reference to a compiler-generated field
                // ISSUE: reference to a compiler-generated field
                for (dataCAnonStorey26B.i = 0; dataCAnonStorey26B.i < dataCAnonStorey26A.units.Count; ++dataCAnonStorey26B.i)
                {
                    // ISSUE: reference to a compiler-generated field
                    // ISSUE: reference to a compiler-generated field
                    // ISSUE: reference to a compiler-generated field
                    // ISSUE: reference to a compiler-generated field
                    // ISSUE: reference to a compiler-generated field
                    // ISSUE: reference to a compiler-generated field
                    // ISSUE: reference to a compiler-generated method
                    if (dataCAnonStorey26A.units[dataCAnonStorey26B.i] != null && dataCAnonStorey26A.units[dataCAnonStorey26B.i].Side == EUnitSide.Player && (dataCAnonStorey26A.units[dataCAnonStorey26B.i].UnitType == EUnitType.Unit && player.Units.Find(new Predicate <UnitData>(dataCAnonStorey26B.\u003C\u003Em__2CD)) != null))
                    {
                        // ISSUE: reference to a compiler-generated field
                        // ISSUE: reference to a compiler-generated field
                        UnitData.CharacterQuestParam charaEpisodeData = dataCAnonStorey26A.units[dataCAnonStorey26B.i].UnitData.GetCurrentCharaEpisodeData();
                        if (charaEpisodeData != null)
                        {
                            // ISSUE: reference to a compiler-generated field
                            // ISSUE: reference to a compiler-generated field
                            this.CharacterQuest.Add(dataCAnonStorey26A.units[dataCAnonStorey26B.i].UnitData.UniqueID, charaEpisodeData);
                        }
                    }
                }
            }
            List <UnitData> units1 = player.Units;

            for (int index = 0; index < units1.Count; ++index)
            {
                string str1 = units1[index].UnlockedSkillIds();
                this.SkillUnlocks.Add(units1[index].UniqueID, str1);
                string str2 = units1[index].UnlockedCollaboSkillIds();
                this.CollaboSkillUnlocks.Add(units1[index].UniqueID, str2);
            }
        }