From 0045bd6e13172e953f43bbe6b6e84fa06716faea Mon Sep 17 00:00:00 2001 From: xiekaidong Date: Fri, 4 Aug 2023 16:35:33 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=B8=A4=E4=B8=AA=E5=8F=8D?= =?UTF-8?q?=E4=BC=A4=E6=8A=A4=E7=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lua/app/module/battle/battle_const.lua | 2 ++ .../battle/helper/battle_buff_handle.lua | 22 +++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/lua/app/module/battle/battle_const.lua b/lua/app/module/battle/battle_const.lua index ac50992d..bcafd0b6 100644 --- a/lua/app/module/battle/battle_const.lua +++ b/lua/app/module/battle/battle_const.lua @@ -341,6 +341,8 @@ local BUFF_NAME = { INVINCIBLE_SHIELD = "invincible_shield", SHIELD_ICE_02 = "shield_ice_02", SKILL_HURT_ADD_SHOW = "skill_hurt_add_show", + SHIELD_ICE_REBOUND_200 = "shield_ice_rebound_200", + SHIELD_REBOUND_100 = "shield_rebound_100", } BattleConst.BUFF_NAME = BUFF_NAME diff --git a/lua/app/module/battle/helper/battle_buff_handle.lua b/lua/app/module/battle/helper/battle_buff_handle.lua index 96b74cf7..f25bb368 100644 --- a/lua/app/module/battle/helper/battle_buff_handle.lua +++ b/lua/app/module/battle/helper/battle_buff_handle.lua @@ -159,6 +159,20 @@ BattleBuffHandle.addShield = { target.unitEntity:addAttr(ATTR_NAME.SHIELD_REBOUND, 40000, false) return shieldNum end, + -- 反弹目标伤害的200%,直接写死 + [BUFF_NAME.SHIELD_ICE_REBOUND_200] = function(unitComp, buff, target, buffEffect) + local shieldNum = target.unitEntity:getMaxHp() * buff:getEffectNum() // DEFAULT_FACTOR + target:addShield(shieldNum, buffEffect) + target.unitEntity:addAttr(ATTR_NAME.SHIELD_REBOUND, 20000, false) + return shieldNum + end, + -- 反弹目标伤害的100%,直接写死 + [BUFF_NAME.SHIELD_ICE_REBOUND_200] = function(unitComp, buff, target, buffEffect) + local shieldNum = target.unitEntity:getMaxHp() * buff:getEffectNum() // DEFAULT_FACTOR + target:addShield(shieldNum, buffEffect) + target.unitEntity:addAttr(ATTR_NAME.SHIELD_REBOUND, 10000, false) + return shieldNum + end, } BattleBuffHandle.removeShield = { @@ -174,6 +188,14 @@ BattleBuffHandle.removeShield = { target.unitEntity:addAttr(ATTR_NAME.SHIELD_REBOUND, -40000, false) target:removeShield(buffEffect) end, + [BUFF_NAME.SHIELD_ICE_REBOUND_200] = function(buffSender, target, buff, buffEffect) + target.unitEntity:addAttr(ATTR_NAME.SHIELD_REBOUND, -20000, false) + target:removeShield(buffEffect) + end, + [BUFF_NAME.SHIELD_REBOUND_100] = function(buffSender, target, buff, buffEffect) + target.unitEntity:addAttr(ATTR_NAME.SHIELD_REBOUND, -10000, false) + target:removeShield(buffEffect) + end, } local function _takeEffectShield(unitComp, buff, target, buffEffect)