Exemple #1
0
        public override void OnWaveStart()
        {
            phase = PhilipPhase.Cold;
            Cold  = this.owner.allyCardDetail;
            Hot   = new BattleAllyCardDetail(owner);
            List <DiceCardXmlInfo> list = new List <DiceCardXmlInfo>();

            foreach (int i in Singleton <DeckXmlList> .Instance.GetData(18100001).cardIdList)
            {
                list.Add(ItemXmlDataList.instance.GetCardItem(i));
            }
            Hot.Init(list);
            this._loopSound = SingletonBehavior <SoundEffectManager> .Instance.PlayClip("Creature/Philip_StrongLoop", true);
        }
Exemple #2
0
        public override void OnRoundStart()
        {
            base.OnRoundStart();
            BattleUnitBuf activatedBuf = this.owner.bufListDetail.GetActivatedBuf(KeywordBuf.Burn);

            if (activatedBuf == null || activatedBuf.stack < 10)
            {
                if (phase == PhilipPhase.Hot)
                {
                    Hot = this.owner.allyCardDetail;
                    this.owner.allyCardDetail = Cold;
                    this.owner.allyCardDetail.DrawCards(7);
                    this.owner.view.ChangeSkin("Blue_Philip");
                    this.owner.view.charAppearance.ChangeMotion(ActionDetail.Default);
                    List <PassiveAbilityBase> passive = this.owner.passiveDetail.PassiveList;
                    PassiveAbility_1810004    hot     = passive.Find((Predicate <PassiveAbilityBase>)(x => x is PassiveAbility_1810004)) as PassiveAbility_1810004;
                    hot.Destroy();
                    PassiveAbilityBase cold = new PassiveAbility_1810003(this.owner);
                    passive.Remove(hot);
                    passive.Add(cold);
                    typeof(BattleUnitPassiveDetail).GetField("_passiveList", AccessTools.all).SetValue((object)this.owner.passiveDetail, (object)passive);
                    this.phase = PhilipPhase.Cold;
                }
                return;
            }
            if (phase == PhilipPhase.Cold)
            {
                Cold = this.owner.allyCardDetail;
                this.owner.allyCardDetail = Hot;
                this.owner.allyCardDetail.DrawCards(7);
                SingletonBehavior <BattleSceneRoot> .Instance.currentMapObject.SetRunningState(true);

                SoundEffectPlayer.PlaySound("Battle/Cry_MapChange_One");
                new UnityEngine.GameObject().AddComponent <SpriteFilter_Gaho>().Init("EmotionCardFilter/PhilipFilter", false, 2f);
                this.owner.view.ChangeSkin("Blue_Philip_Burn");
                this.owner.view.charAppearance.ChangeMotion(ActionDetail.S5);
                this.owner.view.StartCoroutine(this.Transformation());
                List <PassiveAbilityBase> passive = this.owner.passiveDetail.PassiveList;
                PassiveAbilityBase        cold    = passive.Find((Predicate <PassiveAbilityBase>)(x => x is PassiveAbility_1810003));
                PassiveAbilityBase        hot     = new PassiveAbility_1810004(this.owner);
                passive.Remove(cold);
                passive.Add(hot);
                typeof(BattleUnitPassiveDetail).GetField("_passiveList", AccessTools.all).SetValue((object)this.owner.passiveDetail, (object)passive);
                this.phase = PhilipPhase.Hot;
            }
        }