using QSB.Animation;
using QSB.DeathSync;
using QSB.ElevatorSync;
using QSB.GeyserSync;
using QSB.TimeSync;
using QSB.Tools;
using QSB.TransformSync;
using System.Collections.Generic;
namespace QSB.Events
{
///
/// Creates instances of all of the events QSB uses.
///
public static class EventList
{
public static bool Ready { get; private set; }
private static List _eventList = new List();
public static void Init()
{
_eventList = new List
{
new PlayerReadyEvent(),
new PlayerJoinEvent(),
new PlayerSuitEvent(),
new PlayerFlashlightEvent(),
new PlayerSignalscopeEvent(),
new PlayerTranslatorEvent(),
new PlayerProbeLauncherEvent(),
new PlayerProbeEvent(),
new PlayerSectorEvent(),
new PlayerLeaveEvent(),
new PlayerDeathEvent(),
new PlayerStatesRequestEvent(),
new ElevatorEvent(),
new GeyserEvent(),
new ServerTimeEvent(),
new AnimTriggerEvent()
};
_eventList.ForEach(ev => ev.SetupListener());
Ready = true;
}
public static void Reset()
{
Ready = false;
_eventList.ForEach(ev => ev.CloseListener());
_eventList = new List();
}
}
}