Skill

    xiaoxiao2021-03-25  171

    using UnityEngine; using System.Collections; using System.Collections.Generic; public enum SkillTypes{ BornSkill = 0, //降临技能 NormalSkill = 1, // 普通攻击技能 AttackSkill = 2, // 攻击技能 SuperSkill = 3, // 大招 } public enum SkillHitTypes { //HitType: 击中类型(0:对敌方目标 1:敌方范围 2:友方目标 3:友方范围 4:自己); SelectedEnemy = 0, ScaleEnemy = 1, SelectedFriend = 2, ScaleFriend = 3, Self = 4, }; public enum SkillHitSharpTypes {//HitSharpType: 攻击范围类型(0:对目标 1:圆形 2:扇形); None = 0, Circle = 1, Fan = 2, }; public enum SkillEffectTypes { ImmedDamage = 0, // 立即伤害 ImmedHeal = 1, // 治疗 AddBuff = 2, // 添加buff Sneer = 3, // 嘲讽 HitDown = 4, // 击倒 HitOut = 5, // 击飞 }; public class Skill { //public float AttackDist; public int SkillId ; private SkillData m_SkillBaseData; public SkillData BaseData{ get{ return m_SkillBaseData; } } public string SkillName{ get{return m_SkillBaseData.Name;} } public SkillTypes SkillType{ get{return (SkillTypes)m_SkillBaseData.SkillType;} } public string Icon{ get{return m_SkillBaseData.Icon;} } public bool CoolDown = false; public float CDTime{ get{return m_SkillBaseData.CDTime;} } public float AttackDist{ get{return m_SkillBaseData.AttackDist;} } public int HitNum{ get{return m_SkillBaseData.HitNum;} } public float AttackRadius{ get{return m_SkillBaseData.AttackRadius;} } public float AttackAngel{ get{return m_SkillBaseData.AttackAngle;} } public SkillHitTypes HitType{ get{return (SkillHitTypes)m_SkillBaseData.HitType;} } public SkillHitSharpTypes HitSharpType{ get{return (SkillHitSharpTypes)m_SkillBaseData.HitSharpType;} } public int BpNeed{ get{return m_SkillBaseData.BpNeed;} } public List<SkillEffectData> EffectList{ get{return m_SkillBaseData.EffectList;} } public Skill(int dataId){ SkillId = dataId; m_SkillBaseData = DataManager.s_SkillDataManager.GetData(dataId); if (m_SkillBaseData == null) { Debug.LogError("SkillData is null,dataID="+dataId); return ; } //return m_SkillBaseData; } private GameObject m_SkillCaster= null; private GameObject m_SkillTarget = null; public void SetSkillCaster(GameObject m,GameObject tar){ m_SkillCaster = m; m_SkillTarget = tar; } public void SetCD(){ CoolDown = true; TimerManager.Instance.AddTimer ("Skill" + m_SkillCaster.gameObject.name + SkillId.ToString (), CDTime, ResetCD, null); } void ResetCD(params object[] args){ CoolDown = false; } }
    转载请注明原文地址: https://ju.6miu.com/read-9289.html

    最新回复(0)