34 lines
966 B
C#
34 lines
966 B
C#
using Cielonos.MainGame.Characters;
|
||
using UnityEngine;
|
||
|
||
namespace Cielonos.MainGame.Inventory.Collections
|
||
{
|
||
/// <summary>
|
||
/// 共生回路 / Symbiotic Loop
|
||
/// 玩家完成一个战斗房间的清理后,恢复(5 + 等级 * 1)的生命值。
|
||
/// </summary>
|
||
public class SymbioticLoop : PassiveEquipmentBase
|
||
{
|
||
public override void OnObtained()
|
||
{
|
||
base.OnObtained();
|
||
CombatManager.CombatRoomSm.OnRoomCleared += OnRoomCleared;
|
||
}
|
||
|
||
public override void OnDiscarded()
|
||
{
|
||
CombatManager.CombatRoomSm.OnRoomCleared -= OnRoomCleared;
|
||
base.OnDiscarded();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 战斗房间清空时触发,恢复玩家生命值。
|
||
/// </summary>
|
||
private void OnRoomCleared()
|
||
{
|
||
float healAmount = passiveAttributeSm.GetItemAttribute("HealAmount");
|
||
player.Heal(healAmount);
|
||
}
|
||
}
|
||
}
|