using UnityEngine; using Wizard.Battle.View.Vfx; public class Skill_change_super_skybound_art_count : SkillBase { private const string EFFECT_FILE_NAME = "stt_act_costdown_1"; private const string SE_FILE_NAME = "se_stt_act_costdown_1"; public const int DEFAULT_SUPER_SKYBOUND_ART_COUNT = 15; public Skill_change_super_skybound_art_count(SkillParameter skillPrm, string option) : base(skillPrm, option) { } public override VfxWithLoading Start(CallParameter parameter) { int num = base.OptionValue.GetInt(SkillFilterCreator.ContentKeyword.gain_super_skybound_art_count, -1); VfxWithLoadingSequential vfxWithLoadingSequential = VfxWithLoadingSequential.Create(); foreach (BattleCardBase targetCard in parameter.targetCards) { if (!BattleManagerBase.GetIns().IsVirtualBattle) { targetCard.SkillApplyInformation.GiveSuperSkyboundArtCount(new SuperSkyboundArtCountAddModifier(-num)); } if (targetCard.HasSuperSkyboundArt && (targetCard.IsPlayer || GameMgr.GetIns().IsAdminWatch)) { GameObject effectGameObject = null; vfxWithLoadingSequential.RegisterToLoadingVfx(new WaitLoadEffectAndSetSeVfx("stt_act_costdown_1", "se_stt_act_costdown_1", delegate(GameObject e) { effectGameObject = e; })); vfxWithLoadingSequential.RegisterToMainVfx(new PlayEffectAndSeVfx(() => effectGameObject, targetCard.BattleCardView.Transform, isFollow: false, isFollowPosition: false, isFollowAll: true)); } } return vfxWithLoadingSequential; } public int GetGainSkyboundArtCount() { return base.OptionValue.GetInt(SkillFilterCreator.ContentKeyword.gain_super_skybound_art_count, 0); } }