2024-03-11 13:27:40 +08:00
|
|
|
|
using Gameplay.Unit.Data;
|
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
|
namespace Gameplay.Buff
|
|
|
|
|
|
{
|
|
|
|
|
|
public class BuffBulletDamage6 : BaseBuff
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
protected override void _OnTrigger()
|
|
|
|
|
|
{
|
|
|
|
|
|
base._OnTrigger();
|
|
|
|
|
|
|
|
|
|
|
|
// 对指定敌人投掷单手斧造成A的士气压制,若目标为人形单位额外造成B%+C点波拉攻击力的伤害
|
|
|
|
|
|
var paramA = _TryGetFloatParam(0);
|
|
|
|
|
|
var paramB = _TryGetFloatParam(1);
|
|
|
|
|
|
var paramC = _TryGetFloatParam(2);
|
|
|
|
|
|
|
|
|
|
|
|
var sender = creator;
|
|
|
|
|
|
|
|
|
|
|
|
var damageMorale = Mathf.RoundToInt(paramA);
|
|
|
|
|
|
owner.TakeMoraleDamage(damageMorale, sender);
|
|
|
|
|
|
|
|
|
|
|
|
if (owner.gameunitType == EGameUnitType.Character)
|
|
|
|
|
|
{
|
|
|
|
|
|
var finalDamage = Mathf.FloorToInt((paramC + paramB * sender.fightData.attack));
|
2025-03-14 12:34:39 +08:00
|
|
|
|
owner.TakeNormalDamage(configData.AttackPowerLevel,finalDamage, sender, false);
|
2024-03-11 13:27:40 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|