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

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





评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值