魔力宝贝

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz

[NL库] RegVSEnemyCreateEvent

[复制链接]
发表于 前天 19:44 | 显示全部楼层 |阅读模式

RegVSEnemyCreateEvent
NL.RegVSEnemyCreateEvent(Dofile, FuncName)
函数功能
在玩家遇敌的时候触发,可以通过这个接口来修改遇敌的队列和数量。

参数说明
Dofile: 字符串 要加载的脚本文件名,如果为当前文件,则定义nil即可
FuncName: 字符串 触发的Lua函数的名称,该函数的申明格式请参考[VSEnemyCreateCallBack]
返回值
无返回值

VSEnemyCreateCallBack(CharIndex, GroupIndex, EnemyNum, EnemyList)
参数说明
CharIndex: 数值型 响应事件的对象index,该值由Lua引擎传递给本函数。
GroupIndex: 数值型 响应事件的战斗遇敌group ID,该值由Lua引擎传递给本函数。
EnemyNum: 数值型 响应事件的战斗遇敌数量,该值由Lua引擎传递给本函数。
EnemyList: [数组型] 响应事件的战斗遇敌队列,该值由Lua引擎传递给本函数。
EnemyList是一个数组,长度依据GMSV设置为16,既EnemyList[1] ~ EnemyList[16] 为对应的16个敌人信息,每个值为Enemy Index(可以通过Data.EnemyGetIndex 接口获取指定enemy的index)。如果无信息,则对应下标的值为-1。

返回值
返回新的遇敌队列即可,如无修改返回EnemyList或其他非Table类值即可。

参考实例
NL.RegVSEnemyCreateEvent(nil,”MyVSEnemyCreateCallBack”);

function MyVSEnemyCreateCallBack(CharIndex, EncountIndex, EnemyNum, EnemyList)
    local EnemyIndex = Data.EnemyGetIndex(1); -- 获取虎人的EnemyIndex
    local NewEnemyList = {}
    for i=1,16,1 do
        if i <= 10 then
            NewEnemyList[i] = EnemyIndex; -- 10个虎人
        else
            NewEnemyList[i] = -1; -- 剩下的无效
        end
    end
    return NewEnemyList;
end

相关帖子

回复

使用道具 举报

Archiver|魔力研究社

GMT+8, 2025-5-12 19:08 , Processed in 0.136216 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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