Projext/Assets/Scripts/Card_Scripts/RandomStatCardInstance.cs
2026-02-08 23:20:23 +09:00

58 lines
1.3 KiB
C#

using UnityEngine;
public class RandomStatCardInstance
{
private RandomStatCardData data;
private StatType statType;
private int value;
private bool isConfirmed = false;
private Stats stats;
public RandomStatCardInstance(RandomStatCardData data, Stats stats)
{
this.data = data;
this.stats = stats;
}
public void RollPreview()
{
statType = data.possibleStats[Random.Range(0, data.possibleStats.Length)];
value = Random.Range(data.minValue, data.maxValue + 1);
isConfirmed = false;
}
public string GetText()
{
string sign = value >= 0 ? "+" : "";
return $"{statType} {sign}{value}";
}
public void Confirm()
{
if (isConfirmed) return;
ApplyStat();
isConfirmed = true;
}
private void ApplyStat()
{
if (stats == null) return;
switch (statType)
{
case StatType.Health:
stats.AddMaxHealth(value);
break;
case StatType.Speed:
stats.AddMoveSpeed(value);
break;
// ✨ [제거] case StatType.Strength 삭제됨
case StatType.Damage:
stats.AddAttackDamage(value);
break;
}
}
}