protected virtual void HookEventHandlers()
        {
            OnLevelUnloadEvent.Register(HandleLevelUnload, Priority.High);
            OnSendingHeartbeatEvent.Register(HandleSendingHeartbeat, Priority.High);
            OnSQLSaveEvent.Register(SaveStats, Priority.High);

            OnPlayerActionEvent.Register(HandlePlayerAction, Priority.High);
            OnPlayerDisconnectEvent.Register(HandlePlayerDisconnect, Priority.High);
        }
        protected virtual void UnhookEventHandlers()
        {
            OnLevelUnloadEvent.Unregister(HandleLevelUnload);
            OnSendingHeartbeatEvent.Unregister(HandleSendingHeartbeat);
            OnSQLSaveEvent.Unregister(SaveStats);

            OnPlayerActionEvent.Unregister(HandlePlayerAction);
            OnPlayerDisconnectEvent.Unregister(HandlePlayerDisconnect);
        }
Beispiel #3
0
        public override string GetHeartbeatData()
        {
            string name = ServerConfig.Name;

            OnSendingHeartbeatEvent.Call(this, ref name);
            name = Colors.Strip(name);

            return
                ("&port=" + ServerConfig.Port +
                 "&max=" + ServerConfig.MaxPlayers +
                 "&name=" + Uri.EscapeDataString(name) +
                 "&public=" + ServerConfig.Public +
                 "&version=7" +
                 "&salt=" + Server.salt +
                 "&users=" + PlayerInfo.NonHiddenCount() +
                 "&software=" + Uri.EscapeDataString(Server.SoftwareNameVersioned));
        }