Improved tuning
This commit is contained in:
@@ -17,7 +17,7 @@ var carModSlotName = [
|
||||
{ Slot: 5, Name: "Rahmen"},
|
||||
{ Slot: 6, Name: "Kühlergrill"},
|
||||
{ Slot: 7, Name: "Motorhaube"},
|
||||
{ Slot: 8, Name: "Linker Kotflügel"},
|
||||
{ Slot: 8, Name: "Kotflügel"},
|
||||
{ Slot: 9, Name: "Rechter Kotflügel"},
|
||||
{ Slot: 10, Name: "Dach"},
|
||||
{ Slot: 11, Name: "Motor" },
|
||||
@@ -48,15 +48,6 @@ var customPartNames = [
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
Model: 159274291,
|
||||
Names: [
|
||||
{
|
||||
Slot: 8,
|
||||
Name: "Kotflügel"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
Model: 223240013,
|
||||
Names: [
|
||||
@@ -103,16 +94,12 @@ var bikeModTypes = [];
|
||||
const NativeUI = require("nativeui");
|
||||
const Menu = NativeUI.Menu;
|
||||
const UIMenuItem = NativeUI.UIMenuItem;
|
||||
const UIMenuListItem = NativeUI.UIMenuListItem;
|
||||
const UIMenuCheckboxItem = NativeUI.UIMenuCheckboxItem;
|
||||
const UIMenuSliderItem = NativeUI.UIMenuSliderItem;
|
||||
const BadgeStyle = NativeUI.BadgeStyle;
|
||||
const Point = NativeUI.Point;
|
||||
const ItemsCollection = NativeUI.ItemsCollection;
|
||||
const Color = NativeUI.Color;
|
||||
const ListItem = NativeUI.ListItem;
|
||||
|
||||
var mainMenu;
|
||||
var modMenu;
|
||||
var closeMenu = false;
|
||||
|
||||
mp.events.add('showTuningInfo', () => {
|
||||
mp.game.ui.setTextComponentFormat('STRING');
|
||||
@@ -128,7 +115,13 @@ mp.events.add('hideTuningInfo', (unbind) => {
|
||||
mp.gui.chat.show(true);
|
||||
|
||||
if (typeof mainMenu !== "undefined" && unbind) {
|
||||
mainMenu.Visible = false;
|
||||
mainMenu.Close();
|
||||
globalData.InTuning = false;
|
||||
}
|
||||
|
||||
if (typeof modMenu !== "undefined" && modMenu.Visible && unbind) {
|
||||
closeMenu = true;
|
||||
modMenu.Close();
|
||||
globalData.InTuning = false;
|
||||
}
|
||||
|
||||
@@ -153,9 +146,15 @@ mp.events.add("showTuningMenu", () => {
|
||||
return;
|
||||
}
|
||||
|
||||
if (typeof modMenu !== "undefined" && modMenu.Visible) {
|
||||
return;
|
||||
}
|
||||
|
||||
globalData.InTuning = true;
|
||||
|
||||
mainMenu = new Menu("Fahrzeugwerkstatt", "Modifiziere dein Fahrzeug", new Point(50, 50));
|
||||
var carName = mp.game.ui.getLabelText(mp.game.vehicle.getDisplayNameFromVehicleModel(localVehicle.model));
|
||||
|
||||
mainMenu = new Menu("Fahrzeugwerkstatt", carName, new Point(50, 50));
|
||||
|
||||
carModTypes.forEach((modType) => {
|
||||
if (localVehicle.getModSlotName(modType) !== "undefined") {
|
||||
@@ -174,7 +173,7 @@ mp.events.add("showTuningMenu", () => {
|
||||
}
|
||||
});
|
||||
|
||||
mainMenu.Visible = true;
|
||||
mainMenu.Open();
|
||||
|
||||
mainMenu.ItemSelect.on((item) => {
|
||||
var modSlot = getSlotId(item.Text);
|
||||
@@ -197,7 +196,7 @@ mp.events.add("showTuningMenu", () => {
|
||||
|
||||
var modNum = localVehicle.getNumMods(modSlot);
|
||||
|
||||
var modMenu = new Menu(item.Text, "Änderung: " + item.Text, new Point(50, 50));
|
||||
modMenu = new Menu(item.Text, "Änderung: " + item.Text, new Point(50, 50));
|
||||
|
||||
for (var i = -1; i < modNum; i++) {
|
||||
var modItem;
|
||||
@@ -205,9 +204,8 @@ mp.events.add("showTuningMenu", () => {
|
||||
if (i === -1) {
|
||||
modItem = new UIMenuItem("Serie", "");
|
||||
} else {
|
||||
var modName = localVehicle.getModTextLabel(modSlot, i);
|
||||
var realModName = mp.game.ui.getLabelText(modName);
|
||||
modItem = new UIMenuItem(realModName, "");
|
||||
var modName = getModName(localVehicle, modSlot, i);
|
||||
modItem = new UIMenuItem(modName, "");
|
||||
}
|
||||
|
||||
if (i === currentMod) {
|
||||
@@ -247,6 +245,12 @@ mp.events.add("showTuningMenu", () => {
|
||||
}
|
||||
|
||||
localVehicle.setMod(modSlot, currentMod);
|
||||
|
||||
if (closeMenu) {
|
||||
closeMenu = false;
|
||||
return;
|
||||
}
|
||||
|
||||
mainMenu.Visible = true;
|
||||
modMenu.Visible = false;
|
||||
});
|
||||
@@ -337,4 +341,67 @@ function getDoor(model, slot) {
|
||||
});
|
||||
|
||||
return toReturn;
|
||||
}
|
||||
|
||||
function getModName(vehicle, slot, mod) {
|
||||
var modName = vehicle.getModTextLabel(slot, mod);
|
||||
var realModName = mp.game.ui.getLabelText(modName);
|
||||
|
||||
if (slot === 11) {
|
||||
switch (mod) {
|
||||
case 0:
|
||||
realModName = "EMS Verbesserung 1";
|
||||
break;
|
||||
case 1:
|
||||
realModName = "EMS Verbesserung 2";
|
||||
break;
|
||||
case 2:
|
||||
realModName = "EMS Verbesserung 3";
|
||||
break;
|
||||
case 3:
|
||||
realModName = "EMS Verbesserung 4";
|
||||
break;
|
||||
}
|
||||
} else if (slot === 12) {
|
||||
switch (mod) {
|
||||
case 0:
|
||||
realModName = "Straßenbremsen";
|
||||
break;
|
||||
case 1:
|
||||
realModName = "Sportbremsen";
|
||||
break;
|
||||
case 2:
|
||||
realModName = "Rennbremsen";
|
||||
break;
|
||||
}
|
||||
} else if (slot === 13) {
|
||||
switch (mod) {
|
||||
case 0:
|
||||
realModName = "Straßengetriebe";
|
||||
break;
|
||||
case 1:
|
||||
realModName = "Sportgetriebe";
|
||||
break;
|
||||
case 2:
|
||||
realModName = "Renngetriebe";
|
||||
break;
|
||||
}
|
||||
} else if (slot === 15) {
|
||||
switch (mod) {
|
||||
case 0:
|
||||
realModName = "Tiefere Federung";
|
||||
break;
|
||||
case 1:
|
||||
realModName = "Straßenfederung";
|
||||
break;
|
||||
case 2:
|
||||
realModName = "Sportfederung";
|
||||
break;
|
||||
case 3:
|
||||
realModName = "Rennfederung";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return realModName;
|
||||
}
|
||||
Reference in New Issue
Block a user