📄 arsaction.h
字号:
#pragma once
#include "ARSUtility.h"
//////////////////////////////////////////////////////////////////////////
//ARSAction 动作基类
// TAO [11/19/2007]
//////////////////////////////////////////////////////////////////////////
using namespace std;
class ARSAction;
typedef ARSAction* (*POINTER_CREATEACTION_FUNC)(); //新建动作类函数指针
//动作类注册项
struct REGISTACTIONITEM
{
char name[32];
POINTER_CREATEACTION_FUNC pfnCreateAction;
ARSAction *pAction;
};
//ARSAction 动作基类
class ARSAction
{
public:
ARSAction();
~ARSAction();
public:
//动作执行
virtual bool ExecuteAction(const ARSSTUATION & stSituation, MOVEDIRECTION & nextDirection) = 0;
//注册一个动作
static bool RegistOneAction(char * name,POINTER_CREATEACTION_FUNC pfnAction);
//获取制定动作类指针
static ARSAction* GetTheAction(char * name);
//销毁动作类队列
void DestoryActions();
public:
static deque <REGISTACTIONITEM> ms_dequeActionRegister; //动作类注册队列
static int ms_iActionNum; //动作类数目
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -