using System; using Fort23.Core; namespace GameLogic.Combat.Skill { [Flags] public enum SkillFeaturesType { Null = 0, // 金 Gold = 1, // 木 Wood = 2, // 水 Water = 4, // 火 Fire = 8, // 土 Earth = 16, } public class SkillFeaturesData : CObject { /// /// 防御值 /// public int def; /// /// 生命值 /// public int hp; public bool isEnemy; public SkillFeaturesType SkillFeaturesType; public int GetRestrained(SkillFeaturesType targetSkillFeaturesType) { int c = 0; if (SkillFeaturesType.HasFlag(SkillFeaturesType.Gold)) { if (targetSkillFeaturesType.HasFlag(SkillFeaturesType.Wood)) { c++; } } if (SkillFeaturesType.HasFlag(SkillFeaturesType.Wood)) { if (targetSkillFeaturesType.HasFlag(SkillFeaturesType.Earth)) { c++; } } if (SkillFeaturesType.HasFlag(SkillFeaturesType.Water)) { if (targetSkillFeaturesType.HasFlag(SkillFeaturesType.Fire)) { c++; } } if (SkillFeaturesType.HasFlag(SkillFeaturesType.Fire)) { if (targetSkillFeaturesType.HasFlag(SkillFeaturesType.Gold)) { c++; } } if (SkillFeaturesType.HasFlag(SkillFeaturesType.Earth)) { if (targetSkillFeaturesType.HasFlag(SkillFeaturesType.Wood)) { c++; } } return c; } public SkillFeaturesData CapyFeaturesData() { SkillFeaturesData skillFeaturesData = CObjectPool.Instance.Fetch(); skillFeaturesData.hp = hp; skillFeaturesData.def = def; skillFeaturesData.isEnemy = isEnemy; skillFeaturesData.SkillFeaturesType = SkillFeaturesType; return skillFeaturesData; } public override void ActiveObj() { } public override void DormancyObj() { } } }