From ca433e537e43fd43e82597acb2c7729c18c0484e Mon Sep 17 00:00:00 2001 From: hydrant Date: Mon, 3 Dec 2018 00:46:13 +0100 Subject: [PATCH] Added /tov and /ghv (To Vehicle & Get Here Vehicle) --- Server/Commands/Admin.cs | 38 +++++++++++++++++++++++++++++++ Server/Commands/User.cs | 12 ++++++++-- Server/Managers/VehicleManager.cs | 5 ++++ 3 files changed, 53 insertions(+), 2 deletions(-) diff --git a/Server/Commands/Admin.cs b/Server/Commands/Admin.cs index d3388573..f88dd7b4 100644 --- a/Server/Commands/Admin.cs +++ b/Server/Commands/Admin.cs @@ -667,6 +667,44 @@ namespace reallife_gamemode.Server.Commands target.SendChatMessage("~b~Deine Waffen wurden dir von " + player.Name + "(Admin) abgenommen"); player.SendChatMessage("~b~Dem Spieler " + target.Name + " wurden erfolgreich alle Waffen abgenommen "); } + + [Command("tov", "~m~Benutzung: ~s~/tov [Fahrzeug ID]")] + public void CmdAdminTov(Client player, int vehid) + { + if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true) + { + ChatService.NotAuthorized(player); + return; + } + + Vehicle v = VehicleManager.GetVehicleFromId(vehid); + if(v == null) + { + player.SendChatMessage("~r~[FEHLER]~s~ Dieses Fahrzeug existiert nicht."); + return; + } + + player.Position = v.Position; + } + + [Command("ghv", "~m~Benutzung: ~s~/ghv [Fahrzeug ID]")] + public void CmdAdminGhv(Client player, int vehid) + { + if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true) + { + ChatService.NotAuthorized(player); + return; + } + + Vehicle v = VehicleManager.GetVehicleFromId(vehid); + if (v == null) + { + player.SendChatMessage("~r~[FEHLER]~s~ Dieses Fahrzeug existiert nicht."); + return; + } + + v.Position = player.Position; + } #endregion diff --git a/Server/Commands/User.cs b/Server/Commands/User.cs index adbf9e3b..aa5f86db 100644 --- a/Server/Commands/User.cs +++ b/Server/Commands/User.cs @@ -2,6 +2,7 @@ using reallife_gamemode.Model; using reallife_gamemode.Server.Entities; using reallife_gamemode.Server.Extensions; +using reallife_gamemode.Server.Util; using System; using System.Collections.Generic; using System.Linq; @@ -69,11 +70,18 @@ namespace reallife_gamemode.Server.Commands if(pVeh.GetServerVehicle() is ServerVehicle veh) { - player.SendChatMessage("~m~" + ((VehicleHash)pVeh.Model) + " | " + veh.ToString() + " | Farbe 1: " + pVeh.PrimaryColor + " | Farbe 2: " + pVeh.SecondaryColor); + if(player.GetUser().IsAdmin(AdminLevel.SUPPORTER)) + { + player.SendChatMessage("~m~" + ((VehicleHash)pVeh.Model) + " | " + veh.ToString() + " | Farbe 1: " + pVeh.PrimaryColor + " | Farbe 2: " + pVeh.SecondaryColor + " | ID: " + pVeh.Handle.Value); + } + else + { + player.SendChatMessage("~m~" + ((VehicleHash)pVeh.Model) + " | Farbe 1: " + pVeh.PrimaryColor + " | Farbe 2: " + pVeh.SecondaryColor + " | ID: " + pVeh.Handle.Value); + } } else { - player.SendChatMessage("~m~" + ((VehicleHash)pVeh.Model) + " | Farbe 1: " + pVeh.PrimaryColor + " | Farbe 2: " + pVeh.SecondaryColor); + player.SendChatMessage("~m~" + ((VehicleHash)pVeh.Model) + " | Farbe 1: " + pVeh.PrimaryColor + " | Farbe 2: " + pVeh.SecondaryColor + " | ID: " + pVeh.Handle.Value); } } } diff --git a/Server/Managers/VehicleManager.cs b/Server/Managers/VehicleManager.cs index d2345fbb..d449561e 100644 --- a/Server/Managers/VehicleManager.cs +++ b/Server/Managers/VehicleManager.cs @@ -41,6 +41,11 @@ namespace reallife_gamemode.Server.Managers return NAPI.Pools.GetAllVehicles().Find(v => v.Handle == handle); } + public static Vehicle GetVehicleFromId(int id) + { + return NAPI.Pools.GetAllVehicles().Find(v => v.Handle.Value == id); + } + public static Vehicle GetVehicleFromServerVehicle(ServerVehicle serverVehicle) { if(!_serverVehicles.ContainsKey(serverVehicle.Id))