Fraktionsfahrzeugverkaufsbestätigung eingebaut
This commit is contained in:
@@ -479,21 +479,39 @@ namespace ReallifeGamemode.Server.Managers
|
||||
}
|
||||
}
|
||||
|
||||
public static void SellPlayerVehicle(Player player, int id)
|
||||
public static void SellServerVehicle(Player player, int id)
|
||||
{
|
||||
using var dbContext = new DatabaseContext();
|
||||
var user = player.GetUser(dbContext);
|
||||
var userVehicle = dbContext.UserVehicles.Where(v => v.Id == id && v.UserId == user.Id).FirstOrDefault();
|
||||
var vehPrice = userVehicle.Price;
|
||||
var backPrice = (int)(vehPrice * 0.4);
|
||||
GTANetworkAPI.Vehicle veh = VehicleManager.GetVehicleFromServerVehicle(userVehicle);
|
||||
user.BankAccount.Balance += backPrice;
|
||||
ServerVehicle serverVehicle = dbContext.ServerVehicles.FirstOrDefault(v => v.Id == id);
|
||||
|
||||
if(serverVehicle is UserVehicle)
|
||||
{
|
||||
UserVehicle userVehicle = dbContext.UserVehicles.Where(v => v.Id == id && v.UserId == user.Id).FirstOrDefault();
|
||||
var vehPrice = userVehicle.Price;
|
||||
var backPrice = (int)(vehPrice * 0.4);
|
||||
GTANetworkAPI.Vehicle veh = VehicleManager.GetVehicleFromServerVehicle(userVehicle);
|
||||
user.BankAccount.Balance += backPrice;
|
||||
|
||||
ChatService.SendMessage(player, $"~b~[INFO]~s~ Du hast durch den Autoverkauf ~g~{backPrice.ToMoneyString()}~s~ erhalten.");
|
||||
ChatService.SendMessage(player, $"~b~[INFO]~s~ Du hast durch den Autoverkauf ~g~{backPrice.ToMoneyString()}~s~ erhalten.");
|
||||
|
||||
VehicleManager.DeleteVehicle(veh);
|
||||
VehicleManager.DeleteVehicle(veh);
|
||||
dbContext.UserVehicles.Remove(userVehicle);
|
||||
player.SendNotification("~g~Du hast dein Fahrzeug verkauft");
|
||||
}
|
||||
else if(serverVehicle is FactionVehicle)
|
||||
{
|
||||
FactionVehicle factionVehicle = dbContext.FactionVehicles.FirstOrDefault(v => v.Id == id);
|
||||
var backPrice = (int)(factionVehicle.BuyPrice * 1.5 * 0.4);
|
||||
user.Faction.BankAccount.Balance += backPrice;
|
||||
|
||||
dbContext.UserVehicles.Remove(userVehicle);
|
||||
ChatService.SendMessage(player, $"~b~[INFO]~s~ Die Fraktionskasse hat ~g~{backPrice.ToMoneyString()}~s~ erhalten.");
|
||||
|
||||
VehicleManager.DeleteVehicle(VehicleManager.GetVehicleFromServerVehicle(factionVehicle));
|
||||
|
||||
dbContext.FactionVehicles.Remove(factionVehicle);
|
||||
player.SendNotification("~g~Du hast dein Fraktionsfahrzeug verkauft");
|
||||
}
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
|
||||
@@ -546,16 +564,13 @@ namespace ReallifeGamemode.Server.Managers
|
||||
ChatService.ErrorMessage(player, "Das Fahrzeug konnte nicht verkauft werden. Bitte melde dich bei der Leaderverwaltung");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
var backPrice = (int)(price.Price * 1.5 * 0.4);
|
||||
|
||||
user.Faction.BankAccount.Balance += backPrice;
|
||||
|
||||
ChatService.SendMessage(player, $"~b~[INFO]~s~ Die Fraktionskasse ~g~{backPrice.ToMoneyString()}~s~ erhalten.");
|
||||
|
||||
VehicleManager.DeleteVehicle(veh);
|
||||
|
||||
dbContext.FactionVehicles.Remove(factionVehicle);
|
||||
dbContext.SaveChanges();
|
||||
player.SetData<bool>("SellVehicleDecision", true);
|
||||
player.SetData<int>("VehicleToSell", id);
|
||||
ChatService.SendMessage(player, "~s~Möchtes du das Fahrzeug ~y~" + veh.DisplayName + " ~s~wirklich für ~g~$" + backPrice + " ~s~verkaufen? Drücke ~g~J~s~ zum Bestätigen oder ~r~N ~s~zum Abbrechen");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user