mehr inventar logs

This commit is contained in:
hydrant
2021-05-29 02:52:07 +02:00
parent 0839e2255a
commit 02e4e5773f
2 changed files with 21 additions and 4 deletions

View File

@@ -341,15 +341,24 @@ namespace ReallifeGamemode.Server.Managers
veh = new NetHandle(vehicleItems[player].FirstOrDefault().vehicle, EntityType.Vehicle).Entity<Vehicle>(); veh = new NetHandle(vehicleItems[player].FirstOrDefault().vehicle, EntityType.Vehicle).Entity<Vehicle>();
ServerVehicle serverVehicle = VehicleManager.GetServerVehicleFromVehicle(veh, context); ServerVehicle serverVehicle = VehicleManager.GetServerVehicleFromVehicle(veh, context);
VehicleItem vehItem = context.VehicleItems.Where(v => v.VehicleId == serverVehicle.Id && v.ItemId == itemID).FirstOrDefault();
if (serverVehicle.Locked || VehicleStreaming.GetLockState(veh))
{
player.TriggerEvent("Error", "Transfer nicht möglich.");
return;
}
VehicleItem vehItem = context.VehicleItems.Where(v => v.VehicleId == serverVehicle.Id && v.ItemId == itemID && v.Amount >= itemAmount).FirstOrDefault();
if (vehItem == null) if (vehItem == null)
{ {
player.TriggerEvent("Error", "Transfer nicht möglich."); player.TriggerEvent("Error", "Transfer nicht möglich.");
return; return;
} }
IItem item = GetItemById(itemID);
if (serverVehicle is FactionVehicle factionVehicle) if (serverVehicle is FactionVehicle factionVehicle)
{ {
IItem item = GetItemById(itemID);
if (factionVehicle.Model == VehicleHash.Riot && user.Faction?.StateOwned == true) if (factionVehicle.Model == VehicleHash.Riot && user.Faction?.StateOwned == true)
{ {
player.TriggerEvent("Error", "Transfer nicht möglich."); player.TriggerEvent("Error", "Transfer nicht möglich.");
@@ -357,6 +366,8 @@ namespace ReallifeGamemode.Server.Managers
} }
} }
logger.LogInformation("Player {0} transferred the item {1} ({2}, amount: {3}) from vehicle {4} to his inventory", player.Name, item.Name, item.Id, itemAmount, serverVehicle.Id);
RemoveVehicleItem(serverVehicle, vehItem, itemAmount, player); RemoveVehicleItem(serverVehicle, vehItem, itemAmount, player);
SetVehicleItems(player); SetVehicleItems(player);
@@ -364,7 +375,6 @@ namespace ReallifeGamemode.Server.Managers
SetBackpackItems(player); SetBackpackItems(player);
context.SaveChanges(); context.SaveChanges();
IItem iItem = GetItemById(vehItem.ItemId);
} }
} }

View File

@@ -1154,7 +1154,14 @@ namespace ReallifeGamemode.Server.Managers
Vehicle newVeh = sV.Spawn(vehicle); Vehicle newVeh = sV.Spawn(vehicle);
newVeh.Repair(); newVeh.Repair();
} }
InventoryManager.RemoveAllItemsfromVehicleInventory(vehicle);
var items = InventoryManager.GetVehicleItems(vehicle);
if (items.Any())
{
string itemsStr = string.Join(", ", items.Select(i => $"{i.ItemId} (amount: {i.Amount})"));
logger.LogInformation("Vehicle {0} died and lost the items: {1}", sV.Id, itemsStr);
InventoryManager.RemoveAllItemsfromVehicleInventory(vehicle);
}
} }
} }