48 lines
1.2 KiB
C#
48 lines
1.2 KiB
C#
|
using System.Collections.Generic;
|
|||
|
using UnityEngine;
|
|||
|
|
|||
|
namespace R0bbie.Timeline
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// Generic TimelineTrigger which simply calls TriggerContinue on all attached steps
|
|||
|
/// </summary>
|
|||
|
public class TimelineTrigger : MonoBehaviour
|
|||
|
{
|
|||
|
[SerializeField] string description;
|
|||
|
|
|||
|
// Private variables
|
|||
|
|
|||
|
List<Step> triggerContinueOnSteps = new List<Step>();
|
|||
|
|
|||
|
// Properties
|
|||
|
|
|||
|
public bool triggered { get; protected set; }
|
|||
|
|
|||
|
|
|||
|
|
|||
|
public void AddStep(Step _stepToTrigger)
|
|||
|
{
|
|||
|
// Only add step to the list if it's not already in it..
|
|||
|
if (triggerContinueOnSteps.Contains(_stepToTrigger))
|
|||
|
return;
|
|||
|
|
|||
|
// Add step to list
|
|||
|
triggerContinueOnSteps.Add(_stepToTrigger);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
///
|
|||
|
public void Trigger()
|
|||
|
{
|
|||
|
triggered = true;
|
|||
|
|
|||
|
// Add message to trigger continue on all attached steps
|
|||
|
foreach (Step triggerContinueOnStep in triggerContinueOnSteps)
|
|||
|
{
|
|||
|
triggerContinueOnStep.TriggerContinue(this);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
}
|