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()
};
_eventList.ForEach(ev => ev.SetupListener());
Ready = true;
}
public static void Reset()
{
Ready = false;
_eventList.ForEach(ev => ev.CloseListener());
_eventList = new List();
}
}
}