add ahelp and other commands

This commit is contained in:
Michael
2020-01-24 18:38:04 +01:00
parent 4761baeea4
commit 461b9aa4cb
2 changed files with 144 additions and 5 deletions

View File

@@ -23,7 +23,7 @@ using ReallifeGamemode.Services;
/** /**
* @overview Life of German Reallife - Admin Commands (Admin.cs) * @overview Life of German Reallife - Admin Commands (Admin.cs)
* @author VegaZ, hydrant, xSprite, balbo, kookroach, aviate * @author VegaZ, hydrant, xSprite, balbo, kookroach, aviate, MichaPlays
* @copyright (c) 2008 - 2019 Life of German * @copyright (c) 2008 - 2019 Life of German
*/ */
@@ -126,6 +126,52 @@ namespace ReallifeGamemode.Server.Commands
} }
#endregion #endregion
#region ahelp
[Command("ahelp", "~m~Benutzung: ~s~/ahelp")]
public void CmdAdminHelp(Client player)
{
if (!player.GetUser()?.IsAdmin(AdminLevel.MAPPING) ?? true)
{
ChatService.NotAuthorized(player);
return;
}
else
{
switch (player.GetUser().AdminLevel)
{
case AdminLevel.MAPPING:
ChatService.SendMessage(player, "~b~ " + "/team, /tc, /position");
break;
case AdminLevel.ENTWICKLUNG:
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");
break;
case AdminLevel.ADMIN:
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~ " + "/sethp, /setarmor, /arevive, /aunjail, /aclear, /clothes, /props,/aclear");
break;
case AdminLevel.ADMIN3:
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~ " + "/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~ " + "/makeadmin, /whitelist, /blind");
break;
}
}
}
#endregion
#region Mapping / Entwicklung #region Mapping / Entwicklung
[Command("team", "~m~Benutzung: ~s~/team")] [Command("team", "~m~Benutzung: ~s~/team")]
@@ -175,6 +221,49 @@ namespace ReallifeGamemode.Server.Commands
#endregion #endregion
#region Support #region Support
[Command("tsupport", "~m~Benutzung: ~s~/tsupport", Alias = "ts")]
public void tsup(Client player)
{
if (!player.GetUser()?.IsAdmin(AdminLevel.SUPPORTER) ?? true)
{
ChatService.NotAuthorized(player);
return;
}
if (!GlobalHelper.tsupAdmins.Contains(player))
{
GlobalHelper.tsupAdmins.Add(player);
player.SetSharedData("blipColor", 30);
ChatService.SendMessage(player, "~g~ ** " + "Du befindest dich im T-Support");
}
else
{
GlobalHelper.tsupAdmins.Remove(player);
ChatService.SendMessage(player, "!{#ee4d2e}** " + "Du befindest dich nicht mehr im T-Support");
using (var dbContext = new DatabaseContext())
{
User targetUser = player.GetUser(dbContext);
switch (targetUser.FactionId)
{
case null:
player.SetSharedData("blipColor", 0);
break;
case 8:
player.SetSharedData("blipColor", 83);
break;
case 7:
player.SetSharedData("blipColor", 52);
break;
case 4:
player.SetSharedData("blipColor", 5);
break;
}
}
}
}
[Command("aduty", "~m~Benutzung: ~s~/aduty")] [Command("aduty", "~m~Benutzung: ~s~/aduty")]
public void CmdAduty(Client player) public void CmdAduty(Client player)
@@ -188,7 +277,7 @@ namespace ReallifeGamemode.Server.Commands
if (!GlobalHelper.DutyAdmins.Contains(player)) if (!GlobalHelper.DutyAdmins.Contains(player))
{ {
GlobalHelper.DutyAdmins.Add(player); GlobalHelper.DutyAdmins.Add(player);
ChatService.Broadcast("!{#ee4d2e}** " + player.Name + " hat sich zum Support angemeldet"); ChatService.Broadcast("~g~[SUPPORT] " + player.Name + " hat sich zum Support angemeldet");
player.TriggerEvent("toggleADutyMode", true); player.TriggerEvent("toggleADutyMode", true);
@@ -197,7 +286,7 @@ namespace ReallifeGamemode.Server.Commands
else else
{ {
GlobalHelper.DutyAdmins.Remove(player); GlobalHelper.DutyAdmins.Remove(player);
ChatService.Broadcast("!{#ee4d2e}** " + player.Name + " hat sich vom Support abgemeldet"); ChatService.Broadcast("!{#ee4d2e}[SUPPORT] " + player.Name + " hat sich vom Support abgemeldet");
player.TriggerEvent("toggleADutyMode", false); player.TriggerEvent("toggleADutyMode", false);
} }
@@ -1098,6 +1187,55 @@ namespace ReallifeGamemode.Server.Commands
ChatService.SendMessage(player, "~b~Du hast die Rüstung von " + target.Name + " auf " + armor + " gesetzt."); ChatService.SendMessage(player, "~b~Du hast die Rüstung von " + target.Name + " auf " + armor + " gesetzt.");
} }
[Command("aclear", "~m~Benutzung: ~s~/aclear [Name / ID] [Grund]", GreedyArg = true)]
public void CmdFactionClear(Client player, string nameOrId, string reason)
{
User user = player.GetUser();
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN2) ?? true)
{
ChatService.NotAuthorized(player);
return;
}
Client target = ClientService.GetClientByNameOrId(nameOrId);
if (target == null || !target.IsLoggedIn())
{
ChatService.PlayerNotFound(player);
return;
}
using (var dbContext = new DatabaseContext())
{
User targetUser = target.GetUser(dbContext);
if (targetUser.Wanteds == 0)
{
ChatService.ErrorMessage(player, "Der Spieler hat keine Wanteds");
return;
}
ChatService.SendMessage(target, "!{#8181E9}Deine Akte wurde vom Admin " + player.Name + " gelöscht. Grund: " + reason);
ChatService.BroadcastFaction("!{#8181E9}HQ: Die Akte von " + target.Name + " wurde vom Admin " + player.Name + " gelöscht. Grund: " + reason + ".", new List<int>() { 1, 3 });
switch (targetUser.FactionId)
{
case null:
target.SetSharedData("blipColor", 0);
break;
case 8:
target.SetSharedData("blipColor", 83);
break;
case 7:
target.SetSharedData("blipColor", 52);
break;
case 4:
target.SetSharedData("blipColor", 5);
break;
}
target.TriggerEvent("jailTime", 0);
targetUser.Wanteds = 0;
dbContext.SaveChanges();
}
}
#endregion #endregion
#region ALevel3 #region ALevel3

View File

@@ -9,6 +9,7 @@ namespace ReallifeGamemode.Server.Util
public static class GlobalHelper public static class GlobalHelper
{ {
public static List<Client> DutyAdmins = new List<Client>(); public static List<Client> DutyAdmins = new List<Client>();
public static List<Client> tsupAdmins = new List<Client>();
public static Dictionary<string, string> CustomJoinMessages = new Dictionary<string, string> public static Dictionary<string, string> CustomJoinMessages = new Dictionary<string, string>
{ {