网狐平台的机器人功能平台都给实现了,而且接口都给定义好了只需要实现这个接口就可以

举报
naxunwl 发表于 2019/08/08 14:49:02 2019/08/08
【摘要】 class CAndroidUserItemSink : public IAndroidUserItemSink{ //控件变量protected: CGameLogic m_GameLogic; //游戏逻辑 IAndroidUserItem * m_pIAndroidUserItem; //用户接口 //函数定义public: //构造函数 CAndroi...

class CAndroidUserItemSink : public IAndroidUserItemSink
{


 //控件变量
protected:
 CGameLogic      m_GameLogic;      //游戏逻辑
 IAndroidUserItem *    m_pIAndroidUserItem;    //用户接口

 //函数定义
public:
 //构造函数
 CAndroidUserItemSink();
 //析构函数
 virtual ~CAndroidUserItemSink();

 //基础接口
public:
 //释放对象
 virtual void __cdecl Release() { }//if (IsValid()){delete this;}return ;
 //是否有效
 virtual bool __cdecl IsValid() { return AfxIsValidAddress(this,sizeof(CAndroidUserItemSink))?true:false; }
 //接口查询
 virtual void * __cdecl QueryInterface(const IID & Guid, DWORD dwQueryVer);

 //控制接口
public:
 //初始接口
 virtual bool __cdecl InitUserItemSink(IUnknownEx * pIUnknownEx);
 //重置接口
 virtual bool __cdecl RepositUserItemSink();

 //游戏事件
public:
 //时间消息
 virtual bool __cdecl OnEventTimer(UINT nTimerID);
 //游戏消息
 virtual bool __cdecl OnEventGameMessage(WORD wSubCmdID, void * pData, WORD wDataSize);
 //游戏消息
 virtual bool __cdecl OnEventFrameMessage(WORD wSubCmdID, void * pData, WORD wDataSize);
 //场景消息
 virtual bool __cdecl OnEventGameScene(BYTE cbGameStatus, bool bLookonOther, void * pData, WORD wDataSize);

 //用户事件
public:
 //用户进入
 virtual void __cdecl OnEventUserEnter(IAndroidUserItem * pIAndroidUserItem, bool bLookonUser);
 //用户离开
 virtual void __cdecl OnEventUserLeave(IAndroidUserItem * pIAndroidUserItem, bool bLookonUser);
 //用户积分
 virtual void __cdecl OnEventUserScore(IAndroidUserItem * pIAndroidUserItem, bool bLookonUser);
 //用户状态
 virtual void __cdecl OnEventUserStatus(IAndroidUserItem * pIAndroidUserItem, bool bLookonUser);
 //用户段位
 virtual void __cdecl OnEventUserSegment(IAndroidUserItem * pIAndroidUserItem, bool bLookonUser);
}
实现这个接口其实很简单,机器人就是一个游戏玩家CGameClientDlg中已经实现了所有的功能,我们只需要把这些功能再在机器人类中再实现一遍就可以了,如果说游戏各个模块之间的通信消息是生命过程的血液的话,那么游戏的操作界面就是生命体的躯体,

普通的游戏玩家需要界面,以实现漂亮人性化的操作效果,而机器人是没有血肉之躯,但是不乏流畅的血液,热血澎湃着,机器人就有了灵魂,因为我们的工作就是要保证机器人有灵魂!一个简单的办法就是拷贝CGameClientDlg中的所有功能,移除所有的界面操作的代码就可以了!简单吧,是不是没有我们想象中的那么麻烦,呵呵!

 

原文转载:广东纳讯网络技术有限公司

 


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。