Files
Cielonos/Assets/Scripts/MainGame/Items/PassiveEquipments/CombustionEnhancer.cs
SoulliesOfficial 72756712f7 UI调整
2026-05-27 15:15:28 -04:00

36 lines
1.2 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using System;
using Cielonos.MainGame.Buffs.Character;
using Cielonos.MainGame.Characters;
using SLSUtilities.General;
using UnityEngine;
namespace Cielonos.MainGame.Inventory.Collections
{
/// <summary>
/// 助燃剂 / Combustion Enhancer
/// 每次攻击到敌人后如果敌人处于燃烧Buff那么为燃烧Buff持续时间延长0.1秒
/// </summary>
public class CombustionEnhancer : PassiveEquipmentBase
{
private const string EventKey = nameof(CombustionEnhancer);
public override void OnObtained()
{
base.OnObtained();
Action<AttackAreaBase, CharacterBase, Attack.Result> onFinishAttack = OnFinishAttack;
player.eventSm.onFinishAttack.Add(EventKey, onFinishAttack.ToPrioritized());
}
public override void OnDiscarded()
{
player.eventSm.onFinishAttack.Remove(EventKey);
base.OnDiscarded();
}
private void OnFinishAttack(AttackAreaBase attackArea, CharacterBase target, Attack.Result result)
{
Burn burn = target.buffSm.GetBuff<Burn>();
burn?.timeSubmodule.AddDuration(0.1f);
}
}
}