示例#1
0
        public override void OnEnable()
        {
            RefreshConfig();
            Timing.RunCoroutine(Methods.TickCounter(), Segment.Update, "ticks");
            EventHandlers = new EventHandlers(this);
            Events.RemoteAdminCommandEvent += EventHandlers.OnCommand;
            Events.RoundStartEvent         += EventHandlers.OnRoundStart;
            Events.RoundEndEvent           += EventHandlers.OnRoundEnd;
            Events.WaitingForPlayersEvent  += EventHandlers.OnWaitingForPlayers;
            Events.CheaterReportEvent      += EventHandlers.OnCheaterReport;
            Events.PlayerHurtEvent         += EventHandlers.OnPlayerHurt;
            Events.PlayerDeathEvent        += EventHandlers.OnPlayerDeath;
            Events.GrenadeThrownEvent      += EventHandlers.OnGrenadeThrown;
            Events.UseMedicalItemEvent     += EventHandlers.OnMedicalItem;
            Events.SetClassEvent           += EventHandlers.OnSetClass;
            Events.TeamRespawnEvent        += EventHandlers.OnRespawn;
            Events.PlayerJoinEvent         += EventHandlers.OnPlayerJoin;

            Events.DoorInteractEvent        += EventHandlers.OnDoorInteract;
            Events.Scp914UpgradeEvent       += EventHandlers.OnScp194Upgrade;
            Events.Scp079TriggerTeslaEvent  += EventHandlers.On079Tesla;
            Events.Scp106TeleportEvent      += EventHandlers.On106Teleport;
            Events.PocketDimEscapedEvent    += EventHandlers.OnPocketEscape;
            Events.PocketDimEnterEvent      += EventHandlers.OnPocketEnter;
            Events.ConsoleCommandEvent      += EventHandlers.OnConsoleCommand;
            Events.DecontaminationEvent     += EventHandlers.OnDecon;
            Events.DropItemEvent            += EventHandlers.OnDropItem;
            Events.PickupItemEvent          += EventHandlers.OnPickupItem;
            Events.IntercomSpeakEvent       += EventHandlers.OnIntercomSpeak;
            Events.PlayerBannedEvent        += EventHandlers.OnPlayerBanned;
            Events.PlayerHandcuffedEvent    += EventHandlers.OnPlayerHandcuffed;
            Events.PlayerHandcuffFreedEvent += EventHandlers.OnPlayerFreed;
            Events.Scp914ActivationEvent    += EventHandlers.On914Activation;
            Events.Scp914KnobChangeEvent    += EventHandlers.On914KnobChange;

            Events.WarheadCancelledEvent     += EventHandlers.OnWarheadCancelled;
            Events.WarheadDetonationEvent    += EventHandlers.OnWarheadDetonation;
            Events.WarheadStartEvent         += EventHandlers.OnWarheadStart;
            Events.WarheadKeycardAccessEvent += EventHandlers.OnWarheadAccess;
            Events.ElevatorInteractEvent     += EventHandlers.OnElevatorInteraction;
            Events.LockerInteractEvent       += EventHandlers.OnLockerInteraction;
            Events.TriggerTeslaEvent         += EventHandlers.OnTriggerTesla;
            Events.GeneratorClosedEvent      += EventHandlers.OnGenClosed;
            Events.GeneratorEjectedEvent     += EventHandlers.OnGenEject;
            Events.GeneratorFinishedEvent    += EventHandlers.OnGenFinish;
            Events.GeneratorInsertedEvent    += EventHandlers.OnGenInsert;
            Events.GeneratorOpenedEvent      += EventHandlers.OnGenOpen;
            Events.GeneratorUnlockEvent      += EventHandlers.OnGenUnlock;
            Events.Scp106ContainEvent        += EventHandlers.On106Contain;
            Events.Scp106CreatedPortalEvent  += EventHandlers.On106CreatePortal;
            Events.ItemChangedEvent          += EventHandlers.OnItemChanged;
            Events.Scp079ExpGainEvent        += EventHandlers.On079GainExp;
            Events.Scp079LvlGainEvent        += EventHandlers.On079GainLvl;
            Events.PlayerLeaveEvent          += EventHandlers.OnPlayerLeave;
            Events.PlayerReloadEvent         += EventHandlers.OnPlayerReload;
            Events.SetGroupEvent             += EventHandlers.OnSetGroup;

            LoadTranslation();

            new Thread(ProcessSTT.Init).Start();
            Timing.RunCoroutine(HandleQueue.Handle(), "handle");
            Timing.RunCoroutine(UpdateStatus(), "update");
            Timing.RunCoroutine(Methods.UpdateServerStatus(), "updatechan");
        }