30 lines
717 B
C#
30 lines
717 B
C#
using System;
|
|
using UnityEngine;
|
|
|
|
namespace Syntriax.Modules.Trigger
|
|
{
|
|
public class Trigger : MonoBehaviour, ITrigger
|
|
{
|
|
/// <summary>
|
|
/// Called everytime the IsTrigerred field is changed
|
|
/// </summary>
|
|
/// <value>The new value of IsTrigerred</value>
|
|
public Action<bool> OnTriggered { get; set; } = null;
|
|
|
|
private bool _isTrigerred = false;
|
|
public bool IsTrigerred
|
|
{
|
|
get => _isTrigerred;
|
|
protected set
|
|
{
|
|
bool oldValue = _isTrigerred;
|
|
|
|
_isTrigerred = value;
|
|
|
|
if (oldValue != value)
|
|
OnTriggered?.Invoke(value);
|
|
}
|
|
}
|
|
}
|
|
}
|