Add drop to Inventory

This commit is contained in:
VegaZ
2018-12-19 20:22:00 +01:00
parent a542409855
commit a04cd81ede
11 changed files with 76 additions and 26 deletions

View File

@@ -11,7 +11,7 @@ using System.Text;
namespace reallife_gamemode.Server.Inventory.Items
{
public class Cheeseburger : FoodItem
public class Cheeseburger : DropItem
{
public override int Id => 2;
public override string Name => "Cheeseburger";
@@ -19,5 +19,6 @@ namespace reallife_gamemode.Server.Inventory.Items
public override int Gewicht => 320;
public override string Einheit => "g";
public override int HpAmount => 20;
public override uint Object => 2240524752;
}
}

View File

@@ -11,7 +11,7 @@ using System.Text;
namespace reallife_gamemode.Server.Inventory.Items
{
public class Chickenburger : FoodItem
public class Chickenburger : DropItem, FoodItem
{
public override int Id => 3;
public override string Name => "Chickenburger";
@@ -19,5 +19,6 @@ namespace reallife_gamemode.Server.Inventory.Items
public override int Gewicht => 330;
public override string Einheit => "g";
public override int HpAmount => 25;
public override uint Object => 2240524752;
}
}

View File

@@ -0,0 +1,28 @@
using GTANetworkAPI;
using reallife_gamemode.Server.Entities;
using reallife_gamemode.Server.Extensions;
using reallife_gamemode.Server.Inventory.Interfaces;
using reallife_gamemode.Server.Managers;
using System;
using System.Collections.Generic;
using System.Text;
namespace reallife_gamemode.Server.Inventory.Items
{
public abstract class DropItem : IDroppableItem
{
public abstract int HpAmount { get; }
public abstract int Id { get; }
public abstract string Name { get; }
public abstract string Description { get; }
public abstract int Gewicht { get; }
public abstract string Einheit { get; }
public abstract uint Object { get; }
public void Drop(UserItem uItem, Client player, int amount)
{
player.SendNotification("Du hast ~g~" + amount + " ~y~" + InventoryManager.GetItemById(uItem.ItemId).Name + " ~s~weggeworfen.", false);
InventoryManager.RemoveUserItem(player.GetUser(), uItem);
}
}
}

View File

@@ -17,12 +17,13 @@ namespace reallife_gamemode.Server.Inventory.Items
public abstract string Description { get; }
public abstract int Gewicht { get; }
public abstract string Einheit { get; }
public abstract uint Object { get; }
public void Use(UserItem uItem, Client player)
{
player.Health += HpAmount;
player.SendChatMessage("Du hast einen ~y~" + InventoryManager.GetItemById(uItem.ItemId).Name + " ~s~gegessen.");
InventoryManager.RemoveUserItem(player.GetUser(), uItem);
player.SendNotification("Du hast ein/einen ~y~" + InventoryManager.GetItemById(uItem.ItemId).Name + " ~s~gegessen.", false);
InventoryManager.RemoveUserItem(player.GetUser(), uItem, 1);
}
}
}

View File

@@ -11,7 +11,7 @@ using System.Text;
namespace reallife_gamemode.Server.Inventory.Items
{
public class Hamburger : FoodItem
public class Hamburger : DropItem
{
public override int Id => 1;
public override string Name => "Hamburger";
@@ -19,5 +19,6 @@ namespace reallife_gamemode.Server.Inventory.Items
public override int Gewicht => 300;
public override string Einheit => "g";
public override int HpAmount => 20;
public override uint Object => 2240524752;
}
}

View File

@@ -11,7 +11,7 @@ using System.Text;
namespace reallife_gamemode.Server.Inventory.Items
{
public class Holz : FoodItem
public class Holz : DropItem
{
public override int Id => 4;
public override string Name => "Holz";
@@ -19,5 +19,6 @@ namespace reallife_gamemode.Server.Inventory.Items
public override int Gewicht => 1000;
public override string Einheit => "g";
public override int HpAmount => 20;
public override uint Object => 1805779401;
}
}

View File

@@ -11,7 +11,7 @@ using System.Text;
namespace reallife_gamemode.Server.Inventory.Items
{
public class Kraftstoff : FoodItem
public class Kraftstoff : DropItem
{
public override int Id => 5;
public override string Name => "Kraftstoff";
@@ -19,5 +19,6 @@ namespace reallife_gamemode.Server.Inventory.Items
public override int Gewicht => 1000;
public override string Einheit => "g";
public override int HpAmount => 20;
public override uint Object => 786272259;
}
}