frakcar sellen
This commit is contained in:
@@ -132,6 +132,13 @@ namespace ReallifeGamemode.Server.Events
|
||||
Price = v.Price ?? 0
|
||||
});
|
||||
|
||||
var factionVehicles = dbContext.FactionVehicles.ToList().Where(f => f.GetOwners().Contains(u.FactionId ?? -1)).Select(f => new
|
||||
{
|
||||
f.Id,
|
||||
f.Model,
|
||||
Price = f.BuyPrice
|
||||
});
|
||||
|
||||
Paycheck paycheck = null;
|
||||
if (Economy.Paychecks.ContainsKey(u.Id)) paycheck = Economy.Paychecks[u.Id];
|
||||
|
||||
@@ -143,6 +150,7 @@ namespace ReallifeGamemode.Server.Events
|
||||
adminLevel = u.AdminLevel.GetName(),
|
||||
points = u.Points,
|
||||
faction = u.Faction?.Name ?? "Zivilist",
|
||||
stateFaction = u.Faction?.StateOwned,
|
||||
factionRank = u.GetFactionRank().RankName,
|
||||
group = u.Group?.Name ?? "Keine",
|
||||
groupRank = u.GroupRank.GetName(),
|
||||
@@ -150,6 +158,7 @@ namespace ReallifeGamemode.Server.Events
|
||||
paycheck,
|
||||
licenses,
|
||||
vehicles,
|
||||
factionVehicles = u.FactionLeader ? factionVehicles : null,
|
||||
nextPayday = u.PaydayTimer
|
||||
};
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using GTANetworkAPI;
|
||||
using GTANetworkAPI;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Newtonsoft.Json;
|
||||
using ReallifeGamemode.Database.Entities;
|
||||
@@ -32,6 +32,7 @@ namespace ReallifeGamemode.Server.Extensions
|
||||
return context
|
||||
.Users
|
||||
.Include(u => u.Faction)
|
||||
.ThenInclude(f => f.BankAccount)
|
||||
.Include(u => u.FactionRank)
|
||||
.Include(u => u.Group)
|
||||
.Include(u => u.House)
|
||||
|
||||
@@ -212,6 +212,7 @@ namespace ReallifeGamemode.Server.Managers
|
||||
PrimaryColor = 111,
|
||||
SecondaryColor = 111,
|
||||
Active = true,
|
||||
BuyPrice = price
|
||||
};
|
||||
}
|
||||
//else if (target == "Gruppe")
|
||||
|
||||
@@ -344,8 +344,8 @@ namespace ReallifeGamemode.Server.Managers
|
||||
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)
|
||||
[RemoteEvent("CLIENT:InteractionMenu_PlayerVehicleInteraction")]
|
||||
public void PlayerVehicleInteraction(Player player, int id, string selection)
|
||||
{
|
||||
using var dbContext = new DatabaseContext(true);
|
||||
var user = player.GetUser(dbContext);
|
||||
@@ -364,7 +364,7 @@ namespace ReallifeGamemode.Server.Managers
|
||||
}
|
||||
else if (selection == "Verkaufen")
|
||||
{
|
||||
var vehPrice = dbContext.ShopVehicles.Where(v => v.Model == userVehicle.Model).Select(v => v.Price).FirstOrDefault();
|
||||
var vehPrice = userVehicle.Price;
|
||||
var backPrice = (int)(vehPrice * 0.6);
|
||||
|
||||
user.BankAccount.Balance += backPrice;
|
||||
@@ -377,6 +377,40 @@ namespace ReallifeGamemode.Server.Managers
|
||||
veh.Delete();
|
||||
}
|
||||
}
|
||||
|
||||
[RemoteEvent("CLIENT:InteractionMenu_FactionVehicleInteraction")]
|
||||
public void FactionVehicleInteraction(Player player, int id, string selection)
|
||||
{
|
||||
using var dbContext = new DatabaseContext(true);
|
||||
var user = player.GetUser(dbContext);
|
||||
|
||||
var factionVehicle = dbContext.FactionVehicles.ToList().Where(v => v.Id == id && v.GetOwners().Contains(user.FactionId.Value)).FirstOrDefault();
|
||||
if (factionVehicle == null)
|
||||
{
|
||||
ChatService.ErrorMessage(player, "Das Fahrzeug wurde nicht gefunden");
|
||||
}
|
||||
|
||||
GTANetworkAPI.Vehicle veh = VehicleManager.GetVehicleFromServerVehicle(factionVehicle);
|
||||
|
||||
if (selection == "Finden")
|
||||
{
|
||||
player.TriggerEvent("SERVER:Util_setWaypoint", veh.Position.X, veh.Position.Y);
|
||||
}
|
||||
else if (selection == "Verkaufen")
|
||||
{
|
||||
var backPrice = factionVehicle.BuyPrice;
|
||||
|
||||
user.Faction.BankAccount.Balance += backPrice;
|
||||
|
||||
ChatService.SendMessage(player, $"~b~[INFO]~s~ Deine Fraktion hat durch den Autoverkauf ~g~{backPrice.ToMoneyString()}~s~ erhalten.");
|
||||
|
||||
dbContext.FactionVehicles.Remove(factionVehicle);
|
||||
dbContext.SaveChanges();
|
||||
|
||||
veh.Delete();
|
||||
}
|
||||
}
|
||||
|
||||
[RemoteEvent("CLIENT:InteractionMenu_LSPD_Ticket3")]
|
||||
public void InteractionMenu_LSPD_Ticket3(Player player, string jsonNameOrId, string stringAmount, string jsonReason)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user