auto verkaufen

This commit is contained in:
hydrant
2020-04-02 22:29:27 +02:00
parent 85cd638a4c
commit a8994d9e4a
4 changed files with 92 additions and 10 deletions

View File

@@ -29,6 +29,7 @@ export default function (globalData: IGlobalData) {
var licenseItem = new UIMenuItem("Lizenzen", "Lizenzen Informationen");
var vehiclesItem = new UIMenuItem("Fahrzeuge", "Zeige deine Fahrzeuge an");
mp.events.add("SERVER:InteractionMenu_OpenMenu", (accountDataJson: string, faction: string, group: string, factionInvite: boolean, groupInvite: boolean) => {
var accountData: AccountData = JSON.parse(accountDataJson);
@@ -45,6 +46,12 @@ export default function (globalData: IGlobalData) {
menu.AddItem(licenseItem);
menu.BindMenuToItem(getLicenseMenu(accountData.licenses, menu), licenseItem);
var vehicles = accountData.vehicles;
if (vehicles.length > 0) {
menu.AddItem(vehiclesItem);
menu.BindMenuToItem(getVehiclesMenu(vehicles, menu), vehiclesItem);
}
if (faction) {
factionItem.SetRightLabel(faction);
menu.AddItem(factionItem);
@@ -106,7 +113,7 @@ export default function (globalData: IGlobalData) {
menu.ItemSelect.on((item: NativeUI.UIMenuItem, index: number) => {
if (item === acceptItem) {
mp.events.callRemote("CLIENT:InteractionMenu_AcceptInvite", acceptItem.SelectedValue);
menu.Close();
menu.Close(true);
}
});
@@ -199,7 +206,7 @@ export default function (globalData: IGlobalData) {
input.show();
input.getValue(name => {
mp.events.callRemote("CLIENT:InteractionMenu_Show", "License", name);
parentMenu.Close();
parentMenu.Close(true);
});
}
@@ -278,4 +285,30 @@ export default function (globalData: IGlobalData) {
return servicesMenu;
}
function getVehiclesMenu(vehicles: VehicleData[], parentMenu: NativeUI.Menu): NativeUI.Menu {
var menu = new Menu("Fahrzeuge", "Finde oder verkaufe deine Fahrzeuge", new Point(50, 50), null, null);
menu.Visible = false;
var collection = new ItemsCollection(["Finden", "Verkaufen"]);
vehicles.forEach(veh => {
var name: string = mp.game.vehicle.getDisplayNameFromVehicleModel(veh.Model);
var item = new UIMenuListItem(`${veh.Id.toString().padEnd(4)} | ${name}`, "", collection, null, { id: veh.Id });
menu.AddItem(item);
});
menu.ItemSelect.on((item: NativeUI.UIMenuListItem, index: number) => {
var id = item.Data.id;
var selection = item.SelectedValue;
mp.events.callRemote("CLIENT:InteractionMenu_VehicleInteraction", id, selection);
parentMenu.Close(true);
});
return menu;
}
}