Меню imgui

Krasadon

Участник
Автор темы
40
2
Версия MoonLoader
.027.0-preview
Здравствуйте, я написал imgui скрипт, с box кнопками.
Решил добавить 3 кнопки в главное меню, от которых будет при нажатии переходить в окна выбранные мною.
Так вот, можете написать простой код с таким меню?
Screenshot_2022-02-07-00-07-33-45.jpg
 
Решение
Не совсем то, там функции вызываются с левой стороны, а мне надо чтобы было как на фотографии
Lua:
function imgui.OnDrawFrame()
    imgui.Begin('Test', window, imgui.WindowFlags.AlwaysAutoResize + imgui.WindowFlags.NoCollapse)
        imgui.BeginChild('##left', imgui.ImVec2(150, 300), true)
        if imgui.Button(u8('Общие настройки'), imgui.ImVec2(-1, 20)) then
            menu = 1
        end
        if imgui.Button(u8('Функции'), imgui.ImVec2(-1, 20)) then
            menu = 2
        end
        if imgui.Button(u8('Бинды'), imgui.ImVec2(-1, 20)) then
            menu = 3
        end
        if imgui.Button(u8('Капча'), imgui.ImVec2(-1, 20)) then
            menu = 4
        end
        imgui.EndChild()...

ShikamaruRU

Участник
55
1
Код тебе тут наврятли напишут, да и как я тебя понял, тебе нужно будет создавать несколько окон imgui. Легче будет сделать что-то на подобии этого: https://www.blast.hk/threads/13380/post-793402
Т.к то что хочешь ты, давольно таки не удобно будет. Включение/выключение скрипта: https://www.blast.hk/threads/111766/
 
  • Злость
  • Нравится
Реакции: Krasadon и Shepi

Krasadon

Участник
Автор темы
40
2
Код тебе тут наврятли напишут, да и как я тебя понял, тебе нужно будет создавать несколько окон imgui. Легче будет сделать что-то на подобии этого: https://www.blast.hk/threads/13380/post-793402
Т.к то что хочешь ты, давольно таки не удобно будет. Включение/выключение скрипта: https://www.blast.hk/threads/111766/
Не совсем то, там функции вызываются с левой стороны, а мне надо чтобы было как на фотографии
 

Rice.

Известный
Модератор
1,756
1,622
Не совсем то, там функции вызываются с левой стороны, а мне надо чтобы было как на фотографии
Lua:
function imgui.OnDrawFrame()
    imgui.Begin('Test', window, imgui.WindowFlags.AlwaysAutoResize + imgui.WindowFlags.NoCollapse)
        imgui.BeginChild('##left', imgui.ImVec2(150, 300), true)
        if imgui.Button(u8('Общие настройки'), imgui.ImVec2(-1, 20)) then
            menu = 1
        end
        if imgui.Button(u8('Функции'), imgui.ImVec2(-1, 20)) then
            menu = 2
        end
        if imgui.Button(u8('Бинды'), imgui.ImVec2(-1, 20)) then
            menu = 3
        end
        if imgui.Button(u8('Капча'), imgui.ImVec2(-1, 20)) then
            menu = 4
        end
        imgui.EndChild()
        imgui.SameLine()
        imgui.BeginChild('##right', imgui.ImVec2(400, 300), true)
        if menu == 1 then
            imgui.Text(u8('Ваша фраза:')); imgui.SameLine(); if imgui.InputText('##fraza', fraza) then cfg.config.fraza = u8:decode(fraza.v) save() end
            imgui.Text(u8('Активация:')); imgui.SameLine(); if imgui.InputText('##act', act) then cfg.config.act = u8:decode(act.v) save() end
        end
        if menu == 2 then
            if imgui.Checkbox(u8'Сообщение в чат после покупки имущества', smsPosle) then cfg.config.smsPosle = smsPosle.v save() end
            if imgui.Checkbox(u8'Добавлять время во фразу', timeFraza) then cfg.config.timeFraza = timeFraza.v save() end
        end
        if menu == 3 then
            if imgui.Checkbox(u8'Изменить стиль езды (Буква - X)', style) then cfg.config.style = style.v save() end
            if imgui.Checkbox(u8'Открыть телефон (Буква - P)', phone) then cfg.config.phone = phone.v save() end
            if imgui.Checkbox(u8'Открыть или закрыть машину (Буква - L)', lock) then cfg.config.lock = lock.v save() end
            if imgui.Checkbox(u8'Очистить чат (Команда - /cc)', cc) then cfg.config.cc = cc.v save() end
        end
        if menu == 4 then
            imgui.Text(u8('Тренировка капчи: В разработке!'))
        end
        imgui.EndChild()
    imgui.End()
end
1644196144093.png


UPD: Вырезал из своего скрипта для одного человека. Надеюсь, что поймешь, если что - спрашивай.
 

Krasadon

Участник
Автор темы
40
2
Lua:
function imgui.OnDrawFrame()
    imgui.Begin('Test', window, imgui.WindowFlags.AlwaysAutoResize + imgui.WindowFlags.NoCollapse)
        imgui.BeginChild('##left', imgui.ImVec2(150, 300), true)
        if imgui.Button(u8('Общие настройки'), imgui.ImVec2(-1, 20)) then
            menu = 1
        end
        if imgui.Button(u8('Функции'), imgui.ImVec2(-1, 20)) then
            menu = 2
        end
        if imgui.Button(u8('Бинды'), imgui.ImVec2(-1, 20)) then
            menu = 3
        end
        if imgui.Button(u8('Капча'), imgui.ImVec2(-1, 20)) then
            menu = 4
        end
        imgui.EndChild()
        imgui.SameLine()
        imgui.BeginChild('##right', imgui.ImVec2(400, 300), true)
        if menu == 1 then
            imgui.Text(u8('Ваша фраза:')); imgui.SameLine(); if imgui.InputText('##fraza', fraza) then cfg.config.fraza = u8:decode(fraza.v) save() end
            imgui.Text(u8('Активация:')); imgui.SameLine(); if imgui.InputText('##act', act) then cfg.config.act = u8:decode(act.v) save() end
        end
        if menu == 2 then
            if imgui.Checkbox(u8'Сообщение в чат после покупки имущества', smsPosle) then cfg.config.smsPosle = smsPosle.v save() end
            if imgui.Checkbox(u8'Добавлять время во фразу', timeFraza) then cfg.config.timeFraza = timeFraza.v save() end
        end
        if menu == 3 then
            if imgui.Checkbox(u8'Изменить стиль езды (Буква - X)', style) then cfg.config.style = style.v save() end
            if imgui.Checkbox(u8'Открыть телефон (Буква - P)', phone) then cfg.config.phone = phone.v save() end
            if imgui.Checkbox(u8'Открыть или закрыть машину (Буква - L)', lock) then cfg.config.lock = lock.v save() end
            if imgui.Checkbox(u8'Очистить чат (Команда - /cc)', cc) then cfg.config.cc = cc.v save() end
        end
        if menu == 4 then
            imgui.Text(u8('Тренировка капчи: В разработке!'))
        end
        imgui.EndChild()
    imgui.End()
end
Посмотреть вложение 135302

UPD: Вырезал из своего скрипта для одного человека. Надеюсь, что поймешь, если что - спрашивай.
Спасибо большое! Я примерно так же делал, но у меня функции которые должны были вылазить при активации кнопки появлялись сразу
 
  • Вау
Реакции: ShikamaruRU

shawtyglock.

Активный
188
63
Lua:
function imgui.OnDrawFrame()
    imgui.Begin('Test', window, imgui.WindowFlags.AlwaysAutoResize + imgui.WindowFlags.NoCollapse)
        imgui.BeginChild('##left', imgui.ImVec2(150, 300), true)
        if imgui.Button(u8('Общие настройки'), imgui.ImVec2(-1, 20)) then
            menu = 1
        end
        if imgui.Button(u8('Функции'), imgui.ImVec2(-1, 20)) then
            menu = 2
        end
        if imgui.Button(u8('Бинды'), imgui.ImVec2(-1, 20)) then
            menu = 3
        end
        if imgui.Button(u8('Капча'), imgui.ImVec2(-1, 20)) then
            menu = 4
        end
        imgui.EndChild()
        imgui.SameLine()
        imgui.BeginChild('##right', imgui.ImVec2(400, 300), true)
        if menu == 1 then
            imgui.Text(u8('Ваша фраза:')); imgui.SameLine(); if imgui.InputText('##fraza', fraza) then cfg.config.fraza = u8:decode(fraza.v) save() end
            imgui.Text(u8('Активация:')); imgui.SameLine(); if imgui.InputText('##act', act) then cfg.config.act = u8:decode(act.v) save() end
        end
        if menu == 2 then
            if imgui.Checkbox(u8'Сообщение в чат после покупки имущества', smsPosle) then cfg.config.smsPosle = smsPosle.v save() end
            if imgui.Checkbox(u8'Добавлять время во фразу', timeFraza) then cfg.config.timeFraza = timeFraza.v save() end
        end
        if menu == 3 then
            if imgui.Checkbox(u8'Изменить стиль езды (Буква - X)', style) then cfg.config.style = style.v save() end
            if imgui.Checkbox(u8'Открыть телефон (Буква - P)', phone) then cfg.config.phone = phone.v save() end
            if imgui.Checkbox(u8'Открыть или закрыть машину (Буква - L)', lock) then cfg.config.lock = lock.v save() end
            if imgui.Checkbox(u8'Очистить чат (Команда - /cc)', cc) then cfg.config.cc = cc.v save() end
        end
        if menu == 4 then
            imgui.Text(u8('Тренировка капчи: В разработке!'))
        end
        imgui.EndChild()
    imgui.End()
end
Посмотреть вложение 135302

UPD: Вырезал из своего скрипта для одного человека. Надеюсь, что поймешь, если что - спрашивай.
Как сделать название Button по центру, как в этом скрипте? Не вижу в коде ничего, отвечающее за это (новичок), можете объяснить?
 

chapo

чопа сребдс // @moujeek
Модератор
8,932
11,697
Как сделать название Button по центру, как в этом скрипте? Не вижу в коде ничего, отвечающее за это (новичок), можете объяснить?
в стиле есть значение отвечающее за центрирование текста в кнопках, вроде бы ButtonTextAlign
 
  • Нравится
Реакции: sat0ry