33 lines
669 B
C#
33 lines
669 B
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using BITKit;
|
|
using UnityEngine;
|
|
using UnityEngine.Events;
|
|
|
|
namespace BITFALL.Scenes
|
|
{
|
|
public class ColliderBasedSelection : MonoBehaviour,IDescription,IAction
|
|
{
|
|
[SerializeField] private string description;
|
|
[SerializeField] private UnityEvent onSelected;
|
|
[SerializeField] private new Collider collider;
|
|
|
|
private void Start()
|
|
{
|
|
if (collider == null)
|
|
collider = GetComponent<Collider>();
|
|
var selectable = GetComponent<ISelectable>();
|
|
selectable.OnActive += Execute;
|
|
}
|
|
|
|
public string Name => description;
|
|
|
|
public void Execute()
|
|
{
|
|
onSelected?.Invoke();
|
|
}
|
|
}
|
|
|
|
}
|