Exemplo n.º 1
0
    private void CompleteEnemyLoading()
    {
        //IL_0036: Unknown result type (might be due to invalid IL or missing references)
        //IL_0047: Expected O, but got Unknown
        //IL_00b2: Unknown result type (might be due to invalid IL or missing references)
        //IL_00c4: Unknown result type (might be due to invalid IL or missing references)
        SetActive((Enum)UI.OBJ_LOADING, false);
        Transform renderTextureModelTransform = GetRenderTextureModelTransform(UI.TEX_ENEMY);

        if (renderTextureModelTransform != null && MonoBehaviourSingleton <OutGameEffectManager> .IsValid())
        {
            MonoBehaviourSingleton <OutGameEffectManager> .I.ShowSilhoutteffect(renderTextureModelTransform.get_parent(), GetRenderTextureLayer(UI.TEX_ENEMY));
        }
        EnemyTable.EnemyData enemyData = Singleton <EnemyTable> .I.GetEnemyData((uint)questInfo.questData.tableData.GetMainEnemyID());

        if (enemyData != null && enemyData.element < ELEMENT_TYPE.MAX)
        {
            SetVisibleWidgetEffect(UI.TEX_ENEMY, EnemyLoader.GetElementEffectName(enemyData.element));
        }
        if (renderTextureModelTransform != null && MonoBehaviourSingleton <OutGameEffectManager> .IsValid())
        {
            this.StartCoroutine(HideSilhoutteEffect());
        }
        GetCtrl(UI.SPR_LOAD_ROTATE_CIRCLE).set_localRotation(Quaternion.get_identity());
        loadComplete = true;
    }
Exemplo n.º 2
0
    private IEnumerator DoClearEnemyAssets()
    {
        while (isExecutingClearMemory)
        {
            yield return((object)null);
        }
        isExecutingClearMemory = true;
        if (MonoBehaviourSingleton <ResourceManager> .IsValid())
        {
            while (!MonoBehaviourSingleton <ResourceManager> .I.isAllStay)
            {
                yield return((object)null);
            }
            MonoBehaviourSingleton <ResourceManager> .I.cache.ClearObjectCaches(new RESOURCE_CATEGORY[8]
            {
                RESOURCE_CATEGORY.ENEMY_ANIM,
                RESOURCE_CATEGORY.ENEMY_CAMERA,
                RESOURCE_CATEGORY.ENEMY_ICON,
                RESOURCE_CATEGORY.ENEMY_ICON_ITEM,
                RESOURCE_CATEGORY.ENEMY_MATERIAL,
                RESOURCE_CATEGORY.ENEMY_MODEL,
                RESOURCE_CATEGORY.EFFECT_ACTION,
                RESOURCE_CATEGORY.EFFECT_TEX
            });
        }
        EffectManager.ClearPoolObjects();
        EnemyLoader.ClearPoolObjects();
        yield return((object)UnloadUnusedAssets(true));

        isExecutingClearMemory = false;
    }
    }    //IL_0001: Unknown result type (might be due to invalid IL or missing references)

    //IL_0006: Unknown result type (might be due to invalid IL or missing references)


    public void Init(EnemyLoader _loader, Camera render_camrea, bool is_field_quest = false)
    {
        //IL_0038: Unknown result type (might be due to invalid IL or missing references)
        //IL_0056: Unknown result type (might be due to invalid IL or missing references)
        //IL_0088: Unknown result type (might be due to invalid IL or missing references)
        loader       = _loader;
        renderCamera = render_camrea;
        isFieldQuest = is_field_quest;
        animEvent    = new AnimEventProcessor(_loader.animEventData, _loader.animator, this);
        EnemyAnimCtrlProxy enemyAnimCtrlProxy = loader.body.get_gameObject().AddComponent <EnemyAnimCtrlProxy>();

        enemyAnimCtrlProxy.enemyAnimCtrl = this;
        if (isFieldQuest)
        {
            EnemyParam componentInChildren = this.get_gameObject().GetComponentInChildren <EnemyParam>();
            if (componentInChildren != null)
            {
                if (componentInChildren.stampInfos != null && componentInChildren.stampInfos.Length > 0)
                {
                    stepCtrl = this.get_gameObject().AddComponent <CharacterStampCtrl>();
                    stepCtrl.Init(componentInChildren.stampInfos, null, true);
                    stepCtrl.stampDistance = 999f;
                    stepCtrl.effectLayer   = 18;
                }
                Object.DestroyImmediate(componentInChildren);
                componentInChildren = null;
            }
        }
    }
Exemplo n.º 4
0
        public override void LoadContent()
        {
            var abilityIcon = _content.Load <Texture2D>("Battle/AbilityIcon");

            var position = new Vector2(200, 500);

            _actors = _players.Select(c =>
            {
                var player = new Player(_content, position, _graphics.GraphicsDevice)
                {
                    ActorModel     = c,
                    LeftHandWeapon = GetWeapon(c.EquipmentModel.EquipmentType, c.EquipmentModel.LeftHandEquipmentPath),
                    Lower          = !string.IsNullOrEmpty(c.Lower) ? new Clothing(_content.Load <Texture2D>(c.Lower)) : null,
                    Upper          = !string.IsNullOrEmpty(c.Upper) ? new Clothing(_content.Load <Texture2D>(c.Upper)) : null,
                };

                position += new Vector2(200, 0);

                return(player);
            }).Cast <Actor>().ToList();

            var grassTexture = _content.Load <Texture2D>("Battle/Grasses/Grass");

            _background = new Sprite(grassTexture)
            {
                Position = new Vector2(grassTexture.Width / 2, grassTexture.Height / 2),
            };

            EnemyLoader eLoader = new EnemyLoader(_content);

            var enemies = eLoader.Load(EnemyLoader.Areas.CalmLands);

            var enemyPosition = new Vector2(200, 100);

            _actors.AddRange(enemies.Select(c =>
            {
                var enemy = new Enemy(_content, enemyPosition, _graphics.GraphicsDevice)
                {
                    ActorModel     = c,
                    LeftHandWeapon = GetWeapon(c.EquipmentModel.EquipmentType, c.EquipmentModel.LeftHandEquipmentPath),
                };
                enemyPosition += new Vector2(200, 0);

                return(enemy);
            }
                                            ).Cast <Actor>().ToList());

            _actors = _actors.OrderByDescending(c => c.ActorModel.Speed).ToList();

            _battleGUI = new BattleStateGUI(_gameModel);
            _battleGUI.SetAbilities(_actors.First().ActorModel);
            _battleGUI.SetTurns(_actors.Select(c => c.ActorModel).ToList());

            _chatBox = new ChatBox(_gameModel, _content.Load <SpriteFont>("Fonts/Font"));

            if (_conversation != null && _conversation.Count > 0)
            {
                _chatBox.Write(_conversation.First());
            }
        }
Exemplo n.º 5
0
        //Initializes all of the drawable content
        protected override void LoadContent()
        {
            // Create a new SpriteBatch, which can be used to draw textures.
            spriteBatch = new SpriteBatch(GraphicsDevice);

            //Loads sprite content for items
            ItemsSpriteFactory.Instance.LoadAllTextures(Content);

            //Load sprite content for projectiles
            ProjectileSpriteFactory.Instance.LoadAllTextures(Content);

            //Enemy sprite content for items
            EnemySpriteFactory.Instance.LoadAllTextures(Content);

            //NPC sprite content for items
            NPCSpriteFactory.Instance.LoadAllTextures(Content);

            //Loads sprite content for blocks
            BlockSpriteFactory.Instance.LoadAllTextures(Content);

            //Loads content for all items
            ItemLoader.LoadContent();

            //Loads content for all enemies and npcs
            EnemyLoader.LoadContent();

            //Loads content for all blocks
            BlockLoader.LoadContent();
        }
Exemplo n.º 6
0
    protected IEnumerator _Initialize()
    {
        questInfo = (GameSection.GetEventData() as QuestInfoData);
        if (questInfo.questData.tableData.questType == QUEST_TYPE.ORDER)
        {
            QuestItemInfo item = MonoBehaviourSingleton <InventoryManager> .I.GetQuestItem(questInfo.questData.tableData.questID);

            if (item != null)
            {
                GameSaveData.instance.RemoveNewIconAndSave(ITEM_ICON_TYPE.QUEST_ITEM, item.uniqueID);
            }
        }
        LoadingQueue load_queue = new LoadingQueue(this);

        if (questInfo != null)
        {
            EnemyTable.EnemyData enemy_data = Singleton <EnemyTable> .I.GetEnemyData((uint)questInfo.questData.tableData.GetMainEnemyID());

            if (enemy_data != null)
            {
                EnemyLoader.CacheUIElementEffect(load_queue, enemy_data.element);
            }
        }
        load_queue.CacheEffect(RESOURCE_CATEGORY.EFFECT_UI, "ef_ui_questselect_new");
        load_queue.CacheEffect(RESOURCE_CATEGORY.EFFECT_UI, "ef_ui_questselect_complete");
        if (load_queue.IsLoading())
        {
            yield return((object)load_queue.Wait());
        }
    }
    private void Init(UITexture ui_tex, float fov, LOADER_TYPE loader_type = LOADER_TYPE.ITEM)
    {
        //IL_0071: Unknown result type (might be due to invalid IL or missing references)
        //IL_008c: Unknown result type (might be due to invalid IL or missing references)
        //IL_00a7: Unknown result type (might be due to invalid IL or missing references)
        //IL_00c2: Unknown result type (might be due to invalid IL or missing references)
        if (model == null)
        {
            uiTexture       = ui_tex;
            uiRenderTexture = UIRenderTexture.Get(ui_tex, fov, false, -1);
            model           = Utility.CreateGameObject("UIModel", uiRenderTexture.modelTransform, uiRenderTexture.renderLayer);
            switch (loader_type)
            {
            case LOADER_TYPE.PLAYER:
                playerLoader = model.get_gameObject().AddComponent <PlayerLoader>();
                break;

            case LOADER_TYPE.NPC:
                npcLoader = model.get_gameObject().AddComponent <NPCLoader>();
                break;

            case LOADER_TYPE.ITEM:
                itemLoader = model.get_gameObject().AddComponent <ItemLoader>();
                break;

            case LOADER_TYPE.ENEMY:
                enemyLoader = model.get_gameObject().AddComponent <EnemyLoader>();
                break;
            }
            modelLayer = uiRenderTexture.renderLayer;
        }
    }
Exemplo n.º 8
0
    void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject.tag == "Arrow")
        {
            Destroy(gameObject);

            EnemyLoader.removeEnemy();
        }
    }
Exemplo n.º 9
0
    //Called if mole collides with object
    void OnCollisionEnter2D(Collision2D collision)
    {
        //If mole is shot, despawn
        if (collision.gameObject.tag == "Arrow")
        {
            Destroy(gameObject);

            EnemyLoader.removeEnemy();
        }
    }
Exemplo n.º 10
0
 void Awake()
 {
     if (I == null)
     {
         I = this;
     }
     else
     {
         Destroy(gameObject);
     }
 }
Exemplo n.º 11
0
 public void ClearPoolObjects()
 {
     EffectManager.ClearPoolObjects();
     CoopNetworkManager.ClearPoolObjects();
     ChatNetworkManager.ClearPoolObjects();
     TargetMarkerManager.ClearPoolObjects();
     EnemyLoader.ClearPoolObjects();
     InstantiateManager.ClearPoolObjects();
     ResourceObject.ClearPoolObjects();
     PackageObject.ClearPoolObjects();
     DelayUnloadAssetBundle.ClearPoolObjects();
 }
Exemplo n.º 12
0
    protected EnemyLoader LoadEnemy(Transform parent, int model_id, int anim_id, float displayScale, string base_effect, string base_effect_node)
    {
        //IL_000c: Unknown result type (might be due to invalid IL or missing references)
        //IL_0011: Expected O, but got Unknown
        GameObject  val         = Utility.CreateGameObject("Enemy", parent, -1).get_gameObject();
        EnemyLoader enemyLoader = val.AddComponent <EnemyLoader>();

        enemyLoader.StartLoad(model_id, anim_id, 1f, base_effect, base_effect_node, false, true, false, SHADER_TYPE.NORMAL, -1, null, false, false, null);
        enemyLoader.DisplayGachaScale = displayScale;
        objects.Add(enemyLoader);
        return(enemyLoader);
    }
Exemplo n.º 13
0
 public void CombatStart()
 {
     if (combatStarted == false)
     {
         level                    = levelManager.activeLevel;
         enemyLoader              = level.GetComponent <EnemyLoader>();
         enemy                    = enemyLoader.activeEnemy;
         combatStarted            = true;
         adventurerAttackTimer    = (1 - ((adventurer.stats.dexBase + adventurer.stats.dexMod) / 125f));
         enemyAttackTimer         = (1 - (enemy.stats.dexBase / 125f));
         levelManager.activeEnemy = enemyLoader.activeEnemy;
     }
 }
Exemplo n.º 14
0
    IEnumerator SpawnTimer()
    {
        int randSpawnPoint = Random.Range(0, SpawnPoints.Length);

        Instantiate(enemy, SpawnPoints[randSpawnPoint].position, transform.rotation);

        EnemyLoader.addEnemy();

        allowSpawn = false;
        yield return(new WaitForSeconds(3f));

        allowSpawn = true;
    }
 // Update is called once per frame
 void Update()
 {
     for (int i = 0; i < levels.Count; i++)
     {
         if (levelButton[i].justClicked == true)
         {
             LevelDisable();
             activeLevel                = levels[i];
             enemyLoader                = levels[i].GetComponent <EnemyLoader>();
             levels[i].active           = true;
             levelButton[i].justClicked = false;
             levelButton[i].activeLevel = true;
             levelActive                = true;
             break;
         }
     }
 }
Exemplo n.º 16
0
        public List <AEnemy> GetEnemies()
        {
            List <AEnemy> enemies = new List <AEnemy>();

            foreach (EnemyObjectInfo eInfo in mapInfo.EnemyObjects)
            {
                AEnemy enemy = EnemyLoader.Create(eInfo.Type);
                enemy.LoadEnemy(eInfo.Destination, eInfo.Source);
                enemy.Load();
                enemies.Add(enemy);
            }
            //BlockEnemy enemy = new BlockEnemy();
            //enemy.Init();
            //enemy.Load();
            //enemies.Add(enemy);

            return(enemies);
        }
Exemplo n.º 17
0
    protected void PlayEnemyAnimation(EnemyLoader enemyLoader, string animStateName)
    {
        Animator val = null;

        if (enemyLoader != null)
        {
            val = enemyLoader.GetAnimator();
        }
        if (val != null)
        {
            int num = Animator.StringToHash(animStateName);
            if (val.HasState(0, num))
            {
                val.set_enabled(true);
                val.Play(num, 0, 0f);
                val.Update(0f);
            }
        }
    }
 private void DeleteModel()
 {
     //IL_00a8: Unknown result type (might be due to invalid IL or missing references)
     if (model != null)
     {
         if (playerLoader != null)
         {
             playerLoader.DeleteLoadedObjects();
             Object.Destroy(playerLoader);
             playerLoader = null;
         }
         if (enemyLoader != null)
         {
             enemyLoader.DeleteLoadedObjects();
             Object.Destroy(enemyLoader);
             enemyLoader   = null;
             enemyAnimCtrl = null;
         }
         if (itemLoader != null)
         {
             itemLoader.Clear();
             Object.Destroy(itemLoader);
             itemLoader = null;
         }
         Object.Destroy(model.get_gameObject());
         model = null;
         if (uiRenderTexture != null && uiRenderTexture.postEffectFilter != null)
         {
             uiRenderTexture.postEffectFilter = null;
         }
     }
     if (coroutine != null)
     {
         this.StopCoroutine(coroutine);
         coroutine = null;
     }
 }
Exemplo n.º 19
0
    protected void CheckAndReplaceShader(EnemyLoader enemyLoader)
    {
        Shader val = null;

        if (enemyLoader.bodyID == 2023)
        {
            val = ResourceUtility.FindShader("mobile/Custom/enemy_reflective_simple");
        }
        if (val != null)
        {
            enemyLoader.body.GetComponentsInChildren <Renderer>(Temporary.rendererList);
            for (int i = 0; i < Temporary.rendererList.Count; i++)
            {
                Renderer val2 = Temporary.rendererList[i];
                if (val2 is MeshRenderer || val2 is SkinnedMeshRenderer)
                {
                    for (int j = 0; j < val2.get_materials().Length; j++)
                    {
                        val2.get_materials()[j].set_shader(val);
                    }
                }
            }
        }
    }
Exemplo n.º 20
0
    private IEnumerator DoQuestGacha()
    {
        m_isSkipAll = false;
        Init();
        SetLinkCamera(true);
        EnemyLoader[]               enemyLoaderList = new EnemyLoader[11];
        EnemyTable.EnemyData[]      enemy_datas     = new EnemyTable.EnemyData[11];
        QuestTable.QuestTableData[] quest_datas     = new QuestTable.QuestTableData[11];
        if (MonoBehaviourSingleton <GachaManager> .IsValid() && MonoBehaviourSingleton <GachaManager> .I.gachaResult != null)
        {
            int i = 0;
            for (int n2 = MonoBehaviourSingleton <GachaManager> .I.gachaResult.reward.Count; i < n2; i++)
            {
                GachaResult.GachaReward reward = MonoBehaviourSingleton <GachaManager> .I.gachaResult.reward[i];
                uint reward_quest_id           = (uint)reward.itemId;
                quest_datas[i] = Singleton <QuestTable> .I.GetQuestData(reward_quest_id);

                if (quest_datas[i] != null)
                {
                    enemy_datas[i] = Singleton <EnemyTable> .I.GetEnemyData((uint)quest_datas[i].GetMainEnemyID());

                    if (enemy_datas[i] == null)
                    {
                        Log.Error("EnemyTable[{0}] == null", quest_datas[i].GetMainEnemyID());
                    }
                }
                else
                {
                    Log.Error("QuestTable[{0}] == null", reward.itemId);
                    quest_datas[i] = new QuestTable.QuestTableData();
                    enemy_datas[i] = new EnemyTable.EnemyData();
                }
            }
        }
        NPCLoader npc_loader = LoadNPC();

        npc_loader.Load(Singleton <NPCTable> .I.GetNPCData(2).npcModelID, 0, false, true, SHADER_TYPE.NORMAL, null);
        int n = 0;

        for (int m = 11; n < m; n++)
        {
            float scale         = enemy_datas[n].modelScale;
            int   displayAnimID = enemy_datas[n].animId;
            int   modelID       = enemy_datas[n].modelId;
            OutGameSettingsManager.EnemyDisplayInfo displayInfo = MonoBehaviourSingleton <OutGameSettingsManager> .I.SearchEnemyDisplayInfoForGacha(enemy_datas[n]);

            if (displayInfo != null)
            {
                displayAnimID = displayInfo.animID;
                scale         = displayInfo.gachaScale;
            }
            enemyLoaderList[n] = LoadEnemy(enemyPositions[n], modelID, displayAnimID, scale, enemy_datas[n].baseEffectName, enemy_datas[n].baseEffectNode);
        }
        int l = 0;

        for (int k = 11; l < k; l++)
        {
            while (enemyLoaderList[l].isLoading)
            {
                yield return((object)null);
            }
            enemyLoaderList[l].ApplyGachaDisplayScaleToParentNode();
            CheckAndReplaceShader(enemyLoaderList[l]);
            enemyLoaderList[l].get_gameObject().SetActive(false);
        }
        LoadingQueue lo_queue = new LoadingQueue(this);

        CacheAudio(lo_queue);
        for (int j = 0; j < 11; j++)
        {
            CacheEnemyAudio(enemy_datas[j], lo_queue);
        }
        while (npc_loader.isLoading)
        {
            yield return((object)null);
        }
        while (lo_queue.IsLoading())
        {
            yield return((object)null);
        }
        PlayerAnimCtrl npc_anim = PlayerAnimCtrl.Get(npc_loader.animator, PLCA.IDLE_01, null, null, null);

        CreateNPCEffect(npc_loader.model);
        yield return((object)null);

        stageAnimator.set_cullingMode(0);
        stageAnimator.Rebind();
        stageAnimator.Play("StageAnim_Main");
        Play("MainAnim_Start", null, 0f);
        PlayEffect(startEffectPrefabs[0]);
        npc_anim.Play(PLCA.QUEST_GACHA, true);
        PlayAudio(AUDIO.OPENING_01);
        while (Step(0.5f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.OPENING_02);
        PlayAudio(AUDIO.OPENING_03);
        while (Step(1.4f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.OPENING_04);
        while (Step(2.6f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.DOOR_01);
        while (Step(3.2f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.DOOR_02);
        while (Step(3.38f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.MAGI_INTRO_01);
        while (Step(5.1f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.MAGI_INTRO_02);
        while (Step(5.5f))
        {
            yield return((object)null);
        }
        PlayEffect(startEffectPrefabs[1]);
        Transform[] magic_effects = (Transform[])new Transform[11];
        Transform[] end_effects   = (Transform[])new Transform[11];
        int         meteor_step   = 0;
        int         magic_step    = 0;
        int         max_step      = 11;

        time -= Time.get_deltaTime();
        while (meteor_step < max_step || magic_step < max_step)
        {
            time += Time.get_deltaTime();
            if (meteor_step < max_step && meteorTimings[meteor_step] <= time)
            {
                PlayEffect(magicCircles[meteor_step], meteorEffectPrefabs[quest_datas[meteor_step].rarity.ToRarityExpressionID()]);
                if (meteor_step == max_step - 1)
                {
                    PlayAudio(AUDIO.METEOR_01);
                }
                meteor_step++;
            }
            if (magic_step < max_step && magicTimings[magic_step] <= time)
            {
                magic_effects[magic_step] = PlayEffect(magicCircles[magic_step], magicEffectPrefabs[quest_datas[magic_step].rarity.ToRarityExpressionID()]);
                PlayMagicAudio((int)quest_datas[magic_step].rarity);
                magic_step++;
            }
            yield return((object)null);
        }
        int idx = magic_step - 1;

        if (idx < max_step && idx >= 0)
        {
            PlayMagicAudio((int)quest_datas[idx].rarity);
        }
        while (Step(13.5f))
        {
            yield return((object)null);
        }
        if (skip && !m_isSkipAll)
        {
            if (MonoBehaviourSingleton <TransitionManager> .I.isChanging)
            {
                yield return((object)null);
            }
            Time.set_timeScale(1f);
            skip = false;
            time = 13.5f;
            yield return((object)MonoBehaviourSingleton <TransitionManager> .I.In());

            sectionCommandReceiver.ActivateSkipButton();
        }
        ActivateFirstSkipFlag();
        int         end_step           = 0;
        float       end_time2          = 13.5f;
        float       end_step_time      = 1.5f;
        float       end_step_time_last = 2f;
        RARITY_TYPE rarity_type;

        while (true)
        {
            sectionCommandReceiver.OnHideRarity();
            PlayAudio(AUDIO.RARITY_EXPOSITION);
            if (end_step > 0)
            {
                int prevIndex = end_step - 1;
                if (enemyLoaderList[prevIndex] != null)
                {
                    enemyLoaderList[prevIndex].get_gameObject().SetActive(false);
                }
                if (magic_effects[prevIndex] != null)
                {
                    Object.Destroy(magic_effects[prevIndex].get_gameObject());
                    magic_effects[prevIndex] = null;
                }
                if (end_effects[prevIndex] != null)
                {
                    Object.Destroy(end_effects[prevIndex].get_gameObject());
                    end_effects[prevIndex] = null;
                }
            }
            EnemyLoader nowEnemyLoader = enemyLoaderList[end_step];
            nowEnemyLoader.get_gameObject().SetActive(true);
            if (!skip)
            {
                string stateName = "Base Layer.GACHA_11";
                if (end_step == enemyLoaderList.Length - 1)
                {
                    stateName = "Base Layer.GACHA_SINGLE";
                }
                PlayEnemyAnimation(nowEnemyLoader, stateName);
            }
            rarity_type = quest_datas[end_step].rarity;
            int effect_rarity = rarity_type.ToRarityExpressionID();
            if (rarity_type == RARITY_TYPE.SS)
            {
                effect_rarity = 3;
            }
            end_effects[end_step] = PlayEffect(magicCircles[end_step], endEffectPrefabs[effect_rarity]);
            Play($"MainAnim_End_{end_step + 1:D2}", null, 0f);
            bool is_short = end_step < 11;
            PlayAppearAudio(rarity_type, is_short);
            if (enemy_datas.Length > end_step)
            {
                PlayEnemyAudio(enemy_datas[end_step], is_short);
            }
            end_step++;
            if (end_step >= 11)
            {
                break;
            }
            float waitTime = 0f;
            while (waitTime < showRarityWaitTime)
            {
                waitTime += Time.get_deltaTime();
                if (base.IsSkipAppearEnemy)
                {
                    waitTime = showRarityWaitTime;
                }
                yield return((object)null);
            }
            if (!base.IsSkipAppearEnemy)
            {
                sectionCommandReceiver.OnShowRarity(rarity_type);
            }
            end_time2 += end_step_time;
            while (Step(end_time2))
            {
                if (base.IsSkipAppearEnemy)
                {
                    time = end_time2;
                }
                yield return((object)null);
            }
            sectionCommandReceiver.ActivateSkipButton();
            ResetSkipAppearEnemyFlag();
        }
        yield return((object)new WaitForSeconds(lastShowRarityWaitTime));

        sectionCommandReceiver.OnShowRarity(rarity_type);
        end_time2 += end_step_time_last;
        while (Step(end_time2))
        {
            yield return((object)null);
        }
        if (skip)
        {
            while (MonoBehaviourSingleton <TransitionManager> .I.isChanging)
            {
                yield return((object)null);
            }
            int lastIndex = enemyLoaderList.Length - 1;
            if (lastIndex >= 0)
            {
                PlayEnemyAnimation(enemyLoaderList[lastIndex], "Base Layer.IDLE");
            }
            Time.set_timeScale(1f);
            if (MonoBehaviourSingleton <TransitionManager> .I.isTransing)
            {
                yield return((object)MonoBehaviourSingleton <TransitionManager> .I.In());
            }
        }
        else
        {
            skip = true;
        }
        sectionCommandReceiver.OnHideRarity();
        Time.set_timeScale(1f);
        sectionCommandReceiver.OnEnd();
    }
Exemplo n.º 21
0
    private IEnumerator DoQuestGacha()
    {
        Init();
        int display_rarity = 0;

        SetLinkCamera(true);
        int enemy_id = 0;

        EnemyTable.EnemyData enemy_data = null;
        if (MonoBehaviourSingleton <GachaManager> .I.gachaResult != null)
        {
            GachaResult.GachaReward reward       = MonoBehaviourSingleton <GachaManager> .I.gachaResult.reward[0];
            uint reward_quest_id                 = (uint)reward.itemId;
            QuestTable.QuestTableData quest_data = Singleton <QuestTable> .I.GetQuestData(reward_quest_id);

            if (quest_data != null)
            {
                enemy_data = Singleton <EnemyTable> .I.GetEnemyData((uint)quest_data.GetMainEnemyID());
            }
        }
        if (enemy_data == null)
        {
            if (enemy_id == 0)
            {
                enemy_id = 1101001;
            }
            enemy_data = Singleton <EnemyTable> .I.GetEnemyData((uint)enemy_id);
        }
        NPCLoader   npc_loader   = LoadNPC();
        EnemyLoader enemy_loader = null;

        if (enemy_data != null)
        {
            int displayAnimID = enemy_data.animId;
            OutGameSettingsManager.EnemyDisplayInfo displayInfo = MonoBehaviourSingleton <OutGameSettingsManager> .I.SearchEnemyDisplayInfoForGacha(enemy_data);

            int   modelID      = enemy_data.modelId;
            float displayScale = enemy_data.modelScale;
            if (displayInfo != null)
            {
                displayAnimID = displayInfo.animID;
                displayScale  = displayInfo.gachaScale;
            }
            enemy_loader = LoadEnemy(enemyPosition, modelID, displayAnimID, displayScale, enemy_data.baseEffectName, enemy_data.baseEffectNode);
            while (enemy_loader.isLoading)
            {
                yield return((object)null);
            }
            enemy_loader.ApplyGachaDisplayScaleToParentNode();
            CheckAndReplaceShader(enemy_loader);
            enemy_loader.get_gameObject().SetActive(false);
        }
        while (npc_loader.isLoading)
        {
            yield return((object)null);
        }
        LoadingQueue lo_queue = new LoadingQueue(this);

        CacheAudio(lo_queue);
        if (enemy_data != null)
        {
            CacheEnemyAudio(enemy_data, lo_queue);
        }
        while (lo_queue.IsLoading())
        {
            yield return((object)null);
        }
        PlayerAnimCtrl npc_anim = PlayerAnimCtrl.Get(npc_loader.animator, PLCA.IDLE_01, null, null, null);

        CreateNPCEffect(npc_loader.model);
        yield return((object)null);

        stageAnimator.set_cullingMode(0);
        stageAnimator.Rebind();
        targetRarity = MonoBehaviourSingleton <GachaManager> .I.GetMaxRarity().ToRarityExpressionID() + 1;

        if (targetRarity > 4)
        {
            targetRarity = 4;
        }
        stageAnimator.Play("StageAnim_Main");
        Play("MainAnim_Start", null, 0f);
        PlayEffect(startEffectPrefabs[0]);
        npc_anim.Play(PLCA.QUEST_GACHA, true);
        bool rankup3 = UpdateDisplayRarity(ref display_rarity);

        PlayAudio(AUDIO.OPENING_01);
        while (Step(0.5f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.OPENING_02);
        PlayAudio(AUDIO.OPENING_03);
        while (Step(1.4f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.OPENING_04);
        while (Step(2.6f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.DOOR_01);
        while (Step(3.2f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.DOOR_02);
        while (Step(3.38f))
        {
            yield return((object)null);
        }
        PlayAudio(AUDIO.MAGI_INTRO_01);
        while (Step(6.5f))
        {
            yield return((object)null);
        }
        npc_loader.get_gameObject().SetActive(false);
        PlayMeteorEffect(display_rarity);
        PlayAudio(AUDIO.METEOR_01);
        while (Step(7.5f))
        {
            yield return((object)null);
        }
        PlayMagicEffect(display_rarity, rankup3);
        PlayMagicAudio(display_rarity);
        rankup3 = UpdateDisplayRarity(ref display_rarity);
        PlayMeteorEffect(display_rarity);
        while (Step(8.5f))
        {
            yield return((object)null);
        }
        PlayMagicEffect(display_rarity, rankup3);
        PlayMagicAudio(display_rarity);
        rankup3 = UpdateDisplayRarity(ref display_rarity);
        PlayMeteorEffect(display_rarity);
        PlayAudio(AUDIO.METEOR_02);
        while (Step(9.5f))
        {
            yield return((object)null);
        }
        PlayMagicEffect(display_rarity, rankup3);
        PlayMagicAudio(display_rarity);
        while (Step(10.5f))
        {
            yield return((object)null);
        }
        if (enemy_loader != null)
        {
            enemy_loader.get_gameObject().SetActive(true);
        }
        if (!skip)
        {
            PlayEnemyAnimation(enemy_loader, "Base Layer.GACHA_SINGLE");
        }
        Play("MainAnim_End", null, 0f);
        UpdateDisplayRarity(ref display_rarity);
        PlayEndEffect(display_rarity);
        RARITY_TYPE rarity = MonoBehaviourSingleton <GachaManager> .I.GetMaxRarity();

        PlayAppearAudio(rarity, false);
        if (enemy_data != null)
        {
            PlayEnemyAudio(enemy_data, false);
        }
        while (Step(11.5f))
        {
            yield return((object)null);
        }
        while (Step(13f))
        {
            yield return((object)null);
        }
        if (skip)
        {
            while (MonoBehaviourSingleton <TransitionManager> .I.isChanging)
            {
                yield return((object)null);
            }
            PlayEnemyAnimation(enemy_loader, "Base Layer.IDLE");
            Time.set_timeScale(1f);
            if (MonoBehaviourSingleton <TransitionManager> .I.isTransing)
            {
                yield return((object)MonoBehaviourSingleton <TransitionManager> .I.In());
            }
        }
        else
        {
            skip = true;
        }
        Time.set_timeScale(1f);
        sectionCommandReceiver.OnEnd();
    }
Exemplo n.º 22
0
    public void Init()
    {
        //PlayerPrefs.DeleteAll();
        Debug.Log("LOAD XMLs");
        GameStatsLoader gameStatsLoader = new GameStatsLoader();

        GameStatsInfos = gameStatsLoader.GetDict();

        PlayerLoader playerLoader = new PlayerLoader();

        PlayerInfos = playerLoader.GetDict();

        EnemyLoader enemyLoader = new EnemyLoader();

        EnemyInfos = enemyLoader.GetDict();

        WeaponLoader weaponLoader = new WeaponLoader();

        WeaponInfos = weaponLoader.GetDict();

        PowerUpLoader powerUpLoader = new PowerUpLoader();

        PowerUpInfos = powerUpLoader.GetDict();

        HatLoader hatLoader = new HatLoader();

        HatInfos = hatLoader.GetDict();

        SkillLoader skillLoader = new SkillLoader();

        SkillInfos = skillLoader.GetDict();

        if (GameStatsInfos != null)
        {
            gameStatsLoaded = true;
        }
        if (PlayerInfos != null)
        {
            playersLoaded = true;
        }
        if (EnemyInfos != null)
        {
            enemiesLoaded = true;
        }
        if (WeaponInfos != null)
        {
            weaponsLoaded = true;
        }
        if (PowerUpInfos != null)
        {
            powerUpsLoaded = true;
        }
        if (HatInfos != null)
        {
            hatsLoaded = true;
        }
        if (SkillInfos != null)
        {
            skillsLoaded = true;
        }
    }