diff --git a/ReallifeGamemode.Server/Commands/UserCommands.cs b/ReallifeGamemode.Server/Commands/UserCommands.cs index 3fcb687c..43671881 100644 --- a/ReallifeGamemode.Server/Commands/UserCommands.cs +++ b/ReallifeGamemode.Server/Commands/UserCommands.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Linq; using GTANetworkAPI; using ReallifeGamemode.Database.Entities; using ReallifeGamemode.Server.Extensions; @@ -34,9 +35,21 @@ namespace ReallifeGamemode.Server.Commands public void CmdUserCar(Player player) { if (!player.IsLoggedIn()) return; - if (!player.IsInVehicle) return; - Vehicle pVeh = player.Vehicle; + Vehicle pVeh = null; + + if (player.IsInVehicle) + { + pVeh = player.Vehicle; + } else + { + pVeh = NAPI.Pools.GetAllVehicles().Where(v => v.Position.DistanceTo(player.Position) <= 5).FirstOrDefault(); + } + + if (pVeh == null) + { + return; + } if (pVeh.GetServerVehicle() is ServerVehicle veh) { diff --git a/ReallifeGamemode.Server/Managers/VehicleManager.cs b/ReallifeGamemode.Server/Managers/VehicleManager.cs index f8339d24..1d47906a 100644 --- a/ReallifeGamemode.Server/Managers/VehicleManager.cs +++ b/ReallifeGamemode.Server/Managers/VehicleManager.cs @@ -851,6 +851,11 @@ namespace ReallifeGamemode.Server.Managers foreach (KeyValuePair pair in _serverVehicles) { + if (veh == null) + { + continue; + } + if (pair.Value == veh.Handle) { return dbContext.ServerVehicles.Find(pair.Key); diff --git a/ReallifeGamemode.Server/WeaponDeal/WeaponDealManager.cs b/ReallifeGamemode.Server/WeaponDeal/WeaponDealManager.cs index bb80d4d9..5886a4b0 100644 --- a/ReallifeGamemode.Server/WeaponDeal/WeaponDealManager.cs +++ b/ReallifeGamemode.Server/WeaponDeal/WeaponDealManager.cs @@ -55,7 +55,7 @@ namespace ReallifeGamemode.Server.WeaponDeal vector = WeaponDealPoints.getRndWD_Route(client.GetUser().FactionId.Value); if (vector == new Vector3()) return; - fVeh.SetData("weaponDealPoint", vector); + fVeh.SetData("weaponDealPoint", vector); if (user.Faction.WeaponDealTime <= 0) { @@ -218,7 +218,7 @@ namespace ReallifeGamemode.Server.WeaponDeal InventoryManager.AddItemToVehicleInventory(fVeh, item6.ItemId, item6.Amount); } - ChatService.BroadcastFaction("~y~[WAFFENDEAL] ~w~Transporter erfolgreich beladen", new List() { client.GetUser().Faction.Id }); + ChatService.BroadcastFaction("~y~[WAFFENDEAL] ~w~Transporter erfolgreich beladen.", new List() { client.GetUser().Faction.Id }); client.SendChatMessage("~y~[WAFFENDEAL] ~w~Fahre nun zu deiner Base zurück"); } }