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(); } } }