From f5a40c67b5277bd6c7a651dcabd515744813fc29 Mon Sep 17 00:00:00 2001 From: Mac_Slash Date: Tue, 21 Apr 2020 14:59:49 +0200 Subject: [PATCH] AdminDuty Try --- .../Commands/AdminCommands.cs | 35 ++++++++++++++----- .../Events/EnterVehicleAttempt.cs | 2 +- .../Extensions/ClientExtension.cs | 5 +++ 3 files changed, 32 insertions(+), 10 deletions(-) diff --git a/ReallifeGamemode.Server/Commands/AdminCommands.cs b/ReallifeGamemode.Server/Commands/AdminCommands.cs index 150b04a7..5fe7f63e 100644 --- a/ReallifeGamemode.Server/Commands/AdminCommands.cs +++ b/ReallifeGamemode.Server/Commands/AdminCommands.cs @@ -147,21 +147,36 @@ namespace ReallifeGamemode.Server.Commands ChatService.SendMessage(player, "~b~ " + "/team, /tc, /position"); break; case AdminLevel.SUPPORTER: - ChatService.SendMessage(player, "~b~ " + "/tsupport, /showtickets, /rc, /rc quit, /o, /pm, /dimension, /to, /gh, /clearchat, /skick"); + ChatService.SendMessage(player, "~b~ " + "/team, /tc, /position, /tsupport, /showtickets, /rc, /rc quit, /o, /pm, /dimension, /to, /gh, /clearchat, /skick"); break; case AdminLevel.ADMIN: + ChatService.SendMessage(player, "~b~ " + "/team, /tc, /position, /tsupport, /showtickets, /rc, /rc quit, /o, /pm, /dimension, /to, /gh, /clearchat, /skick"); ChatService.SendMessage(player, "~b~ " + "/a, /countdown, /freeze, /unfreeze, /mark, /gotmark, /gotox, /up, /setdimension, /spec, /warn, /ip, /kick, /ban /unban, /slap, /takeweapon, /tov, /ghv, /factionlist, /businesslist, /joblist"); break; case AdminLevel.ADMIN2: + ChatService.SendMessage(player, "~b~ " + "/team, /tc, /position, /tsupport, /showtickets, /rc, /rc quit, /o, /pm, /dimension, /to, /gh, /clearchat, /skick"); + ChatService.SendMessage(player, "~b~ " + "/a, /countdown, /freeze, /unfreeze, /mark, /gotmark, /gotox, /up, /setdimension, /spec, /warn, /ip, /kick, /ban /unban, /slap, /takeweapon, /tov, /ghv, /factionlist, /businesslist, /joblist"); ChatService.SendMessage(player, "~b~ " + "/sethp, /setarmor, /arevive, /aunjail, /aclear, /clothes, /props"); break; case AdminLevel.ADMIN3: + ChatService.SendMessage(player, "~b~ " + "/team, /tc, /position, /tsupport, /showtickets, /rc, /rc quit, /o, /pm, /dimension, /to, /gh, /clearchat, /skick"); + ChatService.SendMessage(player, "~b~ " + "/a, /countdown, /freeze, /unfreeze, /mark, /gotmark, /gotox, /up, /setdimension, /spec, /warn, /ip, /kick, /ban /unban, /slap, /takeweapon, /tov, /ghv, /factionlist, /businesslist, /joblist"); + ChatService.SendMessage(player, "~b~ " + "/sethp, /setarmor, /arevive, /aunjail, /aclear, /clothes, /props"); ChatService.SendMessage(player, "~b~ " + "/adice, /settime, /setweather, /rsetarmor, /rgiveweapon, /giveweapon, /veh, /fv, /vfix, /vdestroy, /vlivery, /vcolor, /vehsmoke, /aneon, /mod, /showtuningmenu, /rvdestroy, /vsethp"); break; case AdminLevel.HEADADMIN: + ChatService.SendMessage(player, "~b~ " + "/team, /tc, /position, /tsupport, /showtickets, /rc, /rc quit, /o, /pm, /dimension, /to, /gh, /clearchat, /skick"); + ChatService.SendMessage(player, "~b~ " + "/a, /countdown, /freeze, /unfreeze, /mark, /gotmark, /gotox, /up, /setdimension, /spec, /warn, /ip, /kick, /ban /unban, /slap, /takeweapon, /tov, /ghv, /factionlist, /businesslist, /joblist"); + ChatService.SendMessage(player, "~b~ " + "/sethp, /setarmor, /arevive, /aunjail, /aclear, /clothes, /props"); + ChatService.SendMessage(player, "~b~ " + "/adice, /settime, /setweather, /rsetarmor, /rgiveweapon, /giveweapon, /veh, /fv, /vfix, /vdestroy, /vlivery, /vcolor, /vehsmoke, /aneon, /mod, /showtuningmenu, /rvdestroy, /vsethp"); ChatService.SendMessage(player, "~b~ " + "/aspeed, /set, /setmoney, /givemoney, /sethandmoney, /givehandmoney, /paydaydrop, /setwage, /freekh, /ainvite, /makeleader, /managefactionranks, /setweaponrack, /rmweaponrack, /setweaponrank, /giveitem, /inventory, /save, /remove, /house, /setbusinessbankbalance, /reloaddors, /interior, /editmode, /setbliptemplate, /ipl, /load, /quicksavemode, /createturf, /setturf, /cancleturf, /reloadturfs, /deleteturfs, /setturfpoint"); break; case AdminLevel.PROJEKTLEITUNG: + ChatService.SendMessage(player, "~b~ " + "/team, /tc, /position, /tsupport, /showtickets, /rc, /rc quit, /o, /pm, /dimension, /to, /gh, /clearchat, /skick"); + ChatService.SendMessage(player, "~b~ " + "/a, /countdown, /freeze, /unfreeze, /mark, /gotmark, /gotox, /up, /setdimension, /spec, /warn, /ip, /kick, /ban /unban, /slap, /takeweapon, /tov, /ghv, /factionlist, /businesslist, /joblist"); + ChatService.SendMessage(player, "~b~ " + "/sethp, /setarmor, /arevive, /aunjail, /aclear, /clothes, /props"); + ChatService.SendMessage(player, "~b~ " + "/adice, /settime, /setweather, /rsetarmor, /rgiveweapon, /giveweapon, /veh, /fv, /vfix, /vdestroy, /vlivery, /vcolor, /vehsmoke, /aneon, /mod, /showtuningmenu, /rvdestroy, /vsethp"); + ChatService.SendMessage(player, "~b~ " + "/aspeed, /set, /setmoney, /givemoney, /sethandmoney, /givehandmoney, /paydaydrop, /setwage, /freekh, /ainvite, /makeleader, /managefactionranks, /setweaponrack, /rmweaponrack, /setweaponrank, /giveitem, /inventory, /save, /remove, /house, /setbusinessbankbalance, /reloaddors, /interior, /editmode, /setbliptemplate, /ipl, /load, /quicksavemode, /createturf, /setturf, /cancleturf, /reloadturfs, /deleteturfs, /setturfpoint"); ChatService.SendMessage(player, "~b~ " + "/makeadmin, /whitelist, /blind"); break; } @@ -230,7 +245,10 @@ namespace ReallifeGamemode.Server.Commands ChatService.NotAuthorized(player); return; } - + if(!player.IsAdminDuty()) + { + ChatService.SendMessage(player, "~r~ Du bist nicht im Admin-Duty-Modus!"); + } if (!GlobalHelper.tsupAdmins.Contains(player)) { GlobalHelper.tsupAdmins.Add(player); @@ -265,7 +283,6 @@ namespace ReallifeGamemode.Server.Commands } } } - [Command("aduty", "~m~Benutzung: ~s~/aduty")] public void CmdAduty(Player player) { @@ -275,18 +292,18 @@ namespace ReallifeGamemode.Server.Commands return; } - if (!GlobalHelper.DutyAdmins.Contains(player)) - { - GlobalHelper.DutyAdmins.Add(player); + if (player.GetData("Adminduty") == false) + { + + player.SetData("Adminduty", true); ChatService.Broadcast("~g~[SUPPORT] " + player.Name + " hat sich zum Support angemeldet"); player.TriggerEvent("toggleADutyMode", true); - } else { - GlobalHelper.DutyAdmins.Remove(player); + player.SetData("Adminduty", false); ChatService.Broadcast("!{#ee4d2e}[SUPPORT] " + player.Name + " hat sich vom Support abgemeldet"); player.TriggerEvent("toggleADutyMode", false); @@ -1985,7 +2002,7 @@ namespace ReallifeGamemode.Server.Commands } } - [Command("save", "~m~Benutzung: ~s~/save [Typ = ~g~Blip~s~, ~g~Goto (X)~s~, ~r~Marker~s~, ~r~Ped~s~, ~r~Pickup~s~, ~r~TextLabel~s~, ~g~Vehicle~s~, ~g~FVehicle~s~, ~g~SVehicle (X)~s~, ~g~JVehicle (X)~s~, ~g~ShoolVehicle (X)~s~, ~g~NoobVehicle~s~, ~g~Location~s~] (Weitere Angaben) = (X)", GreedyArg = true)] + [Command("save", "~m~Benutzung: ~s~/save [Typ = ~g~Blip~s~, ~g~Goto (X)~s~, ~r~Marker~s~, ~r~Ped~s~, ~r~Pickup~s~, ~r~TextLabel~s~, ~g~Vehicle~s~, ~g~FVehicle~s~, ~g~SVehicle (X)~s~, ~g~JVehicle (X)~s~, ~g~SchoolVehicle (X)~s~, ~g~NoobVehicle~s~, ~g~Location~s~] (Weitere Angaben) = (X)", GreedyArg = true)] public void CmdAdminSave(Player player, string typ, string option1 = null, string option2 = null) { if (!player.GetUser()?.IsAdmin(AdminLevel.HEADADMIN) ?? true) diff --git a/ReallifeGamemode.Server/Events/EnterVehicleAttempt.cs b/ReallifeGamemode.Server/Events/EnterVehicleAttempt.cs index 90929ebf..6a191b8e 100644 --- a/ReallifeGamemode.Server/Events/EnterVehicleAttempt.cs +++ b/ReallifeGamemode.Server/Events/EnterVehicleAttempt.cs @@ -58,7 +58,7 @@ namespace ReallifeGamemode.Server.Events } if (vehicle.GetServerVehicle() is NoobVehicle nVeh) { - if (player.GetUser().PlayedMinutes > 1800) + if (player.GetUser().PlayedMinutes > 1800 && !player.IsAdminDuty()) { player.StopAnimation(); player.SendNotification("~r~Du hast schon über 30 Spielstunden!", true); diff --git a/ReallifeGamemode.Server/Extensions/ClientExtension.cs b/ReallifeGamemode.Server/Extensions/ClientExtension.cs index c723d4f4..a2eb36c0 100644 --- a/ReallifeGamemode.Server/Extensions/ClientExtension.cs +++ b/ReallifeGamemode.Server/Extensions/ClientExtension.cs @@ -70,6 +70,11 @@ namespace ReallifeGamemode.Server.Extensions var user = player.GetUser(); return user.GetData("duty", false); } + public static bool IsAdminDuty(this Player player) + { + var user = player.GetUser(); + return user.GetData("Adminduty", false); + } public static Vector3 GetPositionFromPlayer(Player player, float distance, int offset = 0) { var pos = player.Position;