From 2c45a618242b76e69753fb307e0ed45c8674faf0 Mon Sep 17 00:00:00 2001 From: VegaZ Date: Sat, 6 Jun 2020 16:55:54 +0200 Subject: [PATCH] Add globalData.InMenu to InputHelpers --- ReallifeGamemode.Client/Business/main.ts | 5 ++++- .../Gui/Inventory/inventory.ts | 5 ++++- ReallifeGamemode.Client/Gui/cityhall.ts | 2 ++ .../Interaction/factioninteraction.ts | 10 ++++++++++ .../Interaction/interactionmenu.ts | 18 ++++++++++++++++-- ReallifeGamemode.Client/Player/keys.ts | 13 +++++++------ ReallifeGamemode.Client/inputhelper/index.ts | 4 ++-- .../Windows PowerShell.lnk | Bin 2366 -> 2500 bytes 8 files changed, 45 insertions(+), 12 deletions(-) diff --git a/ReallifeGamemode.Client/Business/main.ts b/ReallifeGamemode.Client/Business/main.ts index 7b76bdfc..7ab1e803 100644 --- a/ReallifeGamemode.Client/Business/main.ts +++ b/ReallifeGamemode.Client/Business/main.ts @@ -91,6 +91,7 @@ export default function business(globalData: IGlobalData) { bankMenu.ItemSelect.on((item, index) => { if (item === depositItem) { + globalData.InInput = true; var depositInput = new InputHelper("Wie viel Geld möchtest du auf deine Businesskasse einzahlen?", globalData); depositInput.show(); depositInput.getValue((data) => { @@ -100,11 +101,13 @@ export default function business(globalData: IGlobalData) { return; } + globalData.InInput = false; mp.events.callRemote('Business_DepositMoney', amount); mainMenu.Close(); }); } else if (item === withdrawItem) { + globalData.InInput = true; var withdrawInput = new InputHelper("Wie viel Geld möchtest du von deiner Businesskasse abheben?", globalData); withdrawInput.show(); withdrawInput.getValue((data) => { @@ -113,7 +116,7 @@ export default function business(globalData: IGlobalData) { mp.game.graphics.notify('~r~Du musst eine Nummer eingeben!'); return; } - + globalData.InInput = false; mp.events.callRemote('Business_WithdrawMoney', amount); mainMenu.Close(); diff --git a/ReallifeGamemode.Client/Gui/Inventory/inventory.ts b/ReallifeGamemode.Client/Gui/Inventory/inventory.ts index b1e8191c..45d97981 100644 --- a/ReallifeGamemode.Client/Gui/Inventory/inventory.ts +++ b/ReallifeGamemode.Client/Gui/Inventory/inventory.ts @@ -852,6 +852,7 @@ export default function inventory(globalData: IGlobalData) { //Wenn Maus über Dollar Zeichen if (isTrading && isMouseOverTradeDollar(x, y)) { + globalData.InInput = true; var tradeMoney = new InputHelper("Wie viel $ möchtest du für deine Items haben?", globalData); tradeMoney.show(); tradeMoney.getValue((data) => { @@ -860,6 +861,7 @@ export default function inventory(globalData: IGlobalData) { mp.game.graphics.notify('~r~Du musst eine Zahl größer als 0 eingeben!'); return; } + globalData.InInput = false; tradePrize = amount; }); } @@ -876,6 +878,7 @@ export default function inventory(globalData: IGlobalData) { switch (radialSelect) { case "up": var dropInput = new InputHelper("Wie viel Items möchtest du wegwerfen?", globalData); + globalData.InInput = true; dropInput.show(); dropInput.getValue((data) => { var amount = parseInt(data); @@ -888,7 +891,7 @@ export default function inventory(globalData: IGlobalData) { } mp.events.callRemote('itemInteract', "drop", items[clickedItem][5], amount); }); - + globalData.InInput = false; itemRadial = false; break; case "down": diff --git a/ReallifeGamemode.Client/Gui/cityhall.ts b/ReallifeGamemode.Client/Gui/cityhall.ts index 937c9ee3..99b55676 100644 --- a/ReallifeGamemode.Client/Gui/cityhall.ts +++ b/ReallifeGamemode.Client/Gui/cityhall.ts @@ -88,11 +88,13 @@ export default function (globalData: IGlobalData) { menu.ItemSelect.on((item: NativeUI.UIMenuItem, index) => { if (item === groupCreateItem) { // Gruppe + globalData.InInput = true; var input = new InputHelper("Wie soll die Gruppe heißen?", globalData); input.show(); input.getValue((name: string) => { mp.events.callRemote("CLIENT:CityHall_CreateGroup", name); menu.Close(true); + globalData.InInput = false; }); } else if (item === cancelItem) { menu.Close(); diff --git a/ReallifeGamemode.Client/Interaction/factioninteraction.ts b/ReallifeGamemode.Client/Interaction/factioninteraction.ts index 7f3f32fb..d9a20fcb 100644 --- a/ReallifeGamemode.Client/Interaction/factioninteraction.ts +++ b/ReallifeGamemode.Client/Interaction/factioninteraction.ts @@ -78,11 +78,13 @@ export default function factionInteraction(globalData: IGlobalData) { mp.gui.chat.activate(true); mp.gui.cursor.show(true, true); globalData.InMenu = false; + globalData.InInput = true; var input = new InputHelper("Welchem Spieler möchtest du ein Ticket geben (Name / ID)?", globalData); input.show(); input.getValue(name => { mp.events.call("CLIENT:InteractionMenu_LSPD_Ticket", name); mp.gui.cursor.show(false, false); + globalData.InInput = false; }); break; case pointsTaskMenuLSPD: @@ -90,10 +92,12 @@ export default function factionInteraction(globalData: IGlobalData) { mp.gui.chat.activate(true); mp.gui.cursor.show(true, true); globalData.InMenu = false; + globalData.InInput = true; var input = new InputHelper("Welchem Spieler möchtest du Strafpunkte geben (Name / ID)?", globalData); input.show(); input.getValue(name => { mp.events.call("CLIENT:InteractionMenu_LSPD_Points", name); + globalData.InInput = false; }); break; } @@ -108,20 +112,24 @@ export default function factionInteraction(globalData: IGlobalData) { }); mp.events.add("CLIENT:InteractionMenu_LSPD_Ticket", (name) => { ticketName = name; + globalData.InInput = true; var input = new InputHelper("Wie hoch soll der Ticketbetrag sein ?", globalData); mp.gui.cursor.show(true, true); input.show(); input.getValue(amount => { + globalData.InInput = false; mp.events.call("CLIENT:InteractionMenu_LSPD_Ticket2", amount); mp.gui.cursor.show(false, false); }); }); mp.events.add("CLIENT:InteractionMenu_LSPD_Ticket2", (ticketPrice) => { + globalData.InInput = true; var input = new InputHelper("Um welches Vergehen handelt es sich ?", globalData); mp.gui.cursor.show(true, true); input.show(); input.getValue(ticketReason => { + globalData.InInput = false; mp.events.callRemote("CLIENT:InteractionMenu_LSPD_Ticket3", JSON.stringify(ticketName), ticketPrice, JSON.stringify(ticketReason)); mp.gui.cursor.show(false, false); }); @@ -129,10 +137,12 @@ export default function factionInteraction(globalData: IGlobalData) { mp.events.add("CLIENT:InteractionMenu_LSPD_Points", (name) => { pointsName = name; + globalData.InInput = true; var input = new InputHelper("Wieviele Punkte werden vergeben ?", globalData); mp.gui.cursor.show(true, true); input.show(); input.getValue(amount => { + globalData.InInput = false; mp.events.call("CLIENT:InteractionMenu_LSPD_Points2", amount); mp.gui.cursor.show(false, false); }); diff --git a/ReallifeGamemode.Client/Interaction/interactionmenu.ts b/ReallifeGamemode.Client/Interaction/interactionmenu.ts index efc48232..8f177947 100644 --- a/ReallifeGamemode.Client/Interaction/interactionmenu.ts +++ b/ReallifeGamemode.Client/Interaction/interactionmenu.ts @@ -153,16 +153,19 @@ export default function (globalData: IGlobalData) { if (item === acceptItem) { mp.events.callRemote("CLIENT:InteractionMenu_AcceptInvite", acceptItem.SelectedValue); menu.Close(true); + globalData.InMenu = false; } else if (item === payItem) { mp.gui.chat.activate(true); mp.gui.cursor.show(true, true); globalData.InMenu = false; + globalData.InInput = true; var input = new InputHelper("Welchem Spieler möchtest du Geld geben (Name / ID)?", globalData); input.show(); input.getValue(name => { mp.events.call("CLIENT:InteractionMenu_Pay_Name", name); mp.gui.cursor.show(false, false); - menu.Close(true); + menu.Close(true); + globalData.InInput = false; }); } }); @@ -265,11 +268,13 @@ export default function (globalData: IGlobalData) { licenseMenu.ItemSelect.on((item, index) => { if (item === showItem) { + globalData.InInput = true; var input = new InputHelper("Welchen Spieler möchtest du deine Lizenzen zeigen (Name / ID)?", globalData); input.show(); input.getValue(name => { mp.events.callRemote("CLIENT:InteractionMenu_Show", "License", name); parentMenu.Close(true); + globalData.InInput = false; }); } @@ -310,18 +315,22 @@ export default function (globalData: IGlobalData) { factionMenu.ItemSelect.on((item, index) => { if (index === 0) { // Inviten + globalData.InInput = true; var input = new InputHelper("Welchen Spieler möchtest du inviten (Name / ID)?", globalData); input.show(); input.getValue(name => { mp.events.callRemote("CLIENT:InteractionMenu_Invite", "Fraktion", name); parentMenu.Close(); + globalData.InInput = false; }); } else if (index === 1) { // Uninviten + globalData.InInput == true; var input = new InputHelper("Welchen Spieler möchtest du uninviten (Name / ID)?", globalData); input.show(); input.getValue(name => { mp.events.callRemote("CLIENT:InteractionMenu_Uninvite", "Fraktion", name); parentMenu.Close(); + globalData.InInput = false; }); } }); @@ -337,18 +346,22 @@ export default function (globalData: IGlobalData) { groupMenu.ItemSelect.on((item, index) => { if (index === 0) { // Inviten + globalData.InInput = true; var input = new InputHelper("Welchen Spieler möchtest du inviten (Name / ID)?", globalData); input.show(); input.getValue(name => { mp.events.callRemote("CLIENT:InteractionMenu_Invite", "Gruppe", name); parentMenu.Close(); + globalData.InInput = false; }); } else if (index === 1) { // Uninviten + globalData.InInput == true; var input = new InputHelper("Welchen Spieler möchtest du uninviten (Name / ID)?", globalData); input.show(); input.getValue(name => { mp.events.callRemote("CLIENT:InteractionMenu_Uninvite", "Gruppe", name); parentMenu.Close(); + globalData.InInput = false; }); } }); @@ -457,13 +470,14 @@ export default function (globalData: IGlobalData) { mp.events.add("CLIENT:InteractionMenu_Pay_Name", (name) => { payName = name; + globalData.InInput = true; var input = new InputHelper("Wie viel?", globalData); mp.gui.cursor.show(true, true); input.show(); input.getValue(amount => { mp.events.callRemote("CLIENT:InteractionMenu_Pay", JSON.stringify(payName), amount); mp.gui.cursor.show(false, false); - + globalData.InInput = false; }); }); } diff --git a/ReallifeGamemode.Client/Player/keys.ts b/ReallifeGamemode.Client/Player/keys.ts index dd10ffd7..2b6b06cb 100644 --- a/ReallifeGamemode.Client/Player/keys.ts +++ b/ReallifeGamemode.Client/Player/keys.ts @@ -43,12 +43,6 @@ export default function keys(globalData: IGlobalData) { } }); - //DOWN ARROW (Eigeninteraktion) - mp.keys.bind(0x4D, false, function () { - if (!globalData.InChat && !showInv && !globalData.InMenu && !globalData.InInput && !globalData.InTuning) { - mp.events.callRemote("keyPress:M"); - } - }); //F7 //Unshowalles mp.keys.bind(0x76, false, function () { if (showGui === true) { @@ -116,6 +110,13 @@ export default function keys(globalData: IGlobalData) { } }); + //M (Interaktionsmenü) + mp.keys.bind(0x4D, false, function () { + if (!globalData.InChat && !showInv && !globalData.InMenu && !globalData.InInput && !globalData.InTuning) { + mp.events.callRemote("keyPress:M"); + } + }); + //N //Motor Starten mp.keys.bind(0x4E, false, function () { if (!globalData.InChat) { diff --git a/ReallifeGamemode.Client/inputhelper/index.ts b/ReallifeGamemode.Client/inputhelper/index.ts index ee46c369..b8dcb6b2 100644 --- a/ReallifeGamemode.Client/inputhelper/index.ts +++ b/ReallifeGamemode.Client/inputhelper/index.ts @@ -28,8 +28,8 @@ export default class InputHelper { } private disableControls() { - for (var i = 0; i <= 33; i++) { - mp.game.controls.disableAllControlActions(i); + for (var x = 0; x < 358; x++) { + mp.game.controls.disableControlAction(32, x, true); } } diff --git a/ReallifeGamemode.Database/Windows PowerShell.lnk b/ReallifeGamemode.Database/Windows PowerShell.lnk index 07b77a2d95f68780ff1c55303ddb7b890dbb2673..14902e1bbac54efa3657dc471d0740bb0716bbbb 100644 GIT binary patch delta 65 zcmdldbVPW92;=>YqTiUbof!0hFa`@5&XCEF$B@F1&rr@#3{(+3`5H^~W^QIiyiaI?2;=pQqTiS{Ph>V`0{}kr24VmJ