auto verkaufen
This commit is contained in:
@@ -16,6 +16,7 @@ using ReallifeGamemode.Server.Util;
|
||||
using ReallifeGamemode.Server.Inventory.Interfaces;
|
||||
using ReallifeGamemode.Server.DrivingSchool;
|
||||
using ReallifeGamemode.Server.Types;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
/**
|
||||
* @overview Life of German Reallife - Event Key (Key.cs)
|
||||
* @author VegaZ
|
||||
@@ -107,9 +108,16 @@ namespace ReallifeGamemode.Server.Events
|
||||
[RemoteEvent("keyPress:DOWN_ARROW")]
|
||||
public void KeyPressDownArrow(Player player)
|
||||
{
|
||||
User u = player.GetUser();
|
||||
using var dbContext = new DatabaseContext();
|
||||
User u = player.GetUser(dbContext);
|
||||
if (u == null) return;
|
||||
|
||||
var vehicles = dbContext.UserVehicles.Where(veh => veh.UserId == u.Id).OrderBy(veh => veh.Id).Select(v => new
|
||||
{
|
||||
v.Id,
|
||||
v.Model
|
||||
});
|
||||
|
||||
Paycheck paycheck = null;
|
||||
if (Economy.Paychecks.ContainsKey(u.Id)) paycheck = Economy.Paychecks[u.Id];
|
||||
|
||||
@@ -125,7 +133,8 @@ namespace ReallifeGamemode.Server.Events
|
||||
groupRank = u.GroupRank.GetName(),
|
||||
job = JobManager.GetJob(u.JobId ?? 0)?.Name ?? "Keiner",
|
||||
paycheck,
|
||||
licenses
|
||||
licenses,
|
||||
vehicles
|
||||
};
|
||||
|
||||
string faction = u.FactionLeader ? u.Faction.Name : null;
|
||||
|
||||
@@ -335,6 +335,40 @@ namespace ReallifeGamemode.Server.Managers
|
||||
ChatService.BroadcastJob(msg, taxiJob);
|
||||
ChatService.SendMessage(player, "!{02FCFF}Du hast erfolgreich ein Taxi zu deiner aktuellen Position gerufen.");
|
||||
}
|
||||
|
||||
[RemoteEvent("CLIENT:InteractionMenu_VehicleInteraction")]
|
||||
public void VehicleInteraction(Player player, int id, string selection)
|
||||
{
|
||||
using var dbContext = new DatabaseContext(true);
|
||||
var user = player.GetUser(dbContext);
|
||||
|
||||
var userVehicle = dbContext.UserVehicles.Where(v => v.Id == id && v.UserId == user.Id).FirstOrDefault();
|
||||
if (userVehicle == null)
|
||||
{
|
||||
ChatService.ErrorMessage(player, "Das Fahrzeug wurde nicht gefunden");
|
||||
}
|
||||
|
||||
Vehicle veh = VehicleManager.GetVehicleFromServerVehicle(userVehicle);
|
||||
|
||||
if (selection == "Finden")
|
||||
{
|
||||
player.TriggerEvent("SERVER:Util_setWaypoint", veh.Position.X, veh.Position.Y);
|
||||
}
|
||||
else if (selection == "Verkaufen")
|
||||
{
|
||||
var vehPrice = dbContext.ShopVehicles.Where(v => v.Model == userVehicle.Model).Select(v => v.Price).FirstOrDefault();
|
||||
var backPrice = (int)(vehPrice * 0.6);
|
||||
|
||||
user.BankAccount.Balance += backPrice;
|
||||
|
||||
ChatService.SendMessage(player, $"~b~[INFO]~s~ Du hast durch den Autoverkauf ~g~{backPrice.ToMoneyString()}~s~ erhalten.");
|
||||
|
||||
dbContext.UserVehicles.Remove(userVehicle);
|
||||
dbContext.SaveChanges();
|
||||
|
||||
veh.Delete();
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
#region Spielerinteraktionen PFEILTASTE-LINKS
|
||||
[RemoteEvent("openTradeInventory")]
|
||||
|
||||
Reference in New Issue
Block a user