【伸手】求技能LUA,我已经绝望了
太阳神三国杀lua吧
全部回复
仅看楼主
level 11
000191750 楼主
浴火:你可跳过你的判定和摸牌阶段,若如此做,你于本回合造成的火焰伤害+1。
用许诸和夏侯渊的技能拼了几次,都是没办法触发,求助也无果,还是伸手一下吧,望大神帮忙,如果可以最好是标些注释,让我也看看究竟我是哪里没有写好。
2015年02月18日 16点02分 1
level 11
- -把代码贴上来看看。。。
2015年02月18日 17点02分 2
level 11
000191750 楼主
yuhuobuff = sgs.CreateTriggerSkill{
name = "#yuhuobuff",
frequency = sgs.Skill_Frequent,
events = sgs.DamageCaused,
on_trigger = function(self, event, player, data)
local damage = data:toDamage()
if theDamage.nature == sgs.DamageStruct_Fire then
damage.damage = damage.damage + 1
data:setValue(damage)
end
return false
end,
can_trigger = function(self, target)
return target and target:hasFlag("yuhuo1") and target:isAlive()
end
}
yuhuo = sgs.CreateTriggerSkill{
name = "yuhuo",
frequency = sgs.Skill_NotFrequent,
events = {sgs.EventPhaseChanging},
on_trigger = function(self, event, player, data)
local room = player:getRoom()
local change = data:toPhaseChange()
if change.to == sgs.Player_Judge and not player:isSkipped(sgs.Player_Judge)
and not player:isSkipped(sgs.Player_Draw) then
if room:askForSkillInvoke(player, self:objectName()) then
room:setPlayerFlag(player, "yuhuo1")
player:skip(sgs.Player_Judge)
player:skip(sgs.Player_Draw)
end
end
end
}
wujiahua:addSkill(yuhuo)
wujiahua:addSkill(yuhuobuff)
2015年02月19日 03点02分 3
level 9
YuHuo = sgs.CreateTriggerSkill{
name = "YuHuo",
events = {sgs.EventPhaseChanging,sgs.DamageCaused},
on_trigger = function(self,event,player,data)
local room = player:getRoom()
if event == sgs.EventPhaseChanging then
local change = data:toPhaseChange()
if change.to==sgs.Player_Judge and not player:isSkipped(sgs.Player_Judge) and not player:isSkipped(sgs.Player_Draw) then
if room:askForSkillInvoke(player,self:objectName(),data) then
room:broadcastSkillInvoke("YuHuo")
player:skip(sgs.Player_Judge)
player:skip(sgs.Player_Draw)
room:setPlayerFlag(player,"YuHuoInvoked")
end
elseif player:getPhase() == sgs.Player_Finish or player:getPhase() == sgs.Player_NotActive then
if player:hasFlag("YuHuoInvoked") then
room:setPlayerFlag(player,"-YuHuoInvoked")
end
end
else
local damage = data:toDamage()
if not damage.from or damage.from:isDead() or damage.from:objectName() ~= player:objectName() or
not player:hasFlag("YuHuoInvoked") or player:getPhase() == sgs.Player_NotActive then
return false
end
if event == sgs.DamageCaused then
if not player:hasFlag("DamageIncreased") and player:hasFlag("YuHuoInvoked") then
room:notifySkillInvoked(player,"YuHuo")
room:setPlayerFlag(player,"DamageIncreased")
if damage.nature==sgs.DamageStruct_Fire then
damage.damage = damage.damage + 1
data:setValue(damage)
end
end
end
end
return false
end
}
2015年02月19日 04点02分 4
level 9
2015年02月19日 04点02分 5
谢谢大神帮忙
2015年02月19日 04点02分
@000191750 不用谢 我菜鸟而已 能用就好
2015年02月19日 08点02分
1