using Kryz.CharacterStats.Examples; using System.Collections; using System.Collections.Generic; using UnityEngine; public class RiftPlayer : MonoBehaviour { [Header("Class:")] public GameTag classTag; [Header("Events:")] [SerializeField] private GameEvent_RiftPlayer onPlayerSpawned; [SerializeField] private GameEvent_RiftPlayer onPlayerDeath; [HideInInspector] public PlayerCharacterStats character; public Transform projectileSpawnLocation; [HideInInspector] public Health health; [HideInInspector] public Mana mana; [HideInInspector] public ClassResource classResource; [HideInInspector] public SpiritPower spiritPower; [HideInInspector] public AbilityCooldownTracker abilityCooldownTracker; public Taggable playerTag; PlayerDeathManager playerDeathManager; private void Awake() { character = GetComponent(); playerDeathManager = GetComponentInChildren(); abilityCooldownTracker = GetComponentInChildren(); health = GetComponent(); mana = GetComponent(); spiritPower = GetComponent(); classResource = GetComponent(); playerTag = GetComponent(); health.onDeath.AddListener(OnDeath); } // Start is called before the first frame update void Start() { onPlayerSpawned.Raise(this); this.gameObject.name = PlayerDataHandler.Instance.currentCharacterName.Value; } private void OnDeath() { RPC_OnDeath(); } private void RPC_OnDeath() { onPlayerDeath.Raise(this); } }