diff --git a/ReallifeGamemode.Server/Events/Vehicle.cs b/ReallifeGamemode.Server/Events/Vehicle.cs index be252db3..296665e6 100644 --- a/ReallifeGamemode.Server/Events/Vehicle.cs +++ b/ReallifeGamemode.Server/Events/Vehicle.cs @@ -122,7 +122,22 @@ namespace ReallifeGamemode.Server.Events string msg = "Fahrzeug "; msg += state ? "~r~abgeschlossen" : "~g~aufgeschlossen"; player.TriggerEvent("vehsync:OpenCar", state); - player.SendNotification(msg); + using (var dbContext = new DatabaseContext()) + { + ServerVehicle carlocked = v.GetServerVehicle(dbContext); + + if(state == true) + { + carlocked.Locked = true; + dbContext.SaveChanges(); + } + else + { + carlocked.Locked = false; + dbContext.SaveChanges(); + } + } + player.SendNotification(msg); } else if (!player.IsInVehicle) { @@ -175,6 +190,21 @@ namespace ReallifeGamemode.Server.Events string msg = "Fahrzeug "; msg += state ? "~r~abgeschlossen" : "~g~aufgeschlossen"; player.TriggerEvent("vehsync:OpenCar", state); + using (var dbContext = new DatabaseContext()) + { + ServerVehicle carlocked = vehicle.GetServerVehicle(dbContext); + + if (state == true) + { + carlocked.Locked = true; + dbContext.SaveChanges(); + } + else + { + carlocked.Locked = false; + dbContext.SaveChanges(); + } + } player.SendNotification(msg); } } diff --git a/ReallifeGamemode.Server/Managers/InventoryManager.cs b/ReallifeGamemode.Server/Managers/InventoryManager.cs index 528e000c..ac6325ba 100644 --- a/ReallifeGamemode.Server/Managers/InventoryManager.cs +++ b/ReallifeGamemode.Server/Managers/InventoryManager.cs @@ -79,9 +79,22 @@ namespace ReallifeGamemode.Server.Managers Vehicle veh = NAPI.Pools.GetAllVehicles().ToList().Where(v => v.Position.DistanceTo(player.Position) <= 2).FirstOrDefault(); if (veh == null) { - player.TriggerEvent("Error", "Kein Fahrzeug in der Nähe !"); + player.TriggerEvent("Error", "Kein Fahrzeug in der Nähe!"); return; } + + using (var dbContext = new DatabaseContext()) + { + ServerVehicle carlocked = veh.GetServerVehicle(dbContext); + + if (carlocked.Locked == true) + { + player.TriggerEvent("Error", "Das Fahrzeug ist abgeschlossen!"); + return; + } + } + + List itemList = GetVehicleItems(veh); if (itemList == null)