2025-02-21 18:35:51 +00:00

28 lines
783 B
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu(fileName = "GameEvent_JobData", menuName = "Wavefunction/Event/New GameEvent JobData", order = 1)]
public class GameEvent_JobInstance : ScriptableObject
{
private List<GameEventListener_JobInstance> listeners = new List<GameEventListener_JobInstance>();
public void Raise(JobInstance jobData)
{
for (int i = listeners.Count - 1; i >= 0; i--)
{
listeners[i].OnEventRaised(jobData);
}
}
public void RegisterListener(GameEventListener_JobInstance listener)
{
listeners.Add(listener);
}
public void UnRegisterListener(GameEventListener_JobInstance listener)
{
listeners.Remove(listener);
}
}