fix item Rubbellos & add item Notfallkit
This commit is contained in:
58
ReallifeGamemode.Server/Inventory/Items/Notfallkit.cs
Normal file
58
ReallifeGamemode.Server/Inventory/Items/Notfallkit.cs
Normal file
@@ -0,0 +1,58 @@
|
||||
using GTANetworkAPI;
|
||||
using ReallifeGamemode.Database.Entities;
|
||||
using System.Linq;
|
||||
using ReallifeGamemode.Server.Extensions;
|
||||
using ReallifeGamemode.Server.Managers;
|
||||
using ReallifeGamemode.Server.Services;
|
||||
|
||||
|
||||
namespace ReallifeGamemode.Server.Inventory.Items
|
||||
{
|
||||
class Notfallkit : UseItem
|
||||
{
|
||||
public override int Id => 201;
|
||||
public override string Name => "Notfallkit";
|
||||
public override string Description => "Fahrzeug reparieren";
|
||||
public override int Gewicht => 1000;
|
||||
public override string Einheit => "g";
|
||||
public override uint Object => 875075437;
|
||||
public override int Price => 500;
|
||||
|
||||
public override bool Use(UserItem uItem)
|
||||
{
|
||||
Player player = uItem.GetUser().Player;
|
||||
|
||||
if (uItem.ItemId != 201)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
Vehicle veh = null;
|
||||
|
||||
var nearestVeh = NAPI.Pools.GetAllVehicles().Where(v => v.Position.DistanceTo(player.Position) <= 5).FirstOrDefault();
|
||||
veh = nearestVeh;
|
||||
|
||||
if (veh == null)
|
||||
{
|
||||
player.SendNotification("Es befindet sich kein Fahrzeug in deiner Nähe");
|
||||
return false;
|
||||
}
|
||||
|
||||
if(player.IsInVehicle)
|
||||
{
|
||||
player.SendNotification("Du musst aus deinem Fahrzeug aussteigen!");
|
||||
return false;
|
||||
}
|
||||
|
||||
ChatService.SendMessage(player, $"~b~[AMDIN]~s~ Das Fahrzeug repariert");
|
||||
player.SendNotification("Du hast ~g~" + InventoryManager.GetItemById(uItem.ItemId).Name + " ~s~verwendet.", false);
|
||||
InventoryManager.RemoveUserItem(player.GetUser(), uItem, 1);
|
||||
ServerVehicle serverVehicle = VehicleManager.GetServerVehicleFromVehicle(veh);
|
||||
Vehicle newVeh = serverVehicle.Spawn(veh);
|
||||
newVeh.Repair();
|
||||
newVeh.Rotation = new Vector3(0, 0, serverVehicle.Heading);
|
||||
return true;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,14 @@
|
||||
namespace ReallifeGamemode.Server.Inventory.Items
|
||||
using System;
|
||||
using System.Security.Cryptography;
|
||||
using GTANetworkAPI;
|
||||
using Microsoft.CodeAnalysis.CSharp.Syntax;
|
||||
using ReallifeGamemode.Database.Entities;
|
||||
using ReallifeGamemode.Database.Models;
|
||||
using ReallifeGamemode.Server.Extensions;
|
||||
using ReallifeGamemode.Server.Inventory.Interfaces;
|
||||
using ReallifeGamemode.Server.Managers;
|
||||
|
||||
namespace ReallifeGamemode.Server.Inventory.Items
|
||||
{
|
||||
public class Rubellos : UseItem
|
||||
{
|
||||
@@ -9,5 +19,40 @@
|
||||
public override string Einheit => "g";
|
||||
public override uint Object => 875075437;
|
||||
public override int Price => 500;
|
||||
|
||||
public override bool Use(UserItem uItem)
|
||||
{
|
||||
Player player = uItem.GetUser().Player;
|
||||
|
||||
if (uItem.ItemId != 200)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
Random random = new Random();
|
||||
int randomNumber = random.Next(1, 5);
|
||||
if (randomNumber == 1)
|
||||
{
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
User winner = player.GetUser(dbContext);
|
||||
winner.Handmoney += 1000;
|
||||
player.TriggerEvent("SERVER:SET_HANDMONEY", winner.Handmoney);
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
Services.ChatService.SendMessage(player, "Glückwunsch, du hast $1000 gewonnen!");
|
||||
}
|
||||
else
|
||||
{
|
||||
Services.ChatService.SendMessage(player, "Leider kein Gewinn, viel Glück beim nächsten mal");
|
||||
}
|
||||
player.SendNotification("Du hast ~g~" + InventoryManager.GetItemById(uItem.ItemId).Name + " ~s~verwendet.", false);
|
||||
InventoryManager.RemoveUserItem(player.GetUser(), uItem, 1);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -20,34 +20,7 @@ namespace ReallifeGamemode.Server.Inventory.Items
|
||||
public abstract uint Object { get; }
|
||||
public abstract int Price { get; }
|
||||
|
||||
public bool Use(UserItem uItem)
|
||||
{
|
||||
Player player = uItem.GetUser().Player;
|
||||
public abstract bool Use(UserItem uItem);
|
||||
|
||||
if (uItem.ItemId != 200)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
Random random = new Random();
|
||||
int randomNumber = random.Next(1, 5);
|
||||
if (randomNumber == 1)
|
||||
{
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
User winner = player.GetUser(dbContext);
|
||||
winner.Handmoney += 1000;
|
||||
player.TriggerEvent("SERVER:SET_HANDMONEY", winner.Handmoney);
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
Services.ChatService.SendMessage(player, "Glückwunsch, du hast $1000 gewonnen!");
|
||||
}
|
||||
else
|
||||
{
|
||||
Services.ChatService.SendMessage(player, "Leider kein Gewinn, viel Glück beim nächsten mal");
|
||||
}
|
||||
player.SendNotification("Du hast ~g~" + InventoryManager.GetItemById(uItem.ItemId).Name + " ~s~verwendet.", false);
|
||||
InventoryManager.RemoveUserItem(player.GetUser(), uItem, 1);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user