[战斗]==========被动194修改 新增被动251 额外行动修改
parent
d5ce7b7f84
commit
48cc9357c1
|
@ -4114,17 +4114,21 @@ local passivityList = {
|
||||||
if maxNum and maxNum > 0 then
|
if maxNum and maxNum > 0 then
|
||||||
cf = cf/maxNum
|
cf = cf/maxNum
|
||||||
end
|
end
|
||||||
|
|
||||||
local targets = skill:GetDirectTargets()
|
|
||||||
if not targets or #targets == 0 then return end
|
|
||||||
|
|
||||||
for _, target in ipairs(targets) do
|
|
||||||
BattleUtil.RandomAction(cf, function()
|
BattleUtil.RandomAction(cf, function()
|
||||||
BattleLogic.BuffMgr:ClearBuff(target, function(buff)
|
BattleLogic.BuffMgr:ClearBuff(defRole, function(buff)
|
||||||
return buff.type == BuffName.Shield and buff.shieldType == ShieldTypeName.AllReduce
|
return buff.type == BuffName.Shield and buff.shieldType == ShieldTypeName.AllReduce
|
||||||
end)
|
end)
|
||||||
end)
|
end)
|
||||||
end
|
--local targets = skill:GetDirectTargets()
|
||||||
|
--if not targets or #targets == 0 then return end
|
||||||
|
-- for _, target in ipairs(targets) do
|
||||||
|
-- LogError("11111111111")
|
||||||
|
-- BattleUtil.RandomAction(cf, function()
|
||||||
|
-- BattleLogic.BuffMgr:ClearBuff(target, function(buff)
|
||||||
|
-- return buff.type == BuffName.Shield and buff.shieldType == ShieldTypeName.AllReduce
|
||||||
|
-- end)
|
||||||
|
-- end)
|
||||||
|
-- end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
role.Event:AddEvent(BattleEventName.RoleDamageBefore, OnRoleDamageBefore,nil,nil,role)
|
role.Event:AddEvent(BattleEventName.RoleDamageBefore, OnRoleDamageBefore,nil,nil,role)
|
||||||
|
@ -7933,7 +7937,12 @@ local passivityList = {
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
local rDamage =floor(f1 * damage)
|
local rDamage =floor(f1 * damage)
|
||||||
|
|
||||||
|
if role.bloodShield then
|
||||||
|
role.bloodShield:AddValue(rDamage)
|
||||||
|
else
|
||||||
role:AddBuff(Buff.Create(role, BuffName.Blood,0, rDamage))
|
role:AddBuff(Buff.Create(role, BuffName.Blood,0, rDamage))
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
role.Event:AddEvent(BattleEventName.RoleBeHit, onBeHit,nil,nil,role)
|
role.Event:AddEvent(BattleEventName.RoleBeHit, onBeHit,nil,nil,role)
|
||||||
|
@ -8273,6 +8282,22 @@ local passivityList = {
|
||||||
BattleLogic.Event:AddEvent(BattleEventName.BattleRoundChange, onRoundChange)
|
BattleLogic.Event:AddEvent(BattleEventName.BattleRoundChange, onRoundChange)
|
||||||
|
|
||||||
end,
|
end,
|
||||||
|
--每回合开始,为自己添加[a][b]%的御甲
|
||||||
|
--a[int],b[float]
|
||||||
|
[351] = function(role, args,id,judge)
|
||||||
|
local pro = args[1]
|
||||||
|
local v1 = args[2]
|
||||||
|
local onRoundChange=function(curRound)
|
||||||
|
local val = floor(BattleUtil.FP_Mul(v1, role:GetRoleData(BattlePropList[pro])))
|
||||||
|
--如果身上有御甲就添加御甲的值
|
||||||
|
if role.bloodShield then
|
||||||
|
role.bloodShield:AddValue(val)
|
||||||
|
else--没有就上御甲buff
|
||||||
|
role:AddBuff(Buff.Create(role, BuffName.Blood,0, val))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
BattleLogic.Event:AddEvent(BattleEventName.BattleRoundStart, onRoundChange,nil,nil,role)
|
||||||
|
end
|
||||||
|
|
||||||
}
|
}
|
||||||
return passivityList
|
return passivityList
|
|
@ -1,4 +1,4 @@
|
||||||
require("Modules.Battle.Logic.HardStageCondition")
|
require("Modules.Battle.Logic.HardStageCondition")
|
||||||
require("Modules.Battle.Logic.HardStageEventManager")
|
require("Modules.Battle.Logic.HardStageEventManager")
|
||||||
BattleLogic = {}
|
BattleLogic = {}
|
||||||
local floor = math.floor
|
local floor = math.floor
|
||||||
|
@ -234,9 +234,13 @@ function BattleLogic.TurnRound(debugTurn)
|
||||||
-- 第一次进入 或者 本轮结束 初始化流程状态
|
-- 第一次进入 或者 本轮结束 初始化流程状态
|
||||||
if CurRound == 0 or (CurSkillPos[0] == 6 and CurSkillPos[1] == 6) then
|
if CurRound == 0 or (CurSkillPos[0] == 6 and CurSkillPos[1] == 6) then
|
||||||
if CurRound ~= 0 then
|
if CurRound ~= 0 then
|
||||||
|
if BattleLogic.CheckHaveInsertRole() then
|
||||||
|
return
|
||||||
|
else
|
||||||
-- 上一轮结束
|
-- 上一轮结束
|
||||||
BattleLogic.Event:DispatchEvent(BattleEventName.BattleRoundEnd, CurRound)
|
BattleLogic.Event:DispatchEvent(BattleEventName.BattleRoundEnd, CurRound)
|
||||||
end
|
end
|
||||||
|
end
|
||||||
-- 检测一次灵兽技能
|
-- 检测一次灵兽技能
|
||||||
SkillManager.CheckMonsterSkill(function()
|
SkillManager.CheckMonsterSkill(function()
|
||||||
CurRound = CurRound + 1
|
CurRound = CurRound + 1
|
||||||
|
@ -378,6 +382,61 @@ function BattleLogic.CheckBattleLogic()
|
||||||
SkillRole:CastSkill()
|
SkillRole:CastSkill()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--检测是否有插入得英雄
|
||||||
|
function BattleLogic.CheckHaveInsertRole()
|
||||||
|
if insertSkillRole then
|
||||||
|
local SkillRole=insertSkillRole
|
||||||
|
insertSkillRole=nil
|
||||||
|
-- 如果找不到下一个人,直接交换阵营
|
||||||
|
if not SkillRole then
|
||||||
|
BattleLogManager.Log( "No Skill Position" )
|
||||||
|
BattleLogic.TurnRoundNextFrame()
|
||||||
|
return
|
||||||
|
end
|
||||||
|
--
|
||||||
|
BattleLogManager.Log(
|
||||||
|
"Position Change",
|
||||||
|
"position", CurSkillPos[CurCamp]
|
||||||
|
)
|
||||||
|
|
||||||
|
-- 行动
|
||||||
|
SkillRole.Event:DispatchEvent(BattleEventName.RoleTurnStart, SkillRole) -- 开始行动
|
||||||
|
BattleLogic.Event:DispatchEvent(BattleEventName.RoleTurnStart, SkillRole) -- 开始行动
|
||||||
|
-- buff计算
|
||||||
|
BattleLogic.BuffMgr:TurnUpdate(1) -- 计算恢复血量
|
||||||
|
BattleLogic.BuffMgr:TurnUpdate(2) -- 计算持续伤害(除去流血)
|
||||||
|
-- 设置行动完成回调
|
||||||
|
SkillManager.SetTurnRoundFunc(function()
|
||||||
|
BattleLogic.BuffMgr:TurnUpdate(3) -- 计算持续伤害(流血)
|
||||||
|
BattleLogic.BuffMgr:TurnUpdate(4) -- 计算其他buff
|
||||||
|
BattleLogic.BuffMgr:PassUpdate() -- 计算buff轮数
|
||||||
|
BattleLogic.BuffMgr:PassUpdateNoDead() -- 计算buff不灭
|
||||||
|
SkillRole.Event:DispatchEvent(BattleEventName.RoleTurnEnd, SkillRole) -- 行动结束
|
||||||
|
BattleLogic.Event:DispatchEvent(BattleEventName.RoleTurnEnd, SkillRole) -- 开始行动
|
||||||
|
BattleLogic.TurnRoundNextFrame()
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- 如果角色无法释放技能
|
||||||
|
if not SkillRole:IsAvailable() -- 角色不能释放技能
|
||||||
|
or (SkillRole:IsDead() -- 将死状态
|
||||||
|
and not BattleLogic.BuffMgr:HasBuff(SkillRole,BuffName.NoDead) --将死但没有不死buff
|
||||||
|
and not SkillManager.HaveMySkill(SkillRole)) -- 也没有要释放的技能
|
||||||
|
then
|
||||||
|
SkillManager.CheckTurnRound()
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
-- 释放技能后,递归交换阵营
|
||||||
|
SkillRole:CastSkill()
|
||||||
|
return true
|
||||||
|
else
|
||||||
|
return false
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function BattleLogic.WaitForTrigger(delayTime, action)
|
function BattleLogic.WaitForTrigger(delayTime, action)
|
||||||
delayTime = BattleUtil.ErrorCorrection(delayTime)
|
delayTime = BattleUtil.ErrorCorrection(delayTime)
|
||||||
local delayFrame = floor(delayTime * BattleLogic.GameFrameRate + 0.5)
|
local delayFrame = floor(delayTime * BattleLogic.GameFrameRate + 0.5)
|
||||||
|
|
|
@ -9,6 +9,11 @@ function Blood:SetData(...)
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function Blood:AddValue(value)
|
||||||
|
self.bloodValue=self.bloodValue+value
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
--初始化后调用一次
|
--初始化后调用一次
|
||||||
function Blood:OnStart()
|
function Blood:OnStart()
|
||||||
|
|
Loading…
Reference in New Issue