龙族引擎

 立即注册
搜索
查看: 1448|回复: 2

LUA模块GOM套装技能威力有点问题

[复制链接]

1

主题

1

帖子

0

积分

新手

Rank: 1

积分
0
发表于 2020-9-10 21:14:07 | 显示全部楼层 |阅读模式

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

65

帖子

1017

积分

金牌会员

Rank: 6Rank: 6

积分
1017
发表于 2020-9-17 09:06:57 | 显示全部楼层
正在处理,关注更新日志
回复

使用道具 举报

5

主题

24

帖子

36

积分

新手

Rank: 1

积分
36
发表于 2020-9-17 14:45:00 | 显示全部楼层
等引擎更新,自己获取隔位攻击对象
  1. --[[
  2. m2_init.lua文件中,绑定技能LUA的拓展脚本文件
  3. SKILLFILE("LuaEnvir\\LuaSkill.lua");

  4. 此文件操作各技能的效果脚本
  5. 其中domain中的参数n为伤害值,由M2传递进来
  6. 内置技能对象变量 MyMagic

  7. 函数说明
  8. getMapObjects
  9. 获取指定地图坐标上的对象列表,包含人物和怪物,返回列表中的对象.
  10. 参数为一行字符串逗号(,)为分隔符.
  11. 因DELPHI中的列表下标是从0开始的,故此处传入的下标数值需要减1.
  12. 以上函数仅在本文件内有效

  13. 对象可使用的方法列表:
  14. DamageHealth(nValue): 伤害造成血量改变,参数为负数时可以加血;
  15. MakePosion(nType, nTime, nPoint):中毒。中毒类型(参数1)参考HX脚本手册
  16. DefenceUp(nTime):增加防御力,类似道士的神圣防御加防御
  17. MagDefenceUp(nTime):增加魔法防御力,类似道士的幽灵盾
  18. OffenceUp(nTime):增加攻魔道,类似神武术
  19. DefenceDown(nTime):减防,同上增加方法
  20. MagDefenceDown(nTime)减魔防,同上
  21. OffenceDown(nTime)减攻魔道,同上
  22. MagBubbleDefenceUp(nLevel, nSec):开启nLevel等级的魔法盾nSec秒

  23. 可以触发:普攻,
  24. 战士:烈火剑法,攻杀剑术,刺杀剑术,半月弯刀,抱月剑法,龙影剑法,狂风斩,逐日剑法,开天斩,倚天辟地,野蛮冲撞,
  25. 法师:雷电术,大火球,爆裂火焰,地狱雷光,冰咆哮,火焰冰,群体雷电术,彻地钉,寒冰掌,灭天火,火龙之息,
  26. 飓风破,噬血术,流星火雨,
  27. 道士:灵魂火符,
  28. 治愈术(获取不到技能名,n值无意义)
  29. 幽灵盾(获取不到技能名,n值无意义)
  30. 神圣战甲术
  31. 隐身术
  32. 集体隐身术
  33. 诅咒术

  34. --]]
  35. function getFontTarget(role)
  36.         local dir = role.direction
  37.         local mapcode,x,y = role.mapcode,role.x,role.y
  38.         local tarX,tarY,interval= 0,0,2
  39.         if dir == 0 then
  40.                 tarX = x
  41.                 tarY = y - interval
  42.         elseif dir == 1 then
  43.                 tarX = x + interval
  44.                 tarY = y - interval
  45.         elseif dir == 2 then
  46.                 tarX = x + interval
  47.                 tarY = y
  48.         elseif dir == 3 then
  49.                 tarX = x + interval
  50.                 tarY = y + interval
  51.         elseif dir == 4 then
  52.                 tarX = x
  53.                 tarY = y + interval
  54.         elseif dir == 5 then
  55.                 tarX = x - interval
  56.                 tarY = y + interval
  57.         elseif dir == 6 then
  58.                 tarX = x - interval
  59.                 tarY = y
  60.         elseif dir == 7 then
  61.                 tarX = x - interval
  62.                 tarY = y - interval
  63.         end
  64.         -- 返回目标坐标对象列表的第一个
  65.         return unpack(server.getMapObjects(mapcode,tarX,tarY,0),1,1)
  66. end

  67. function domain(n)
  68.         local role = server.getMyself()
  69.         local target = role.getTarget() or getFontTarget(role) -- 近身攻击目标找不到就找隔位攻击目标

  70.         if MyMagic.magicname ~= "普通攻击" then
  71.                 server.print(string.format("name:%s idx:%d power:%d",MyMagic.magicname,MyMagic.magidx,MyMagic.power))
  72.                 server.print(string.format(" 目标%s在(%d,%d)被%s攻击.",target.name,target.x,target.y,role.name))
  73.         end
  74.         --role.attackTarget(81)
  75.         --target.damageHealth(50)
  76.        
  77.         if role and role.race == 0 and not role.isDummy then
  78.                 if(GlobalUtils) then
  79.                         server.print('初始值'..n)
  80.                         if(role.checkinarea(0) == 0) and (target.checkinarea(0) == 0) and (target.race~=10 and target.race~=11) then
  81.                                 n = GlobalUtils.roleLuaNewAttr(role,target,n) + GlobalUtils.roleLuaSkillPD(role,target,MyMagic,n)
  82.                                 server.print('加成后'..n)
  83.                         end
  84.                 end
  85.         end
  86.        
  87.         return n
  88. end

  89. --[[
  90. Lua 内存占用记录打印示例:
  91. local mri = require("Envir.LuaEnvir.Plugins.gc.MemoryReferenceInfo")
  92. mri.m_cConfig.m_bAllMemoryRefFileAddTime = false
  93. mri.m_cMethods.DumpMemorySnapshot("./Envir/LuaEnvir/Plugins/gc/log", "1-Before", -1)
  94. mri.m_cMethods.DumpMemorySnapshot("./Envir/LuaEnvir/Plugins/gc/log", "2-After", -1)
  95. mri.m_cMethods.DumpMemorySnapshotComparedFile("./Envir/LuaEnvir/Plugins/gc/log", "Compared", -1, "./Envir/LuaEnvir/Plugins/gc/log/LuaMemRefInfo-All-[1-Before].txt", "./Envir/LuaEnvir/Plugins/gc/log/LuaMemRefInfo-All-[2-After].txt")
  96. --]]


复制代码
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|龙族引擎 ( 备案信息 )

GMT+8, 2024-5-3 03:22 , Processed in 0.035399 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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