update NativeUI, close interaction menu when submitting input field
This commit is contained in:
@@ -31,7 +31,7 @@ export default function (globalData: GlobalData) {
|
||||
if (faction) {
|
||||
factionItem.SetRightLabel(faction);
|
||||
menu.AddItem(factionItem);
|
||||
menu.BindMenuToItem(getFactionMenu(faction), factionItem);
|
||||
menu.BindMenuToItem(getFactionMenu(faction, menu), factionItem);
|
||||
}
|
||||
|
||||
if (group) {
|
||||
@@ -43,14 +43,23 @@ export default function (globalData: GlobalData) {
|
||||
var items: Array<string> = new Array<string>();
|
||||
if (factionInvite) items.push("Fraktion");
|
||||
if (groupInvite) items.push("Gruppe");
|
||||
var acceptItem = new UIMenuListItem("Einladung annehmen", "", new ItemsCollection(items));
|
||||
var acceptItem: NativeUI.UIMenuListItem;
|
||||
|
||||
if (items.length !== 0) menu.AddItem(acceptItem);
|
||||
if (items.length !== 0) {
|
||||
acceptItem = new UIMenuListItem("Einladung annehmen", "", new ItemsCollection(items));
|
||||
menu.AddItem(acceptItem);
|
||||
}
|
||||
|
||||
menu.Visible = true;
|
||||
mp.gui.chat.show(false);
|
||||
globalData.Interaction = true;
|
||||
|
||||
menu.ItemSelect.on((item, index) => {
|
||||
if (item === acceptItem) {
|
||||
mp.events.callRemote("CLIENT:InteractionMenu_AcceptInvite", acceptItem.SelectedValue);
|
||||
}
|
||||
});
|
||||
|
||||
menu.MenuClose.on(() => {
|
||||
globalData.Interaction = false;
|
||||
mp.gui.chat.show(true);
|
||||
@@ -92,7 +101,7 @@ export default function (globalData: GlobalData) {
|
||||
return accountMenu;
|
||||
}
|
||||
|
||||
function getFactionMenu(faction: string): NativeUI.Menu {
|
||||
function getFactionMenu(faction: string, parentMenu: NativeUI.Menu): NativeUI.Menu {
|
||||
var factionMenu = new NativeUI.Menu("Fraktion", faction, new Point(50, 50), null, null);
|
||||
factionMenu.AddItem(new UIMenuItem("Spieler einladen"));
|
||||
factionMenu.AddItem(new UIMenuItem("Spieler rauswerfen"));
|
||||
@@ -104,6 +113,7 @@ export default function (globalData: GlobalData) {
|
||||
input.show();
|
||||
input.getValue(name => {
|
||||
mp.events.callRemote("CLIENT:InteractionMenu_InviteFaction", name);
|
||||
parentMenu.Close();
|
||||
});
|
||||
} else if (index === 1) { // Uninviten
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user