From 0a5dbb12d668aa290ce2ad187bc57f4e23c359c4 Mon Sep 17 00:00:00 2001 From: hydrant Date: Mon, 22 Jul 2019 22:05:07 +0200 Subject: [PATCH] Save Livery for Faction Vehicles --- ReallifeGamemode.Server/Commands/AdminCommands.cs | 12 ++++++------ ReallifeGamemode.Server/Entities/ServerVehicle.cs | 2 ++ ReallifeGamemode.Server/Managers/SaveManager.cs | 5 +++-- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/ReallifeGamemode.Server/Commands/AdminCommands.cs b/ReallifeGamemode.Server/Commands/AdminCommands.cs index 3e732774..bad90305 100644 --- a/ReallifeGamemode.Server/Commands/AdminCommands.cs +++ b/ReallifeGamemode.Server/Commands/AdminCommands.cs @@ -292,7 +292,7 @@ namespace ReallifeGamemode.Server.Commands ChatService.SendMessage(player, b.Id.ToString().PadRight(3) + " | " + b.Name + (b is CarDealerBusinessBase ? " | Autohaus" : "")); } } - + [Command("tc", "~m~Benutzung: ~s~/tc [Nachricht]", GreedyArg = true)] public void CmdTeamC(Client player, string message) { @@ -306,7 +306,7 @@ namespace ReallifeGamemode.Server.Commands ChatService.BroadcastAdmin("~b~[TEAMCHAT]~s~ " + player.GetUser().AdminLevel.GetName() + " " + player.Name + "~w~: " + message, AdminLevel.SUPPORTER); } - + [Command("joblist", "~m~Benutzung: ~s~/joblist")] public void CmdAdminJoblist(Client player) { @@ -1702,7 +1702,7 @@ namespace ReallifeGamemode.Server.Commands 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.PrimaryColor, vehicle.SecondaryColor, vehicle.Locked, vehicle.EngineStatus, player.GetUser().FactionId.Value, vehicle.Livery); player.SendNotification("Fraktionsfahrzeug ~g~" + vehicle.DisplayName + "~s~ gespeichert.", true); player.SetIntoVehicle(vehicle, playerSeat); } @@ -2585,7 +2585,7 @@ namespace ReallifeGamemode.Server.Commands foreach (var target in NAPI.Pools.GetAllPlayers().Select(c => c.GetUser())) { - Economy.SetPaycheck(target.Client, target.Wage); + Economy.SetPaycheck(target.Client, target.Wage); } ChatService.SendMessage(player, "~b~[ADMIN]~s~ Du hast ein Payday gedroppt."); @@ -2615,7 +2615,7 @@ namespace ReallifeGamemode.Server.Commands } [Command("setweaponrack", "~m~Benutzung: ~s~/setweaponrack [Fraktion ID] [Waffen Model] [SlotID (1-4)]")] - public void CmdAdminSetWeaponrack(Client player, int factionID,string weaponModel,int slotId) + public void CmdAdminSetWeaponrack(Client player, int factionID, string weaponModel, int slotId) { if (!player.GetUser()?.IsAdmin(AdminLevel.HEADADMIN) ?? true) { @@ -2749,7 +2749,7 @@ namespace ReallifeGamemode.Server.Commands #endregion - #region ALevel1338 + #region ALevel1338 [Command("whitelist", "~m~Benutzung: ~s~/whitelist [Add / Remove] [Socialclub Name]")] public void CmdAdminWhitelist(Client player, string option, string scName) { diff --git a/ReallifeGamemode.Server/Entities/ServerVehicle.cs b/ReallifeGamemode.Server/Entities/ServerVehicle.cs index 4c1679e2..ae68373b 100644 --- a/ReallifeGamemode.Server/Entities/ServerVehicle.cs +++ b/ReallifeGamemode.Server/Entities/ServerVehicle.cs @@ -26,6 +26,7 @@ namespace ReallifeGamemode.Server.Entities public bool Active { get; set; } public float DistanceDriven { get; set; } public float TankAmount { get; set; } + public int Livery { get; set; } [NotMapped] public Vector3 Position => new Vector3(PositionX, PositionY, PositionZ); @@ -43,6 +44,7 @@ namespace ReallifeGamemode.Server.Entities int c2 = this.SecondaryColor; string np = this.NumberPlate; Vehicle veh = NAPI.Vehicle.CreateVehicle(Model, position, heading, c1, c2, "", 255, false, false); + veh.Livery = Livery; VehicleStreaming.SetEngineState(veh, false); VehicleStreaming.SetLockStatus(veh, this.Locked); VehicleManager.AddVehicle(this, veh); diff --git a/ReallifeGamemode.Server/Managers/SaveManager.cs b/ReallifeGamemode.Server/Managers/SaveManager.cs index 3535474a..4a59171e 100644 --- a/ReallifeGamemode.Server/Managers/SaveManager.cs +++ b/ReallifeGamemode.Server/Managers/SaveManager.cs @@ -105,7 +105,7 @@ namespace ReallifeGamemode.Server.Managers } public static Vehicle SaveFactionVehicleData(Vehicle veh, VehicleHash vehicleModel, Vector3 vehiclePosition, float vehicleHeading, - string vehicleNumberPlate, int vehiclePrimaryColor, int vehicleSecondaryColor, bool vehicleLocked, bool vehicleEngine, int factionId) + string vehicleNumberPlate, int vehiclePrimaryColor, int vehicleSecondaryColor, bool vehicleLocked, bool vehicleEngine, int factionId, int livery) { using (var saveData = new DatabaseContext()) { @@ -121,7 +121,8 @@ namespace ReallifeGamemode.Server.Managers PrimaryColor = vehiclePrimaryColor, SecondaryColor = vehicleSecondaryColor, Locked = vehicleLocked, - Active = true + Active = true, + Livery = livery }; saveData.FactionVehicles.Add(dataSet); saveData.SaveChanges();