技能系统功能类分为Comnand,Condition,TargetPicker三个
Command命令类主要进行功能实现
该次实现为Command基类,为以后的命令做扩展
public class Command{protected CommandData m_CommandData;public Command(){}public Command(CommandData data){m_CommandData = data;}public virtual void Execute(CommandTrigger trigger, Object arg){}public virtual Reset(){}public virtual Prepare(CommandTrigger trigger){}}
Condition为条件判断类,对各种情况进行条件判断
public class Condition{protected ConditionData m_ConditionData;public Condition(){}public Condition(ConditionData data){m_ConditionData = data;}public virtual bool Check(CommandTrigger trigger, Object arg){}public virtual Prepare(CommandTrigger trigger){}}
public class TargetPicker{protected TargetPickerData m_TargetPickerData;protected List<Entity> mPicked = new List<Entity>();public TargetPicker(){}public TargetPicker(TargetPickerData data){m_TargetPickerData = data;}public List<Entity> GetPicked(){return mPicked;}public virtual List<Entity> Pick(CommandTrigger trigger, Object arg){return mPicked;}public virtual Prepare(CommandTrigger trigger){}}