This is a mobile optimized page that loads fast, if you want to load the real page, click this text.

Вопрос client-side как из одного скрипта выполнить другой.

httdiente

Активный участник
1 Май 2021
38
1
30
Здравствуйте, мне нужно сделать следующее - при открытии инвентаря скрыть интерфейс, как мне это сделать?

JavaScript:
mp.events.add('showPlayerInventory', () => {
    if(inventoryBrowser == undefined) {
        inventoryBrowser = mp.browsers.new('package://inventory/cef/index.html');
    }
    else {
        if(inventoryBrowser.active == false) {
            inventoryBrowser.active = true;
        }
    }
});
 

JJIGolem

Гуру
high coder
19 Окт 2020
225
283
142
Допустим, есть hudBrowser, который является нашим основным игровым интерфейсом.

JavaScript:
let hudBrowser = mp.browsers.new('package://cef/hud.html');

mp.events.add('hud:visible', hide) => {
    if(hudBrowser) {
        // Вроде, можно ограничиться лишь этим.
        hudBrowser.active = hide;
        // Но на всякий случай можно вызвать что-то ещё из hudBrowser
        // 1.1
        hudBrowser.call('visible', hide);
        // 1.1 or 0.3.7
        hudBrowser.execute(`visible(${hide})`);
    }
})

mp.events.add('showPlayerInventory', () => {
    if(inventoryBrowser == undefined) {
        inventoryBrowser = mp.browsers.new('package://inventory/cef/index.html');
    }
    else {
        if(inventoryBrowser.active == false) {
            inventoryBrowser.active = true;
            // Вызываем наше событие.
            mp.events.call('hud:visible', false);
        }
    }
});

Также можно сделать так

JavaScript:
let hudBrowser = mp.browsers.new('package://cef/hud.html');

global['hudVisible'] = (hide) => {
    if(hudBrowser) {
        // Вроде, можно ограничиться лишь этим.
        hudBrowser.active = hide;
        // Но на всякий случай можно вызвать что-то ещё из hudBrowser
        // 1.1
        hudBrowser.call('visible', hide);
        // 1.1 or 0.3.7
        hudBrowser.execute(`visible(${hide})`);
    }
}

mp.events.add('showPlayerInventory', () => {
    if(inventoryBrowser == undefined) {
        inventoryBrowser = mp.browsers.new('package://inventory/cef/index.html');
    }
    else {
        if(inventoryBrowser.active == false) {
            inventoryBrowser.active = true;
            // Вызываем нашу функцию
            global.hudVisible(false);
        }
    }
});

Проверить точно сам не могу, но прочекайте такой вариант
 
Последнее редактирование: