Пример #1
0
 public override void Connected(BoltConnection connection)
 {
     connection.SetCanReceiveEntities(false);
     if (CoopKick.IsBanned(connection.RemoteEndPoint.SteamId))
     {
         connection.Disconnect(new CoopKickToken
         {
             Banned      = true,
             KickMessage = "HOST_BANNED_YOU_PERMANANTLY"
         });
     }
     else
     {
         CoopServerInfo.Instance.entity.Freeze(false);
     }
 }
Пример #2
0
 public static void KickPlayer(BoltEntity playerEntity, int duration, string message = "HOST_KICKED_YOU")
 {
     if (BoltNetwork.isServer)
     {
         try
         {
             ulong num;
             if (SteamDSConfig.isDedicatedServer)
             {
                 if (SteamDSConfig.clientConnectionInfo.ContainsKey(playerEntity.source.ConnectionId))
                 {
                     num = SteamDSConfig.clientConnectionInfo[playerEntity.source.ConnectionId].m_SteamID;
                 }
                 else
                 {
                     num = 0UL;
                 }
             }
             else
             {
                 num = playerEntity.source.RemoteEndPoint.SteamId.Id;
             }
             if (duration >= 0 && num > 0UL && !CoopKick.IsBanned(num))
             {
                 CoopKick.Instance.kickedSteamIds.Add(new CoopKick.KickedPlayer
                 {
                     Name       = playerEntity.GetState <IPlayerState>().name,
                     SteamId    = num,
                     BanEndTime = ((duration <= 0) ? 0L : (DateTime.UtcNow.ToUnixTimestamp() + (long)duration))
                 });
                 CoopKick.SaveList();
             }
         }
         catch (Exception exception)
         {
             Debug.LogException(exception);
         }
         playerEntity.source.Disconnect(new CoopKickToken
         {
             KickMessage = message,
             Banned      = (duration == 0)
         });
     }
 }
Пример #3
0
 public static void KickPlayer(BoltConnection connection, BoltEntity playerEntity, int duration, string message = "HOST_KICKED_YOU")
 {
     if (!BoltNetwork.isServer)
     {
         return;
     }
     if (connection == null && playerEntity == null)
     {
         return;
     }
     if (connection == null)
     {
         connection = playerEntity.source;
     }
     try
     {
         ulong steamId = CoopKick.GetSteamId(connection);
         if (steamId == 0UL)
         {
             steamId = CoopKick.GetSteamId(playerEntity);
         }
         string name = (!(playerEntity == null)) ? playerEntity.GetState <IPlayerState>().name : steamId.ToString();
         if (duration >= 0 && steamId > 0UL && !CoopKick.IsBanned(steamId))
         {
             CoopKick.Instance.kickedSteamIds.Add(new CoopKick.KickedPlayer
             {
                 Name       = name,
                 SteamId    = steamId,
                 BanEndTime = ((duration <= 0) ? 0L : (DateTime.UtcNow.ToUnixTimestamp() + (long)duration))
             });
             CoopKick.SaveList();
         }
     }
     catch (Exception exception)
     {
         Debug.LogException(exception);
     }
     connection.Disconnect(new CoopKickToken
     {
         KickMessage = message,
         Banned      = (duration == 0)
     });
 }
Пример #4
0
 public static void KickPlayer(BoltEntity playerEntity, int duration, string message = "Host kicked you from the game")
 {
     if (BoltNetwork.isServer)
     {
         if (duration >= 0 && !CoopKick.IsBanned(playerEntity.source.RemoteEndPoint.SteamId))
         {
             CoopKick.Instance.kickedSteamIds.Add(new CoopKick.KickedPlayer
             {
                 Name       = playerEntity.GetState <IPlayerState>().name,
                 SteamId    = playerEntity.source.RemoteEndPoint.SteamId.Id,
                 BanEndTime = (duration <= 0) ? 0L : (DateTime.UtcNow.ToUnixTimestamp() + (long)duration)
             });
             CoopKick.SaveList();
         }
         playerEntity.source.Disconnect(new CoopKickToken
         {
             KickMessage = message,
             Banned      = duration == 0
         });
     }
 }
Пример #5
0
 public override void Connected(BoltConnection connection)
 {
     if (BoltNetwork.isServer)
     {
         if (CoopKick.IsBanned(connection.RemoteEndPoint.SteamId))
         {
             connection.Disconnect(new CoopKickToken
             {
                 Banned      = true,
                 KickMessage = "Host banned you from his games"
             });
         }
         else
         {
             ClientACK.Create(connection).Send();
         }
     }
     if (!CoopPeerStarter.DedicatedHost && Scene.HudGui && Scene.HudGui.MpPlayerList && Scene.HudGui.MpPlayerList.gameObject && Scene.HudGui.MpPlayerList.gameObject.activeInHierarchy)
     {
         Scene.HudGui.MpPlayerList.Refresh();
     }
 }
Пример #6
0
 public override void Connected(BoltConnection connection)
 {
     if (BoltNetwork.isServer)
     {
         if (CoopKick.IsBanned(connection.RemoteEndPoint.SteamId))
         {
             Debug.Log("TELL CLIENT HE WAS BANNED");
             connection.Disconnect(new CoopKickToken
             {
                 Banned      = true,
                 KickMessage = "HOST_BANNED_YOU"
             });
         }
         else
         {
             ClientACK.Create(connection).Send();
             CoopTreeGrid.TodoPlayerSweeps.Add(connection);
         }
     }
     if (!CoopPeerStarter.DedicatedHost && Scene.HudGui && Scene.HudGui.MpPlayerList && Scene.HudGui.MpPlayerList.gameObject && Scene.HudGui.MpPlayerList.gameObject.activeInHierarchy)
     {
         Scene.HudGui.MpPlayerList.Refresh();
     }
 }
Пример #7
0
 /// <summary>
 /// Gets if the user is banned
 /// </summary>
 /// <param name="id"></param>
 public bool IsBanned(string id) => CoopKick.IsBanned(new UdpSteamID(ulong.Parse(id)));
Пример #8
0
 /// <summary>
 /// Gets if the player is banned
 /// </summary>
 /// <param name="id"></param>
 public bool IsBanned(string id) => CoopKick.IsBanned(new UdpSteamID(Convert.ToUInt64(id)));