using System; using System.Collections; using System.Collections.Generic; using UnityEngine; public class SlotManager : MonoBehaviour { public GridManager spawnerRef; public int x; public int y; public HealthComponent TowerHealth; public bool IsOccupied => TowerHealth != null && TowerHealth.TryGetComponent(out HealthComponent _); public Transform TowerSpawnPoint; /// /// (Sender, spawnerRef, X, Y) /// public event Action OnSlotClicked; public event Action OnSlotHovered; public event Action OnSlotUnHovered; public void OnClick() { if (IsOccupied) return; OnSlotClicked?.Invoke(this, spawnerRef, x, y); } public void OnHovered() { if (IsOccupied) return; OnSlotHovered?.Invoke(this, spawnerRef, x, y); } public void OnUnHovered() { if (IsOccupied) return; OnSlotUnHovered?.Invoke(this, spawnerRef, x, y); } }