auto verkaufen
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
18
ReallifeGamemode.Client/global.d.ts
vendored
18
ReallifeGamemode.Client/global.d.ts
vendored
@@ -1,4 +1,4 @@
|
||||
declare interface IGlobalData {
|
||||
declare type IGlobalData = {
|
||||
InTuning: boolean,
|
||||
HideGui: boolean,
|
||||
InMenu: boolean,
|
||||
@@ -7,7 +7,7 @@
|
||||
InInput: boolean
|
||||
}
|
||||
|
||||
declare interface AccountData {
|
||||
declare type AccountData = {
|
||||
regDate: string;
|
||||
adminLevel: string;
|
||||
faction: string;
|
||||
@@ -17,9 +17,15 @@ declare interface AccountData {
|
||||
job: string;
|
||||
paycheck: Paycheck;
|
||||
licenses: Licenses;
|
||||
vehicles: VehicleData[];
|
||||
}
|
||||
|
||||
declare interface Paycheck {
|
||||
declare type VehicleData = {
|
||||
Id: number;
|
||||
Model: number;
|
||||
};
|
||||
|
||||
declare type Paycheck = {
|
||||
financialHelp: number;
|
||||
financialInterest: number;
|
||||
vehicleTaxation: number;
|
||||
@@ -29,18 +35,18 @@ declare interface Paycheck {
|
||||
rentalFees: number;
|
||||
}
|
||||
|
||||
declare interface Licenses {
|
||||
declare type Licenses = {
|
||||
drivingLicenseCar: boolean;
|
||||
drivingLicenseBike: boolean;
|
||||
flightLicensePlane: boolean;
|
||||
weaponLicense: boolean;
|
||||
}
|
||||
|
||||
declare interface FactionRanks {
|
||||
declare type FactionRanks = {
|
||||
factionId: number,
|
||||
ranks: FactionRank[]
|
||||
}
|
||||
|
||||
declare interface FactionRank {
|
||||
declare type FactionRank = {
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user