首先我们创建一个的LUA的NPC始初化文件
--创建函数Npc_test_Create()
function Npc_test_Create()
if(Npc_test_index == nil) then
--创建NPC(NPC名字,图像号,地图号,坐标X,坐标Y,偏向号)将返回一个NPC索引
Npc_test_index = npc.CreateNpc("测试NPC之一", 100700, 2000, 68, 78, 0);
--设置变乱触发(NPC索引,变乱,实行函数,实行函数文件路径)
char.setFunctionPointer(Npc_test_index, "重叠变乱", "Npc_test_Overlap", "data/ablua/npc.lua")
end
end
--表现当实行该文件的时间将实行该函数
Npc_test_Create();
-------------------------------------------------
建好了我们接着创建函数调用文件data/ablua/npc.lua
--该函数汲取两个值,一个是NPC索引,另一个是玩家引索
function Npc_test_Overlap(meindex, toindex)
--战斗宠物数组,设置战斗的宠物ID,最大10只
enemytable = {351, 352, 353, 354, 355, 356, 357, 358, 359, 360 }
--创建一场战斗(玩家索引,本身引索,战斗宠物数组)
battle.CreateVsEnemy(toindex, meindex, enemytable)
end
----------------------------------------------------------
简简略单就创建好了
下面我讲一下怎样扩展让该变乱脚本更风趣
--该函数汲取两个值,一个是NPC索引,另一个是玩家引索
function Npc_test_Overlap(meindex, toindex)
if char.getInt(toindex, "等级)<10 then
--战斗宠物数组,设置战斗的宠物ID,最大10只
enemytable = {351, 352, 353, 354, 355, 356, 357, 358, 359, 360 }
elseif char.getInt(toindex, "等级)<40 then
--战斗宠物数组,设置战斗的宠物ID,最大10只
enemytable = {361, 362, 363, 364, 365, 366, 367, 368, 369, 370 }
else
--战斗宠物数组,设置战斗的宠物ID,最大10只
enemytable = {371, 372, 373, 374, 375, 376, 377, 378, 379, 380 }
end
--创建一场战斗(玩家索引,本身引索,战斗宠物数组)
battle.CreateVsEnemy(toindex, meindex, enemytable)
end
-----------------------------------------------------------------------------------------
这样就简略实现了玩家差异等级所遇上的仇人差异等级
(责任编辑:admin) |