From e8d2c023715ae5cd5c837c44b23c6045981e1fb0 Mon Sep 17 00:00:00 2001 From: hydrant Date: Mon, 9 Sep 2019 21:15:45 +0200 Subject: [PATCH] /save fvehicle (factionid) --- .../Commands/AdminCommands.cs | 40 ++++++++++++++----- 1 file changed, 29 insertions(+), 11 deletions(-) diff --git a/ReallifeGamemode.Server/Commands/AdminCommands.cs b/ReallifeGamemode.Server/Commands/AdminCommands.cs index 2f1a0136..9948ddfb 100644 --- a/ReallifeGamemode.Server/Commands/AdminCommands.cs +++ b/ReallifeGamemode.Server/Commands/AdminCommands.cs @@ -142,7 +142,8 @@ namespace ReallifeGamemode.Server.Commands player.TriggerEvent("toggleADutyMode", true); - } else + } + else { GlobalHelper.dutyAdmins.Remove(player); ChatService.Broadcast("~r~** " + player.Name + " hat sich vom Support abgemeldet"); @@ -373,7 +374,7 @@ namespace ReallifeGamemode.Server.Commands return; } - if(!int.TryParse(timer_string, out int timer)) + if (!int.TryParse(timer_string, out int timer)) { ChatService.ErrorMessage(player, "Die Zeit muss eine Ganzzahl sein"); return; @@ -1012,20 +1013,20 @@ namespace ReallifeGamemode.Server.Commands } #endregion #region ALevel3 - - + + [Command("adice", "~m~Benutzung: ~s~/adice [Zahl]")] public void CmdUserAdice(Client player, int number) { - if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN3) ?? true) - { + if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN3) ?? true) + { ChatService.NotAuthorized(player); return; - } + } if (!player.IsLoggedIn()) return; - var peopleInRange = NAPI.Player.GetPlayersInRadiusOfPlayer(7, player); + var peopleInRange = NAPI.Player.GetPlayersInRadiusOfPlayer(7, player); foreach (var managedClient in peopleInRange) { @@ -1787,17 +1788,34 @@ namespace ReallifeGamemode.Server.Commands case "fvehicle": if (player.IsInVehicle) { - if (player.GetUser().Faction == null) + int? factionId = null; + try + { + factionId = int.Parse(option1); + } + catch (Exception) { } + if (player.GetUser().Faction == null && factionId == null) { ChatService.SendMessage(player, "~m~Du bist in keiner Fraktion! Invite dich erst mit ~y~/ainvite"); return; } else { + if (factionId != null) + { + using (var dbContext = new DatabaseContext()) + { + if (dbContext.Factions.Where(f => f.Id == factionId).Count() == 0) + { + ChatService.ErrorMessage(player, "Diese Fraktion existiert nicht"); + return; + } + } + } Vehicle vehicle = player.Vehicle; int playerSeat = player.VehicleSeat; vehicle = SaveManager.SaveFactionVehicleData(vehicle, (VehicleHash)vehicle.Model, vehicle.Position, vehicle.Heading, vehicle.NumberPlate, - vehicle.PrimaryColor, vehicle.SecondaryColor, vehicle.Locked, vehicle.EngineStatus, player.GetUser().FactionId.Value, vehicle.Livery); + vehicle.PrimaryColor, vehicle.SecondaryColor, vehicle.Locked, vehicle.EngineStatus, factionId ?? player.GetUser().FactionId.Value, vehicle.Livery); player.SendNotification("Fraktionsfahrzeug ~g~" + vehicle.DisplayName + "~s~ gespeichert.", true); player.SetIntoVehicle(vehicle, playerSeat); } @@ -2594,7 +2612,7 @@ namespace ReallifeGamemode.Server.Commands return; } - if(nearHouse.OwnerId != null) + if (nearHouse.OwnerId != null) { dbContext.Users.Where(u => u.Id == nearHouse.OwnerId).First().HouseId = null; }