太阳神三国杀lua吧 关注:2,645贴子:73,491
  • 5回复贴,共1

【求助】求高手指点

只看楼主收藏回复

技能做的不符合心意,求高手指点
技能:当你使用杀时,你可对与其距离为一的且没有技能【亡灵】的除你和目标之外的角色各造成一点伤害。
LuaShiyun = sgs.CreateTriggerSkill{
name = "LuaShiyun",
frequency = sgs.Skill_NotFrequent,
events = {sgs.SlashEffect},
on_trigger = function(self, event, player, data)
local effect = data:toSlashEffect()
local room = player:getRoom()
local target = effect.to
local source = effect.from
local others = room:getOtherPlayers(target and source)
if room:askForSkillInvoke(source, self:objectName(), data) then
for _,p in sgs.qlist(others) do
if not p:hasSkill(LuaWangling) then
if p:distanceTo(target) <= 1 then
local damage = sgs.DamageStruct()
damage.from = source
damage.to = p
damage.damage = 1
room:damage(damage)
end
end
end
end
end
}


IP属地:上海1楼2013-02-09 02:52回复
    问题1:去掉“if not p:hasSkill(LuaWangling) then”这一句才能造成伤害,但怎么做到不对拥有【亡灵】技能的造成伤害?
    问题2:对目标仍能造成伤害


    IP属地:上海2楼2013-02-09 02:56
    收起回复
      2025-09-03 18:20:49
      广告
      不感兴趣
      开通SVIP免广告
      room:getOtherPlayers(target and source)
      ==其实就是
      if target~=nil then
      room:getOtherPlayers(target)
      else
      room:getOtherPlayers(source)
      end


      3楼2013-02-09 03:04
      收起回复