コード例 #1
0
ファイル: AdminCmds.cs プロジェクト: unrealgta/Reallife-V
        public void CMD_Ban(Client client, Client player, string grund)
        {
            Players tarInfo = PlayerHelper.GetPlayer(player);
            Players p       = PlayerHelper.GetPlayer(player);
            BanLog  Banlog  = PlayerHelper.BanLogs(client);

            if (!AdminSystem.HasRank(client, 2))
            {
                client.SendNotification("~r~Du hast dazu keine Berechtigung!");
                return;
            }

            if (p.username == null)
            {
                client.SendNotification("Spieler existiert nicht!");
            }

            tarInfo.ban = 1;
            Database.Update(tarInfo);
            tarInfo.Update();
            player.SendChatMessage("~r~Du wurdest gebannt!");
            NAPI.Chat.SendChatMessageToAll($"[~r~SERVER~w~]Der Spieler {player.Name} wurde wegen: {grund}, ~r~gebannt!");
            client.SendNotification($"Du hast den Spieler {player.Name} erfolgreich gebannt!");
            Banlog          = new BanLog();
            Banlog.banned   = player.Name;
            Banlog.bannedby = client.Name;
            Banlog.grund    = grund;
            Database.Upsert(Banlog);
            player.Kick();
        }
コード例 #2
0
        public void CMD_Ban(Client client, Client player, string grund)
        {
            Players tarInfo = PlayerHelper.GetPlayer(player);
            Players p       = PlayerHelper.GetPlayer(player);
            BanLog  Banlog  = PlayerHelper.BanLogs(client);

            if (!AdminSystem.HasRank(client, 2))
            {
                client.SendNotification("~r~Vous n'avez pas l'autorisation!");
                return;
            }

            if (p.username == null)
            {
                client.SendNotification("Le joueur n'existe pas!");
            }

            tarInfo.ban = 1;
            Database.Update(tarInfo);
            tarInfo.Update();
            player.SendChatMessage("~r~Vous avez été banni!");
            NAPI.Chat.SendChatMessageToAll($"[~r~SERVER~w~]Le joueur {player.Name} à cause de: {grund}, ~r~ban");
            client.SendNotification($"Vous avez ban le joueur { player.Name} avec succès!");
            Banlog          = new BanLog();
            Banlog.banned   = player.Name;
            Banlog.bannedby = client.Name;
            Banlog.grund    = grund;
            Database.Upsert(Banlog);
            player.Kick();
        }
コード例 #3
0
ファイル: PlayerHelper.cs プロジェクト: unrealgta/Reallife-V
        public static BanLog BanLogs(Client client)
        {
            if (!client.HasData("ID"))
            {
                return(null);
            }

            int    bpid   = client.GetData("ID");
            BanLog Banlog = Database.GetById <BanLog>(bpid);

            return(Banlog);
        }
コード例 #4
0
ファイル: Logger.cs プロジェクト: Pandanom/DisBot
        public static async Task UserBanned(SocketUser sU, SocketGuild sG)
        {
            if (!Directory.Exists(folder))
            {
                Directory.CreateDirectory(folder);
            }
            if (!Directory.Exists(folder + "//" + sG.Id.ToString()))
            {
                Directory.CreateDirectory(folder + "//" + sG.Id.ToString());
            }

            User bannedUser = new User(sU.Username, sU.Id, sU.GetAvatarUrl(), true, DateTime.Now);

            BanLog log;

            if (!File.Exists(folder + "//" + sG.Id.ToString() + "//BanLog.json"))
            {
                log             = new BanLog();
                log.ServerName  = sG.Name;
                log.bannedUsers = new List <User>();
                log.bannedUsers.Add(bannedUser);
            }
            else
            {
                log = JsonConvert.DeserializeObject <BanLog>(File.ReadAllText(folder + "//" + sG.Id.ToString() + "//BanLog.json"));
                if (log.ServerName != sG.Name)
                {
                    log.ServerName = sG.Name;
                }
                bool fl = true;
                foreach (var u in log.bannedUsers)
                {
                    if (u.id == bannedUser.id)
                    {
                        u.name      = bannedUser.name;
                        u.avatarUrl = bannedUser.avatarUrl;
                        u.isBanned  = true;
                        u.date      = bannedUser.date;
                        fl          = false;
                        break;
                    }
                }
                if (fl)
                {
                    log.bannedUsers.Add(bannedUser);
                }
            }
            await Task.Run(() => { File.WriteAllText(folder + "//" + sG.Id.ToString() + "//BanLog.json", JsonConvert.SerializeObject(log, Formatting.Indented)); });
        }
コード例 #5
0
ファイル: AdminCmds.cs プロジェクト: unrealgta/Reallife-V
        public void CMD_Warn(Client client, Client player)
        {
            //Spieler Statistiken
            PlayerInfo leaderInfo = PlayerHelper.GetPlayerStats(client);
            Players    playerInfo = PlayerHelper.GetPlayer(player);
            BanLog     banLog     = PlayerHelper.BanLogs(player);

            //Abfrage ob man ein Leader ist
            if (!AdminSystem.HasRank(client, 1))
            {
                client.SendNotification("~r~Du bist kein Admin!");
                return;
            }

            if (client.Name == player.Name)
            {
                client.SendNotification("~r~Du kannst dich nicht selber angeben!");
                return;
            }

            playerInfo.warn += 1;
            playerInfo.Update();

            player.SendChatMessage($"[~r~Server~w~]: Du bekamst eine Verwarnung und besitzt nun ~r~{playerInfo.warn}~w~ Verwarnungen.");

            if (playerInfo.warn == 3)
            {
                player.SendChatMessage("[~r~Server~w~]: Du besitzt zu viele Verwarnungen weswegen du auf diesem Server gesperrt wurdest!");

                playerInfo.ban = 1;
                playerInfo.Update();

                banLog          = new BanLog();
                banLog.banned   = player.Name;
                banLog.bannedby = client.Name;
                banLog.grund    = "3_Verwarnungen";
                banLog.Upsert();

                player.Kick();
            }
        }
コード例 #6
0
        public void CMD_Warn(Client client, Client player)
        {
            //Spieler Statistiken
            PlayerInfo leaderInfo = PlayerHelper.GetPlayerStats(client);
            Players    playerInfo = PlayerHelper.GetPlayer(player);
            BanLog     banLog     = PlayerHelper.BanLogs(player);

            //Abfrage ob man ein Leader ist
            if (!AdminSystem.HasRank(client, 1))
            {
                client.SendNotification("~r~Tu n'es pas Admin");
                return;
            }

            if (client.Name == player.Name)
            {
                client.SendNotification("~r~Tu ne peut pas te warn toi même");
                return;
            }

            playerInfo.warn += 1;
            playerInfo.Update();

            player.SendChatMessage($"[~r~Server~w~]:Vous avez reçu un avertissement, vous avez maintenant ~r~{playerInfo.warn}~w~ avertissement(s).");

            if (playerInfo.warn == 3)
            {
                player.SendChatMessage("[~r~Server~w~]: Vous avez trop d'avertissements sur la raison pour laquelle vous avez été banni sur ce serveur!");

                playerInfo.ban = 1;
                playerInfo.Update();

                banLog          = new BanLog();
                banLog.banned   = player.Name;
                banLog.bannedby = client.Name;
                banLog.grund    = "3_Verwarnungen";
                banLog.Upsert();

                player.Kick();
            }
        }