diff --git a/ReallifeGamemode.Server/Commands/AdminCommands.cs b/ReallifeGamemode.Server/Commands/AdminCommands.cs index 14d43bd9..449eb6c3 100644 --- a/ReallifeGamemode.Server/Commands/AdminCommands.cs +++ b/ReallifeGamemode.Server/Commands/AdminCommands.cs @@ -129,7 +129,7 @@ namespace ReallifeGamemode.Server.Commands ChatService.NotAuthorized(player); return; } - message = Regex.Replace(message, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + message = Regex.Replace(message, "(~[a-zA-Z]~)|(!{(.*)})", ""); message = Regex.Replace(message, "#([0-9A-Fa-f]{6})", m => "!{" + m.Groups[0].Value + "}"); string publicMessage = "~b~(( " + player.GetUser().AdminLevel.GetName() + " " + player.Name + ": " + message + " ~b~))"; @@ -250,7 +250,7 @@ namespace ReallifeGamemode.Server.Commands return; } - msg = Regex.Replace(msg, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + msg = Regex.Replace(msg, "(~[a-zA-Z]~)|(!{(.*)})", ""); ChatService.SendMessage(player, "~y~PM an " + target.Name + ": " + msg + " "); string Message = "~y~PM von " + player.GetUser().AdminLevel.GetName() + " " + player.Name + ": " + msg + ""; @@ -319,7 +319,7 @@ namespace ReallifeGamemode.Server.Commands return; } - message = Regex.Replace(message, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + message = Regex.Replace(message, "(~[a-zA-Z]~)|(!{(.*)})", ""); ChatService.BroadcastAdmin("~r~[ADMINCHAT]~s~ " + player.GetUser().AdminLevel.GetName() + " " + player.Name + "~w~: " + message, AdminLevel.ADMIN); } @@ -623,7 +623,7 @@ namespace ReallifeGamemode.Server.Commands return; } - reason = Regex.Replace(reason, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + reason = Regex.Replace(reason, "(~[a-zA-Z]~)|(!{(.*)})", ""); target.GetUser().BanPlayer(admin, reason, mins); } diff --git a/ReallifeGamemode.Server/Commands/FactionCommands.cs b/ReallifeGamemode.Server/Commands/FactionCommands.cs index 8ffcc6d6..2d5e98b1 100644 --- a/ReallifeGamemode.Server/Commands/FactionCommands.cs +++ b/ReallifeGamemode.Server/Commands/FactionCommands.cs @@ -29,7 +29,7 @@ namespace ReallifeGamemode.Server.Commands return; } - message = Regex.Replace(message, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + message = Regex.Replace(message, "(~[a-zA-Z]~)|(!{(.*)})", ""); string broadcastMessage = "!{02FCFF}** " + player.GetUser().GetFactionRank().RankName + " " + player.Name + ": " + message + " )) **"; ChatService.BroadcastFaction(broadcastMessage, f); @@ -45,7 +45,7 @@ namespace ReallifeGamemode.Server.Commands return; } - message = Regex.Replace(message, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + message = Regex.Replace(message, "(~[a-zA-Z]~)|(!{(.*)})", ""); string broadcastMessage = "!{33AA33}** " + player.GetUser().GetFactionRank().RankName + " " + player.Name + ": " + message + ", over **"; ChatService.BroadcastFaction(broadcastMessage, f); @@ -61,7 +61,7 @@ namespace ReallifeGamemode.Server.Commands return; } - message = Regex.Replace(message, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + message = Regex.Replace(message, "(~[a-zA-Z]~)|(!{(.*)})", ""); string broadcastMessage = "!{CC3333}** " + player.GetUser().GetFactionRank().RankName + " " + player.Name + ": " + message + ", over **"; using (var context = new DatabaseContext()) @@ -111,12 +111,6 @@ namespace ReallifeGamemode.Server.Commands } } - [Command("uninvite", "~m~Benutzung: ~s~/uninvite [Name]")] - public void CmdFactionUninvite(Client player, string name) - { - - } - [Command("lc", "~m~Benutzung: ~s~/lc [Nachricht]", GreedyArg = true)] public void CmdFactionLc(Client player, string message) { @@ -126,7 +120,7 @@ namespace ReallifeGamemode.Server.Commands return; } - message = Regex.Replace(message, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + message = Regex.Replace(message, "(~[a-zA-Z]~)|(!{(.*)})", ""); string broadcastMsg = "~y~[" + player.GetUser().Faction.Name + "] " + player.Name + ": " + message; @@ -190,21 +184,29 @@ namespace ReallifeGamemode.Server.Commands player.SendNotification("Du hast~g~" + target.Name + " ~s~geheilt.", false); } #endregion - #region Global Fraktions Commands - [Command("duty", "~m~Benutzung: ~s~/duty")] - public void CmdFactionDuty(Client player) + #region Staatsfraktionen (LSPD / FBI) Commands + [Command("wanted", "~m~Benutzung: ~s~/wa(nted) [Name / ID] [Anzahl] [Grund]", Alias = "wa", GreedyArg = true)] + public void CmdFactionWanted(Client player, string nameOrId, int amount, string reason) { - if (player.GetData("duty") == false) + User user = player.GetUser(); + if (user == null || (user.FactionId != 1 && user.FactionId != 2)) { - player.SetData("duty", true); - player.SendNotification("~g~Du bist jetzt im Dienst!", false); + ChatService.NotAuthorized(player); + return; } - else + + Client target = ClientService.GetClientByNameOrId(nameOrId); + if (target == null || !target.IsLoggedIn()) { - player.SetData("duty", false); - player.SendNotification("~r~Schönen Feierabend!", false); + ChatService.PlayerNotFound(player); + return; } + + User targetUser = target.GetUser(); + targetUser.GiveWanteds(player, amount, reason); } #endregion + #region Global Fraktions Commands + #endregion } } diff --git a/ReallifeGamemode.Server/Commands/GroupCommands.cs b/ReallifeGamemode.Server/Commands/GroupCommands.cs index d8620fad..fdb77fa3 100644 --- a/ReallifeGamemode.Server/Commands/GroupCommands.cs +++ b/ReallifeGamemode.Server/Commands/GroupCommands.cs @@ -21,7 +21,7 @@ namespace ReallifeGamemode.Server.Commands return; } - message = Regex.Replace(message, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + message = Regex.Replace(message, "(~[a-zA-Z]~)|(!{(.*)})", ""); message = $"{player.Name}: {message}"; ChatService.BroadcastGroup(message, group); diff --git a/ReallifeGamemode.Server/Events/Chat.cs b/ReallifeGamemode.Server/Events/Chat.cs index 9638ca62..5269b9cc 100644 --- a/ReallifeGamemode.Server/Events/Chat.cs +++ b/ReallifeGamemode.Server/Events/Chat.cs @@ -9,7 +9,7 @@ namespace ReallifeGamemode.Server.Events [ServerEvent(Event.ChatMessage)] public void ChatEvent(Client player, string message) { - string serverMsg = Regex.Replace(message, "(~[a-zA-Z]~{1})|(!{(.*)})", ""); + string serverMsg = Regex.Replace(message, "(~[a-zA-Z]~)|(!{(.*)})", ""); if (serverMsg.Trim().Length == 0) return; NAPI.Player.GetPlayersInRadiusOfPlayer(10, player).ForEach(p => {