Files
Cielonos/Assets/Scripts/MainGame/Items/PassiveEquipments/SymbioticLoop.cs

42 lines
1.2 KiB
C#
Raw Normal View History

2026-07-18 03:16:20 -04:00
using Cielonos.MainGame;
2026-05-23 08:27:50 -04:00
using Cielonos.MainGame.Characters;
using UnityEngine;
namespace Cielonos.MainGame.Inventory.Collections
{
/// <summary>
/// 共生回路 / Symbiotic Loop
2026-06-12 17:11:39 -04:00
/// 玩家完成一个战斗房间的清理后恢复2 + 等级 * 0.4)的生命值。
2026-05-23 08:27:50 -04:00
/// </summary>
public class SymbioticLoop : PassiveEquipmentBase
{
public override void OnObtained()
{
base.OnObtained();
2026-07-18 03:16:20 -04:00
if (RunManager.Instance != null)
{
RunManager.Instance.OnCombatRoomCleared += OnCombatRoomCleared;
}
2026-05-23 08:27:50 -04:00
}
public override void OnDiscarded()
{
2026-07-18 03:16:20 -04:00
if (RunManager.Instance != null)
{
RunManager.Instance.OnCombatRoomCleared -= OnCombatRoomCleared;
}
2026-05-23 08:27:50 -04:00
base.OnDiscarded();
}
/// <summary>
2026-07-18 03:16:20 -04:00
/// 当前 Run 的 Combat 节点房间清空时触发,恢复玩家生命值。
2026-05-23 08:27:50 -04:00
/// </summary>
2026-07-18 03:16:20 -04:00
private void OnCombatRoomCleared(RunMapNode node)
2026-05-23 08:27:50 -04:00
{
float healAmount = passiveAttributeSm.GetItemAttribute("HealAmount");
player.Heal(healAmount);
}
}
}