当前位置: 代码迷 >> 综合 >> 一个通用高自由度技能系统的设计(三) 功能类基类设计
  详细解决方案

一个通用高自由度技能系统的设计(三) 功能类基类设计

热度:52   发布时间:2024-01-19 07:06:13.0

技能系统功能类分为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){}}


TargetPicker为目标选择类,对触发器触发时需要的目标进行选择

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){}}





  相关解决方案