31 lines
1.1 KiB
C#
31 lines
1.1 KiB
C#
|
|
using UnityEngine;
|
|||
|
|
|
|||
|
|
[CreateAssetMenu(menuName = "LevelUp/RandomStatCard")]
|
|||
|
|
public class RandomStatCardData : CardData
|
|||
|
|
{
|
|||
|
|
public StatType[] possibleStats;
|
|||
|
|
public int minValue = 1;
|
|||
|
|
public int maxValue = 3;
|
|||
|
|
|
|||
|
|
// ⭐ 기존의 stat1, value1 같은 변수들은 다 지워버리세요!
|
|||
|
|
// 이제 CardUI가 기억할 거니까 여기엔 필요 없습니다.
|
|||
|
|
|
|||
|
|
public override string GetText() => ""; // CardUI에서 직접 만드니까 비워둡니다.
|
|||
|
|
|
|||
|
|
protected override void ApplyEffect() { } // 사용하지 않음
|
|||
|
|
|
|||
|
|
// ⭐ CardUI가 호출할 수 있게 public으로 만듭니다.
|
|||
|
|
public void ApplyToPlayer(StatType stat, int value)
|
|||
|
|
{
|
|||
|
|
Stats stats = FindObjectOfType<Stats>();
|
|||
|
|
if (stats == null) return;
|
|||
|
|
|
|||
|
|
switch (stat)
|
|||
|
|
{
|
|||
|
|
case StatType.MaxHealth: stats.AddMaxHealth(value); break;
|
|||
|
|
case StatType.MoveSpeed: stats.AddMoveSpeed(value); break;
|
|||
|
|
case StatType.Strength: stats.AddStrength(value); break;
|
|||
|
|
case StatType.AttackDamage: stats.AddAttackDamage(value); break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|