\[官方引擎\]Cgdev.me官方Lua脚本引擎


  • 管理员

    适用版本 GMSV Avaritia(GA)

    简要例子:
    请看 /Module 下的三个简单的例子,喇叭(laba.lua) ,原地登录(myLogin.lua) ,地图生成(mapProc.lua)

    cgdev.me官方LUA架构版使用简要说明:
    前言:此架构非必须,但是今后Cgdev的展示脚本都以这个架构展示。

    1,在此架构中,使用了基于模块(Module)的机制,每个功能独立于 /Module/*.lua中,使用时,请将写好的模块
    放入 Module 文件夹内,然后在 Config.lua 中 useModule("*"); 即可。

    2,除了 Config.lua 文件,请不要修改除了 Module 文件夹以外的所有文件,需要自定义扩展库(第三方库)时,请放入 /System/OtherModule 文件夹中。

    3,新增 Delegate 类,该类允许创建事件委托,实现方式请在 /System/BaseModule/Delegate.lua 中查看。
    委托类用于创建一个后期绑定的事件,可以是多个文件进行绑定。
    例子:假设我创建了 A.lua 和 B.lua 两个模块。
    在 A.lua 中
    Delegate.RegDelLoginEvent("ALoginEvent"); --创建登录委托事件

    function ALoginEvent(player)
    NLG.SystemMessage(player,"来自A的问候。");
    end
    在 B.lua 中
    Delegate.RegDelLoginEvent("BLoginEvent"); --创建登录委托事件

    function BLoginEvent(player)
    NLG.SystemMessage(player,"来自B的问候。");
    end
    在 Config.lua 中添加引用
    useModule("A");
    useModule("B");

    那么,在玩家登录的时候,会同时收到
    来自A.lua的问候。
    来自B.lua的问候。
    委托事件调用的先后顺序,取决于 Config.lua 中的引用顺序。

    Ver 2: 2013/1/20
    增加以下委托事件:
    *RegDelBattleSkillExpEvent
    *RegDelProductSkillExpEvent
    *RegDelGetExpEvent
    注意:当注册多个调用以上三个经验加成事件委托都有返回值时,那么经验加成值则会累加,

    Ver 1:
    增加以下委托事件:
    *RegInit /* NPC,物品初始化时使用 */
    *RegDelTalkEvent
    *RegDelBattleStartEvent
    *RegDelBattleOverEvent
    *RegDelLoginEvent
    *RegDelLogoutEvent
    *RegDelDropEvent
    *RegDelLoginGateEvent
    *RegDelWarpEvent
    *RegDelAllOutEvent /* 玩家离开事件,包括大登与断线。注:此委托之前也会调用DropEvent或LogoutEvent */

    Lua引擎_Ver2.zip


  • 管理员

    ..............................................



  • 不错啊要学习一下



  • 感謝分享,學習中~~~~~~~~~



  • 学习中 多谢楼主



  • 感谢楼主分享!!



  • 为什么减去我的活跃,还不让我下载附件呢



  • 为什么归零就不让下载呢`?



  • 什么狗屁引型,只是脚本而已 骗子



  • 网站怎么时常没有主页呢?



  • 能不能活跃绑定啊,刷新一下网页就筘一次活跃


登录后回复