游戏乐悠悠网游开发网

 找回密码
 立即注册
查看: 1681|回复: 7
打印 上一主题 下一主题

武侠-event

[复制链接]
  • TA的每日心情
    无聊
    2014-8-8 12:31
  • 签到天数: 37 天

    [LV.5]常住居民I

    鲜花(0) 鸡蛋(0)
    跳转到指定楼层
    楼主
    发表于 2012-2-26 13:25:10 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
    武侠-event
    一 武侠的event是个比较强的系统,个人感觉也是做的比较好的,结合lua使用起来很不错
    二 实现
    1 定义结构

    struct EVENT_DEFINE
    {
        typedef std::list
    < std::pair< FUNC_EVENT_HANDLE, UINT > > REGISTER_STRUCT;


    -----------------------------
       
    // 参数
        for(INT i=0; i<(INT)pEvent->vArg.size(); i++)
        {
            CHAR szTemp[MAX_PATH];
            _snprintf(szTemp, MAX_PATH,
    "arg%d", i);
            g_pScriptSys
    ->GetLuaState()->GetGlobals().SetString(szTemp, pEvent->vArg.c_str());
        }

       
    //--------------------------------------------------------
       
    // 调用脚本
        CHAR szFunctionName[MAX_PATH];
        _snprintf(szFunctionName, MAX_PATH,
    "%s_OnEvent", pWinItem->m_strWindowName.c_str());

        CHAR szFunctionParam[MAX_PATH];
        _snprintf(szFunctionParam, MAX_PATH,
    "\"%s\"", pEvent->pEventDef->szEvent);

        pWinItem
    ->m_pScriptEnv->DoFunction(szFunctionName, szFunctionParam);



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

    本版积分规则

    小黑屋|手机版|Archiver|Online Game Xingbarking Dev Team  

    GMT+8, 2024-6-6 02:52 , Processed in 0.149615 second(s), 31 queries .

    Powered by Discuz! X3.2 Licensed

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表