public override bool RunScriptCommand()
        {
            bool result = false;
            AdventureDigimonInfo digimonInfo = ClassSingleton <AdventureSceneData> .Instance.GetDigimonInfo(this.charaId);

            if (digimonInfo != null)
            {
                CharacterParams        component  = digimonInfo.model.GetComponent <CharacterParams>();
                InvocationEffectParams component2 = digimonInfo.skillEffectList[this.uniqueSkillIndex].GetComponent <InvocationEffectParams>();
                LightColorChanger      component3 = ClassSingleton <AdventureSceneData> .Instance.adventureLight.GetComponent <LightColorChanger>();

                IEnumerator enumerator = component2.SkillInitialize(ClassSingleton <AdventureSceneData> .Instance.adventureCamera.camera3D, ClassSingleton <AdventureSceneData> .Instance.stage, component3);
                while (enumerator.MoveNext())
                {
                }
                CameraParams component4 = digimonInfo.skillCameraAnimation[this.uniqueSkillIndex].GetComponent <CameraParams>();
                string       text       = digimonInfo.skillEffectSeList[this.uniqueSkillIndex];
                if (null != component && null != component2 && null != component4 && !string.IsNullOrEmpty(text))
                {
                    component.PlayAnimation(CharacterAnimationType.attacks, SkillType.Deathblow, this.uniqueSkillIndex, null, null);
                    component2.transform.position = component.transform.position;
                    component4.transform.position = component.transform.position;
                    AppCoroutine.Start(component2.PlaySkillAnimation(component), new Action(this.OnFinishCommand), false);
                    component4.currentTargetCamera = ClassSingleton <AdventureSceneData> .Instance.adventureCamera.camera3D;
                    component4.PlayCameraAnimation(component, false, false);
                    SoundMng.Instance().TryPlaySE("SE/" + text + "/sound", 0f, false, true, null, -1);
                    base.SetContinueAnalyzeForAnimationWaitTime(this.isWaitFlag);
                    result = true;
                }
            }
            return(result);
        }
Esempio n. 2
0
    public IEnumerator LoadInvocationEffect(string skillInvocation, Action <InvocationEffectParams, string> result)
    {
        BattleDebug.Log("--- 発動スキルエフェクト単体ロード [" + skillInvocation + "] : 開始");
        GameObject skillObject = base.Instantiate <GameObject>(base.stateManager.serverControl.GetInvocationEffectPrefab(skillInvocation));

        yield return(null);

        skillObject.name = skillInvocation;
        skillObject.transform.SetParent(base.battleStateData.skillEffectRoot);
        InvocationEffectParams invocationEffectParams = skillObject.GetComponent <InvocationEffectParams>();
        IEnumerator            skillInit = invocationEffectParams.SkillInitialize(base.hierarchyData.cameraObject.camera3D, base.battleStateData.stageObject, base.hierarchyData.cameraObject.sunLightColorChanger);

        while (skillInit.MoveNext())
        {
            yield return(null);
        }
        skillObject.SetActive(false);
        result(invocationEffectParams, skillInvocation);
        BattleDebug.Log("--- 発動スキルエフェクト単体ロード [" + skillInvocation + "] : 完了");
        yield break;
    }