收起左侧

    [棋牌搭建教程] 为网狐棋牌游戏添加机器人

    17
    回复
    2935
    查看
    [复制链接]

    管理员

    3374

    主题

    3421

    帖子

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    15115
    发表于 2015-5-26 19:54:40 | 显示全部楼层 |阅读模式

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

    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中的所有功能,移除所有的界面操作的代码就可以了!简单吧,是不是没有我们想象中的那么麻烦,呵呵!


    温馨提示:
    1、本站所有信息都来源于互联网有违法信息与本网站立场无关。
    2、当有关部门,发现本论坛有违规,违法内容时,可联系站长删除,否则本站不承担任何责任。
    3、当政府机关依照法定程序要求披露信息时,论坛均得免责。
    4、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    5、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    6、如果使用本帖附件,本站程序只提供学习使用,请24小时内删除!使用者搭建运营触犯法律,违法,违规,本站不承担任何责任。
    回复

    使用道具 举报

    发表于 2015-5-31 11:07:01 | 显示全部楼层
    好帖就是要顶
    回复 支持 反对

    使用道具 举报

    金牌会员

    0

    主题

    373

    帖子

    1010

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1010
    发表于 2015-5-31 10:43:42 | 显示全部楼层
    很好哦
    回复 支持 反对

    使用道具 举报

    发表于 2015-5-31 10:53:28 | 显示全部楼层
    LZ真是人才
    回复 支持 反对

    使用道具 举报

    管理员

    10

    主题

    308

    帖子

    961

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    961
    发表于 2015-5-31 11:05:45 | 显示全部楼层
    厉害厉害
    回复 支持 反对

    使用道具 举报

    发表于 2015-5-31 11:10:01 | 显示全部楼层
    这个东西找了很久了多谢楼主!!
    回复 支持 反对

    使用道具 举报

    管理员

    10

    主题

    308

    帖子

    961

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    961
    发表于 2015-5-31 21:54:56 | 显示全部楼层
    很不错
    回复 支持 反对

    使用道具 举报

    发表于 2015-5-31 22:26:36 | 显示全部楼层
    楼主是超人
    回复 支持 反对

    使用道具 举报

    至尊会员

    3

    主题

    405

    帖子

    1196

    积分

    至尊会员

    Rank: 9Rank: 9Rank: 9

    积分
    1196
    发表于 2015-5-31 22:19:22 | 显示全部楼层
    顶顶多好
    回复 支持 反对

    使用道具 举报

    发表于 2015-5-31 21:49:38 | 显示全部楼层
    这个东西找了很久了多谢楼主!!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    在线客服
    热线电话

    微信扫一扫
    专注源码分享6年
    全国免费热线电话

    400-225-995

    周一至周日9:00-23:00

    反馈建议

    a5887776@163.com 在线QQ咨询

    Powered by Discuz! X3.4 Licensed © 2001-2013 Comsenz Inc.