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