From 73046bd5f40ed266efa031e828165112ed02c3dc Mon Sep 17 00:00:00 2001 From: Luke Date: Mon, 5 Jul 2021 09:57:12 +0200 Subject: [PATCH] Squashed commit of the following: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit commit b720ffd4ac4866d603fb32aa9de8d0c19d94f51d Author: Luke Date: Mon Jul 5 09:56:17 2021 +0200 label wird bei shopvehicles aktualisiert commit 0fd3c80ecdfa5476f858b8d4a73f2b0b81d12002 Author: Luke Date: Sun Jul 4 23:27:29 2021 +0200 add svbp label update funktioniert bloß nicht ^^^ --- ReallifeGamemode.Client/Business/cardealer.ts | 10 +++++++++- .../Commands/AdminCommands.cs | 16 ++++++++++------ 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/ReallifeGamemode.Client/Business/cardealer.ts b/ReallifeGamemode.Client/Business/cardealer.ts index 3a7c4d8e..0423ac25 100644 --- a/ReallifeGamemode.Client/Business/cardealer.ts +++ b/ReallifeGamemode.Client/Business/cardealer.ts @@ -27,7 +27,6 @@ export default function carDealer(globalData: IGlobalData) { mp.events.addDataHandler("shopVehicleTextLabel", (entity: EntityMp, labelId: number) => { var label = mp.labels.atRemoteId(labelId); - var veh = entity as VehicleMp; setShopVehicleTextLabel(entity as VehicleMp, label); }); @@ -42,6 +41,15 @@ export default function carDealer(globalData: IGlobalData) { entity.freezePosition(true); } + mp.events.add('ShopVehicle_UpdatePrice', (entity: EntityMp, price: number) => { + var labelId = entity.getVariable("shopVehicleTextLabel"); + if (labelId === undefined) return; + + var label: TextLabelMp = mp.labels.atRemoteId(labelId); + var vehicle: VehicleMp = entity as VehicleMp; + var vehicleDisplayName: string = mp.game.ui.getLabelText(mp.game.vehicle.getDisplayNameFromVehicleModel(vehicle.model)); + label.text = vehicleDisplayName + "\n~g~$" + moneyFormat(price); + }); mp.events.add('ShopVehicle_OpenMenu', (businessName, price, availableOptions: string[]) => { var veh = mp.players.local.vehicle; diff --git a/ReallifeGamemode.Server/Commands/AdminCommands.cs b/ReallifeGamemode.Server/Commands/AdminCommands.cs index 11ab0d76..d21059a0 100644 --- a/ReallifeGamemode.Server/Commands/AdminCommands.cs +++ b/ReallifeGamemode.Server/Commands/AdminCommands.cs @@ -1,7 +1,6 @@ using System; using System.Collections.Generic; using System.Linq; -using System.Net.Http; using System.Text.RegularExpressions; using GTANetworkAPI; using Microsoft.EntityFrameworkCore; @@ -3943,20 +3942,25 @@ namespace ReallifeGamemode.Server.Commands { oldPrice = shopVehicle.Price; shopVehicle.Price = price; + + Vehicle vehicleFromServerVehicle = VehicleManager.GetVehicleFromServerVehicle(shopVehicle); + NAPI.Player.GetPlayersInRadiusOfPosition(500, shopVehicle.Position) + .ForEach(playerInRange => { + playerInRange.TriggerEvent("ShopVehicle_UpdatePrice", vehicleFromServerVehicle, price); + }); } else { - ChatService.ErrorMessage(player, "Dieses Fahrzeug ist weder ein User- noch ein Fraktionsfahrzeug"); + ChatService.ErrorMessage(player, $"Der Preis dieses Fahrzeugs kann nicht angepasst werden (Typ: {serverVehicle.GetType()})"); return; } - logger.LogInformation("{0} set the buyprice of vehicle {1} to {2}", user.Name, serverVehicle.Id, price); - dbContext.SaveChanges(); - string oldPriceStr = oldPrice == null ? "nicht gesetzt" : oldPrice.ToMoneyString(); + logger.LogInformation("{0} set the buyprice of vehicle {1} to {2}", user.Name, serverVehicle.Id, price); - ChatService.SendMessage(player, $"~b~[ADMIN]~s~ Der Kaufpreis des Fahrzeugs ~y~{serverVehicle.Id}~s~ wurde auf ~g~{price.ToMoneyString()} gesetzt. Alter Preis: {oldPriceStr}"); + string oldPriceStr = oldPrice == null ? "nicht gesetzt" : oldPrice.ToMoneyString(); + ChatService.SendMessage(player, $"~b~[ADMIN]~s~ Der Kaufpreis des Fahrzeugs ~b~#{serverVehicle.Id} ~s~wurde auf ~b~{price.ToMoneyString()} ~s~gesetzt (Bisher: {oldPriceStr})."); } [Command("setclothes", "~m~Benutzung: ~s~/setclothes [Spieler] [Component ID] [Drawable] (Textur)")]