idle-survivors/Assets/Scripts/HeroUnit.cs

33 lines
826 B
C#
Raw Permalink Normal View History

using System.Runtime.CompilerServices;
using RuntimeSet;
using UnityEngine;
using UnityEngine.Assertions;
[assembly: InternalsVisibleTo("TestsPlaymode")]
/// <summary>
/// Component that makes a duder a duder.
/// Manages class, skills, level, attrs, and AI.
/// </summary>
public class HeroUnit : MonoBehaviour
{
[SerializeField] private new string name;
[SerializeField] private HeroClassSO class_;
[SerializeField] private long level;
[SerializeField] private long xp;
[SerializeField] private HeroAttributesSO attrs;
[SerializeField] private HeroUnitRuntimeSetSO _party;
internal HeroUnitRuntimeSetSO party => _party;
private void OnEnable()
{
Assert.IsNotNull(_party);
_party.Add(this);
}
private void OnDisable()
{
_party.Remove(this);
}
}