Esempio n. 1
0
 public static void DownloadQuestMaps(QuestParam quest)
 {
     for (int index1 = 0; index1 < quest.map.Count; ++index1)
     {
         if (!string.IsNullOrEmpty(quest.map[index1].mapSetName))
         {
             string src = AssetManager.LoadTextData(AssetPath.LocalMap(quest.map[index1].mapSetName));
             if (src != null)
             {
                 JSON_MapUnit jsonObject = JSONParser.parseJSONObject <JSON_MapUnit>(src);
                 if ((int)jsonObject.is_rand > 0)
                 {
                     if (jsonObject.deck != null)
                     {
                         for (int index2 = 0; index2 < jsonObject.deck.Length; ++index2)
                         {
                             DownloadUtility.DownloadUnit(new NPCSetting(jsonObject.deck[index2]));
                         }
                     }
                 }
                 else if (jsonObject.enemy != null)
                 {
                     for (int index2 = 0; index2 < jsonObject.enemy.Length; ++index2)
                     {
                         DownloadUtility.DownloadUnit(new NPCSetting(jsonObject.enemy[index2]));
                     }
                 }
             }
         }
     }
 }
Esempio n. 2
0
    public static void DownloadUnit(NPCSetting npc)
    {
        Unit unit = new Unit();

        unit.Setup((UnitData)null, (UnitSetting)npc, (Unit.DropItem)null, (Unit.DropItem)null);
        DownloadUtility.DownloadUnit(unit, false);
    }
        private List <Unit> LoadRankMatchParty()
        {
            PlayerData  player   = MonoSingleton <GameManager> .Instance.Player;
            PartyData   party    = player.Partys[10];
            List <Unit> unitList = new List <Unit>();

            for (int index1 = 0; index1 < party.MAX_UNIT; ++index1)
            {
                long unitUniqueId = party.GetUnitUniqueID(index1);
                if (unitUniqueId != 0L)
                {
                    UnitData unitDataByUniqueId = player.FindUnitDataByUniqueID(unitUniqueId);
                    DownloadUtility.DownloadUnit(unitDataByUniqueId.UnitParam, (JobData[])null);
                    Unit unit   = new Unit();
                    int  index2 = player.GetVersusPlacement(PlayerPrefsUtility.RANKMATCH_ID_KEY + (object)index1);
                    if (index2 < 0 || index2 >= this.CurrentMap.PartyUnitSettings.Count)
                    {
                        index2 = 0;
                    }
                    unit.Setup(unitDataByUniqueId, this.CurrentMap.PartyUnitSettings[index2], (Unit.DropItem)null, (Unit.DropItem)null);
                    unitList.Add(unit);
                }
            }
            return(unitList);
        }
        private List <Unit> LoadMultiTower()
        {
            List <MyPhoton.MyPlayer> roomPlayerList = PunMonoSingleton <MyPhoton> .Instance.GetRoomPlayerList();

            List <Unit> unitList = new List <Unit>();

            if (this.m_Players == null)
            {
                this.m_Players = new List <MyPhoton.MyPlayer>((IEnumerable <MyPhoton.MyPlayer>)roomPlayerList);
            }
            for (int index1 = 0; index1 < roomPlayerList.Count; ++index1)
            {
                JSON_MyPhotonPlayerParam photonPlayerParam = JSON_MyPhotonPlayerParam.Parse(roomPlayerList[index1].json);
                if (photonPlayerParam != null)
                {
                    for (int index2 = 0; index2 < photonPlayerParam.units.Length; ++index2)
                    {
                        if (photonPlayerParam.units[index2] != null && photonPlayerParam.units[index2].sub == 0)
                        {
                            int      index3   = photonPlayerParam.units[index2].place >= 0 ? photonPlayerParam.units[index2].place : index2;
                            UnitData unitdata = new UnitData();
                            if (unitdata != null)
                            {
                                unitdata.Deserialize(photonPlayerParam.units[index2].unitJson);
                                DownloadUtility.DownloadUnit(unitdata.UnitParam, (JobData[])null);
                                Unit unit = new Unit();
                                if (unit != null && unit.Setup(unitdata, this.CurrentMap.PartyUnitSettings[index3], (Unit.DropItem)null, (Unit.DropItem)null))
                                {
                                    unit.OwnerPlayerIndex = photonPlayerParam.playerIndex;
                                    unitList.Add(unit);
                                }
                            }
                        }
                    }
                }
            }
            int count = this.CurrentMap.NPCUnitSettings.Count;
            List <NPCSetting> npcUnitSettings = this.CurrentMap.NPCUnitSettings;

            for (int index = 0; index < count; ++index)
            {
                DownloadUtility.DownloadUnit(npcUnitSettings[index]);
                Unit unit = new Unit();
                if (unit.Setup((UnitData)null, (UnitSetting)npcUnitSettings[index], (Unit.DropItem)null, (Unit.DropItem)null))
                {
                    unitList.Add(unit);
                }
            }
            return(unitList);
        }
        private List <Unit> LoadVersusDraftParty()
        {
            List <Unit> unitList = new List <Unit>();

            for (int index1 = 0; index1 < VersusDraftList.VersusDraftPartyUnits.Count; ++index1)
            {
                UnitData versusDraftPartyUnit = VersusDraftList.VersusDraftPartyUnits[index1];
                DownloadUtility.DownloadUnit(versusDraftPartyUnit.UnitParam, (JobData[])null);
                int index2 = index1;
                if (index2 >= this.CurrentMap.PartyUnitSettings.Count)
                {
                    index2 = 0;
                }
                Unit unit = new Unit();
                unit.Setup(versusDraftPartyUnit, this.CurrentMap.PartyUnitSettings[index2], (Unit.DropItem)null, (Unit.DropItem)null);
                unitList.Add(unit);
            }
            return(unitList);
        }
        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));
            }
        }
        private List <Unit> LoadVersusParty()
        {
            PlayerData  player   = MonoSingleton <GameManager> .Instance.Player;
            PartyData   party    = player.Partys[7];
            List <Unit> unitList = new List <Unit>();

            for (int index = 0; index < party.MAX_UNIT; ++index)
            {
                long unitUniqueId = party.GetUnitUniqueID(index);
                if (unitUniqueId != 0L)
                {
                    UnitData unitDataByUniqueId = player.FindUnitDataByUniqueID(unitUniqueId);
                    DownloadUtility.DownloadUnit(unitDataByUniqueId.UnitParam, (JobData[])null);
                    Unit unit            = new Unit();
                    int  versusPlacement = player.GetVersusPlacement(PlayerPrefsUtility.VERSUS_ID_KEY + (object)index);
                    unit.Setup(unitDataByUniqueId, this.CurrentMap.PartyUnitSettings[versusPlacement], (Unit.DropItem)null, (Unit.DropItem)null);
                    unitList.Add(unit);
                }
            }
            return(unitList);
        }
Esempio n. 8
0
        private void AddAssets()
        {
            GameManager instanceDirect = MonoSingleton <GameManager> .GetInstanceDirect();

            if (this.mQueue != null)
            {
                for (int index = 0; index < this.mQueue.Count; ++index)
                {
                    AssetDownloader.Add(this.mQueue[index].IDStr);
                }
                this.mQueue = (List <AssetList.Item>)null;
            }
            if (this.Download == (FlowNode_DownloadAssets.DownloadAssets) - 1)
            {
                return;
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.Tutorial) != (FlowNode_DownloadAssets.DownloadAssets) 0)
            {
                if ((instanceDirect.Player.TutorialFlags & 1L) != 0L)
                {
                    if (instanceDirect.HasTutorialDLAssets)
                    {
                        instanceDirect.DownloadTutorialAssets();
                    }
                    AssetManager.PrepareAssets("town001");
                }
                else if (BackgroundDownloader.Instance.IsEnabled)
                {
                    this.ProgressBar = false;
                    this.ActivateOutputLinks(10);
                    BackgroundDownloader.Instance.GetRequiredAssets(GameSettings.Instance.Tutorial_Steps[instanceDirect.TutorialStep]);
                }
                else
                {
                    if (instanceDirect.HasTutorialDLAssets)
                    {
                        instanceDirect.DownloadTutorialAssets();
                    }
                    if (!GameUtility.IsDebugBuild || GlobalVars.DebugIsPlayTutorial)
                    {
                        AssetManager.PrepareAssets("PortraitsM/urob");
                        AssetManager.PrepareAssets("op0002exit");
                        AssetManager.PrepareAssets("op0005exit");
                        AssetManager.PrepareAssets("op0006exit");
                    }
                    AssetManager.PrepareAssets("town001");
                    AssetManager.PrepareAssets("UI/QuestAssets");
                }
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.OwnUnits) != (FlowNode_DownloadAssets.DownloadAssets) 0 && ((instanceDirect.Player.TutorialFlags & 1L) != 0L || !BackgroundDownloader.Instance.IsEnabled))
            {
                PlayerData player = MonoSingleton <GameManager> .Instance.Player;
                if (player != null)
                {
                    for (int index = 0; index < player.Units.Count; ++index)
                    {
                        DownloadUtility.DownloadUnit(player.Units[index].UnitParam, player.Units[index].Jobs);
                    }
                }
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.AllUnits) != (FlowNode_DownloadAssets.DownloadAssets) 0)
            {
                MasterParam masterParam    = MonoSingleton <GameManager> .Instance.MasterParam;
                UnitParam[] unitParamArray = masterParam != null?masterParam.GetAllUnits() : (UnitParam[])null;

                if (unitParamArray != null)
                {
                    for (int index = 0; index < unitParamArray.Length; ++index)
                    {
                        DownloadUtility.DownloadUnit(unitParamArray[index], (JobData[])null);
                    }
                }
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.LoginBonus) != (FlowNode_DownloadAssets.DownloadAssets) 0 && ((instanceDirect.Player.TutorialFlags & 1L) != 0L || !BackgroundDownloader.Instance.IsEnabled))
            {
                Json_LoginBonusTable loginBonus28days = MonoSingleton <GameManager> .Instance.Player.LoginBonus28days;
                if (loginBonus28days != null && loginBonus28days.bonus_units != null && loginBonus28days.bonus_units.Length > 0)
                {
                    MasterParam masterParam = MonoSingleton <GameManager> .Instance.MasterParam;
                    foreach (string bonusUnit in loginBonus28days.bonus_units)
                    {
                        DownloadUtility.DownloadUnit(masterParam.GetUnitParam(bonusUnit), (JobData[])null);
                    }
                }
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.Artifacts) != (FlowNode_DownloadAssets.DownloadAssets) 0)
            {
                List <ArtifactData> artifacts = MonoSingleton <GameManager> .Instance.Player.Artifacts;
                if (artifacts != null && artifacts.Count > 0)
                {
                    for (int index = 0; index < artifacts.Count; ++index)
                    {
                        DownloadUtility.DownloadArtifact(artifacts[index].ArtifactParam);
                    }
                }
            }
            for (int index = 0; index < this.AssetPaths.Length; ++index)
            {
                if (!string.IsNullOrEmpty(this.AssetPaths[index]))
                {
                    AssetManager.PrepareAssets(this.AssetPaths[index]);
                }
            }
            if (!Object.op_Inequality((Object)instanceDirect, (Object)null))
            {
                return;
            }
            for (int index = 0; index < this.DownloadUnits.Length; ++index)
            {
                if (!string.IsNullOrEmpty(this.DownloadUnits[index]))
                {
                    UnitParam unitParam = instanceDirect.GetUnitParam(this.DownloadUnits[index]);
                    if (unitParam != null)
                    {
                        DownloadUtility.DownloadUnit(unitParam, (JobData[])null);
                    }
                }
            }
            for (int index = 0; index < this.DownloadQuests.Length; ++index)
            {
                if (!string.IsNullOrEmpty(this.DownloadQuests[index]))
                {
                    QuestParam quest = instanceDirect.FindQuest(this.DownloadQuests[index]);
                    if (quest == null)
                    {
                        DebugUtility.LogError("Can't download " + this.DownloadQuests[index]);
                    }
                    else
                    {
                        DownloadUtility.DownloadQuestBase(quest);
                    }
                }
            }
        }
Esempio n. 9
0
 public void GetRequiredAssets(string tutorialStep)
 {
     if (tutorialStep == "tutorial_start")
     {
         AssetManager.PrepareAssets("PortraitsM/urob");
         if ((long)GlobalVars.BtlID == 0L)
         {
             AssetManager.PrepareAssets("tutorial_start");
         }
         else
         {
             AssetManager.PrepareAssets("UI/QuestAssets");
             AssetManager.PrepareAssets("SkillSplash/splash_base");
             AssetManager.PrepareAssets("SGDevelopment/Tutorial/Tutorial_Guidance");
             AssetManager.PrepareAssets("CHM/F_cmn_jumploop0");
             AssetManager.PrepareAssets("CHM/M_cmn_jumploop0");
             AssetManager.PrepareAssets("CHM/MM_cmn_jumploop0");
             GameManager instance = MonoSingleton <GameManager> .Instance;
             if (instance.HasTutorialDLAssets)
             {
                 instance.DownloadTutorialAssetsByFolder("Effects/");
             }
             if ((long)GlobalVars.BtlID != 200L)
             {
                 return;
             }
             AssetManager.PrepareAssets("StreamingAssets/BGM_0028.acb");
             AssetManager.PrepareAssets("StreamingAssets/BGM_0028.awb");
         }
     }
     else if (tutorialStep == "op0002exit")
     {
         GameManager instance = MonoSingleton <GameManager> .Instance;
         AssetManager.PrepareAssets("op0002exit");
         AssetManager.PrepareAssets("StreamingAssets/tut001b.acb");
         AssetManager.PrepareAssets("StreamingAssets/tut001b.awb");
         AssetManager.PrepareAssets("StreamingAssets/BGM_0002.acb");
         AssetManager.PrepareAssets("StreamingAssets/BGM_0002.awb");
         AssetManager.PrepareAssets("CHM/F_cmn_jumploop0");
         AssetManager.PrepareAssets("CHM/M_cmn_jumploop0");
     }
     else if (tutorialStep == "op0005exit")
     {
         AssetManager.PrepareAssets("op0005exit");
         AssetManager.PrepareAssets("StreamingAssets/0_6b_2d.acb");
         AssetManager.PrepareAssets("StreamingAssets/0_6b_2d.awb");
         AssetManager.PrepareAssets("StreamingAssets/BGM_0002.acb");
         AssetManager.PrepareAssets("StreamingAssets/BGM_0002.awb");
         AssetManager.PrepareAssets("StreamingAssets/BGM_0000.acb");
         AssetManager.PrepareAssets("StreamingAssets/BGM_0000.awb");
         AssetManager.PrepareAssets("StreamingAssets/VO_uroboros.acb");
         AssetManager.PrepareAssets("StreamingAssets/VO_uroboros.awb");
         AssetManager.PrepareAssets("UI/QuestAssets");
         AssetManager.PrepareAssets("SkillSplash/splash_base");
         AssetManager.PrepareAssets("SGDevelopment/Tutorial/Tutorial_Guidance");
         AssetManager.PrepareAssets("CHM/F_cmn_jumploop0");
         AssetManager.PrepareAssets("CHM/M_cmn_jumploop0");
         AssetManager.PrepareAssets("CHM/MM_cmn_jumploop0");
         PlayerData player = MonoSingleton <GameManager> .Instance.Player;
         if (player != null)
         {
             for (int index = 0; index < player.Units.Count; ++index)
             {
                 DownloadUtility.DownloadUnit(player.Units[index].UnitParam, player.Units[index].Jobs);
             }
         }
         GameManager instance = MonoSingleton <GameManager> .Instance;
         if (!instance.HasTutorialDLAssets)
         {
             return;
         }
         instance.DownloadTutorialAssetsByFolder("UI/");
         instance.DownloadTutorialAssetsByFolder("ItemIcon/");
         instance.DownloadTutorialAssetsByFolder("Effects/");
         instance.DownloadTutorialAssetsByFolder("JIN_");
     }
     else
     {
         if (!(tutorialStep == "op0006exit"))
         {
             return;
         }
         AssetManager.PrepareAssets("op0006exit");
         AssetManager.PrepareAssets("StreamingAssets/0_8_2d.acb");
         AssetManager.PrepareAssets("StreamingAssets/0_8_2d.awb");
     }
 }
        private void AddAssets()
        {
            GameManager instanceDirect = MonoSingleton <GameManager> .GetInstanceDirect();

            if (this.mQueue != null)
            {
                for (int index = 0; index < this.mQueue.Count; ++index)
                {
                    AssetDownloader.Add(this.mQueue[index].IDStr);
                }
                this.mQueue = (List <AssetList.Item>)null;
            }
            if (this.Download == (FlowNode_DownloadAssets.DownloadAssets) - 1)
            {
                return;
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.Tutorial) != (FlowNode_DownloadAssets.DownloadAssets) 0 && instanceDirect.HasTutorialDLAssets)
            {
                instanceDirect.DownloadTutorialAssets();
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.OwnUnits) != (FlowNode_DownloadAssets.DownloadAssets) 0)
            {
                PlayerData player = MonoSingleton <GameManager> .Instance.Player;
                if (player != null)
                {
                    for (int index = 0; index < player.Units.Count; ++index)
                    {
                        DownloadUtility.DownloadUnit(player.Units[index].UnitParam, player.Units[index].Jobs);
                        if (player.Units[index].ConceptCard != null)
                        {
                            DownloadUtility.DownloadConceptCard(player.Units[index].ConceptCard.Param);
                        }
                    }
                }
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.AllUnits) != (FlowNode_DownloadAssets.DownloadAssets) 0)
            {
                UnitParam[] allUnits = MonoSingleton <GameManager> .Instance.MasterParam?.GetAllUnits();

                if (allUnits != null)
                {
                    for (int index = 0; index < allUnits.Length; ++index)
                    {
                        DownloadUtility.DownloadUnit(allUnits[index], (JobData[])null);
                    }
                }
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.LoginBonus) != (FlowNode_DownloadAssets.DownloadAssets) 0)
            {
                Json_LoginBonusTable loginBonus28days = MonoSingleton <GameManager> .Instance.Player.LoginBonus28days;
                if (loginBonus28days != null && loginBonus28days.bonus_units != null && loginBonus28days.bonus_units.Length > 0)
                {
                    MasterParam masterParam = MonoSingleton <GameManager> .Instance.MasterParam;
                    foreach (string bonusUnit in loginBonus28days.bonus_units)
                    {
                        DownloadUtility.DownloadUnit(masterParam.GetUnitParam(bonusUnit), (JobData[])null);
                    }
                }
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.Artifacts) != (FlowNode_DownloadAssets.DownloadAssets) 0)
            {
                List <ArtifactData> artifacts = MonoSingleton <GameManager> .Instance.Player.Artifacts;
                if (artifacts != null && artifacts.Count > 0)
                {
                    for (int index = 0; index < artifacts.Count; ++index)
                    {
                        DownloadUtility.DownloadArtifact(artifacts[index].ArtifactParam);
                    }
                }
            }
            if ((this.Download & FlowNode_DownloadAssets.DownloadAssets.OwnConceptCard) != (FlowNode_DownloadAssets.DownloadAssets) 0)
            {
                List <ConceptCardData> conceptCards = MonoSingleton <GameManager> .Instance.Player.ConceptCards;
                if (conceptCards != null && conceptCards.Count > 0)
                {
                    for (int index = 0; index < conceptCards.Count; ++index)
                    {
                        DownloadUtility.DownloadConceptCard(conceptCards[index].Param);
                    }
                }
                List <ConceptCardMaterialData> cardExpMaterials = MonoSingleton <GameManager> .Instance.Player.ConceptCardExpMaterials;
                if (cardExpMaterials != null && cardExpMaterials.Count > 0)
                {
                    for (int index = 0; index < cardExpMaterials.Count; ++index)
                    {
                        DownloadUtility.DownloadConceptCard(cardExpMaterials[index].Param);
                    }
                }
                List <ConceptCardMaterialData> cardTrustMaterials = MonoSingleton <GameManager> .Instance.Player.ConceptCardTrustMaterials;
                if (cardTrustMaterials != null && cardTrustMaterials.Count > 0)
                {
                    for (int index = 0; index < cardTrustMaterials.Count; ++index)
                    {
                        DownloadUtility.DownloadConceptCard(cardTrustMaterials[index].Param);
                    }
                }
            }
            for (int index = 0; index < this.AssetPaths.Length; ++index)
            {
                if (!string.IsNullOrEmpty(this.AssetPaths[index]))
                {
                    AssetManager.PrepareAssets(this.AssetPaths[index]);
                }
            }
            if (!UnityEngine.Object.op_Inequality((UnityEngine.Object)instanceDirect, (UnityEngine.Object)null))
            {
                return;
            }
            for (int index = 0; index < this.DownloadUnits.Length; ++index)
            {
                if (!string.IsNullOrEmpty(this.DownloadUnits[index]))
                {
                    UnitParam unitParam = instanceDirect.GetUnitParam(this.DownloadUnits[index]);
                    if (unitParam != null)
                    {
                        DownloadUtility.DownloadUnit(unitParam, (JobData[])null);
                    }
                }
            }
            for (int index = 0; index < this.DownloadQuests.Length; ++index)
            {
                if (!string.IsNullOrEmpty(this.DownloadQuests[index]))
                {
                    QuestParam quest = instanceDirect.FindQuest(this.DownloadQuests[index]);
                    if (quest == null)
                    {
                        DebugUtility.LogError("Can't download " + this.DownloadQuests[index]);
                    }
                    else
                    {
                        DownloadUtility.DownloadQuestBase(quest);
                    }
                }
            }
        }