Add Hanf items, some inventory mess removed

This commit is contained in:
hydrant
2021-05-22 14:52:29 +02:00
parent 467e0a4248
commit 34033eb875
20 changed files with 126 additions and 135 deletions

View File

@@ -27,7 +27,7 @@ namespace ReallifeGamemode.Server.Managers
{
public class InventoryManager : Script
{
private const int MAX_USER_INVENTORY = 40000;
public const int MAX_USER_INVENTORY = 40000;
private static readonly ILogger logger = LogManager.GetLogger<InventoryManager>();
public static List<IItem> itemList;
@@ -82,7 +82,11 @@ namespace ReallifeGamemode.Server.Managers
{
player.TriggerEvent("Error", "Du kannst deinen Kofferraum gerade nicht öffnen.");
}
Vehicle veh = NAPI.Pools.GetAllVehicles().ToList().Where(v => v.Position.DistanceTo(player.Position) <= 4).FirstOrDefault();
Vehicle veh = NAPI.Pools.GetAllVehicles()
.ToList()
.Where(v => v.Position.DistanceTo(player.Position) <= 4)
.OrderBy(v => v.Position.DistanceTo(player.Position))
.FirstOrDefault();
if (veh == null)
{
player.TriggerEvent("Error", "Kein Fahrzeug in der Nähe!");
@@ -270,7 +274,7 @@ namespace ReallifeGamemode.Server.Managers
}
}
public static void GetUserItemsAsAdmin(Player player, User user)
public static void GetUserItemsAsAdmin(Player admin, User user)
{
var inventoryWeight = 0;
@@ -292,7 +296,7 @@ namespace ReallifeGamemode.Server.Managers
items[userItems.IndexOf(item)][4] = item.Slot.ToString();
items[userItems.IndexOf(item)][5] = item.Id.ToString();
}
player.TriggerEvent("showInventoryToAdmin", user.Name, inventoryWeight, items);
admin.TriggerEvent("showInventoryToAdmin", user.Name, inventoryWeight, items);
}
}
@@ -510,10 +514,10 @@ namespace ReallifeGamemode.Server.Managers
int itemId = JsonConvert.DeserializeObject<int>(jsonItemId);
string type = JsonConvert.DeserializeObject<string>(jsonType);
User user = player.GetUser();
using (var context = new DatabaseContext())
{
User user = player.GetUser(context);
UserItem fItem = context.UserItems.Where(u => u.UserId == user.Id && u.ItemId == itemId).FirstOrDefault();
IItem iItem = GetItemById(fItem.ItemId);
@@ -534,8 +538,14 @@ namespace ReallifeGamemode.Server.Managers
if (iItem is IUsableItem usableItemObj)
{
if (usableItemObj.Use(fItem))
logger.LogInformation("Player {0} used the item {1} ({2})", player.Name, iItem.Name, iItem.Id);
if (usableItemObj.Use(player, user, context))
{
if (usableItemObj.RemoveWhenUsed)
{
RemoveUserItem(user, fItem, 1);
}
SetBackpackItems(player);
player.TriggerEvent("aproveUse", 1, iItem.Name);
}
@@ -559,6 +569,7 @@ namespace ReallifeGamemode.Server.Managers
if (iItem is IDroppableItem usableItemObj2)
{
logger.LogInformation("Player {0} dropped the item {1} ({2})", player.Name, iItem.Name, iItem.Id);
Vector3 dropPosition = PlayerExtension.GetPositionFromPlayer(player, 0.6f, 0);
//new Vector3(player.Position.X, player.Position.Y, player.Position.Z - 0.8f);
Random r = new Random();
@@ -617,7 +628,6 @@ namespace ReallifeGamemode.Server.Managers
if (GetUserInventoryWeight(client) + shopItem.Gewicht > MAX_USER_INVENTORY)
{
return;
}