как сделать глазик mimgui

.KOHTOP.

Активный
Автор темы
226
35
Версия MoonLoader
.027.0-preview
У меня час ночи...
Я проснулся с мыслью

КАК СДЕЛАТЬ ГЛАЗ
1693408441401.png
 
Решение
у меня как раз пример с такой хуйнёй лежал
Lua:
local imgui = require 'mimgui'
local faicons = require('fAwesome6')
local WinState = imgui.new.bool()

local password = imgui.new.char[256]('')
local showPas = false

imgui.OnFrame(function() return WinState[0] end, function()
    imgui.SetNextWindowPos(imgui.ImVec2(500,500), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
    imgui.SetNextWindowSize(imgui.ImVec2(250,300), imgui.Cond.FirstUseEver)
    imgui.Begin('##Window', WinState)
    imgui.InputTextWithHint('','Type password',password,256, showPas and 0 or imgui.InputTextFlags.Password)
    imgui.SameLine()
    if imgui.Button(faicons(showPas and "EYE" or "EYE_SLASH")) then
        showPas = not showPas
    end
    imgui.End()
end)...

cord

Хватит спать на мне
Проверенный
571
470
использовать fawesome 6, там есть примеры использования
 

.KOHTOP.

Активный
Автор темы
226
35
использовать fawesome 6, там есть примеры использования
1693409093782.png
 

cord

Хватит спать на мне
Проверенный
571
470
В конце кода есть это?:
Lua:
imgui.OnInitialize(function()
    imgui.GetIO().IniFilename = nil
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    iconRanges = imgui.new.ImWchar[3](faicons.min_range, faicons.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(faicons.get_font_data_base85('solid'), 14, config, iconRanges) -- solid - тип иконок, так же есть thin, regular, light и duotone
end)
 

MLycoris

На вид оружие массового семяизвержения
Проверенный
1,992
2,187
у меня как раз пример с такой хуйнёй лежал
Lua:
local imgui = require 'mimgui'
local faicons = require('fAwesome6')
local WinState = imgui.new.bool()

local password = imgui.new.char[256]('')
local showPas = false

imgui.OnFrame(function() return WinState[0] end, function()
    imgui.SetNextWindowPos(imgui.ImVec2(500,500), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
    imgui.SetNextWindowSize(imgui.ImVec2(250,300), imgui.Cond.FirstUseEver)
    imgui.Begin('##Window', WinState)
    imgui.InputTextWithHint('','Type password',password,256, showPas and 0 or imgui.InputTextFlags.Password)
    imgui.SameLine()
    if imgui.Button(faicons(showPas and "EYE" or "EYE_SLASH")) then
        showPas = not showPas
    end
    imgui.End()
end)

function main()
    sampRegisterChatCommand('cmdd', function()
        WinState[0] = not WinState[0]
    end)
    wait(-1)
end

imgui.OnInitialize(function()
    imgui.GetIO().IniFilename = nil
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    iconRanges = imgui.new.ImWchar[3](faicons.min_range, faicons.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(faicons.get_font_data_base85('solid'), 14, config, iconRanges) -- solid - тип иконок, так же есть thin, regular, light и duotone
end)
1693409512130.png
1693409520375.png
 
  • Влюблен
Реакции: cord

.KOHTOP.

Активный
Автор темы
226
35
у меня как раз пример с такой хуйнёй лежал
Lua:
local imgui = require 'mimgui'
local faicons = require('fAwesome6')
local WinState = imgui.new.bool()

local password = imgui.new.char[256]('')
local showPas = false

imgui.OnFrame(function() return WinState[0] end, function()
    imgui.SetNextWindowPos(imgui.ImVec2(500,500), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
    imgui.SetNextWindowSize(imgui.ImVec2(250,300), imgui.Cond.FirstUseEver)
    imgui.Begin('##Window', WinState)
    imgui.InputTextWithHint('','Type password',password,256, showPas and 0 or imgui.InputTextFlags.Password)
    imgui.SameLine()
    if imgui.Button(faicons(showPas and "EYE" or "EYE_SLASH")) then
        showPas = not showPas
    end
    imgui.End()
end)

function main()
    sampRegisterChatCommand('cmdd', function()
        WinState[0] = not WinState[0]
    end)
    wait(-1)
end

imgui.OnInitialize(function()
    imgui.GetIO().IniFilename = nil
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    iconRanges = imgui.new.ImWchar[3](faicons.min_range, faicons.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(faicons.get_font_data_base85('solid'), 14, config, iconRanges) -- solid - тип иконок, так же есть thin, regular, light и duotone
end)
Посмотреть вложение 213718Посмотреть вложение 213720
Помидорка, я тебя пиздец люблю, лучший в сфере mimgui

у меня как раз пример с такой хуйнёй лежал
Lua:
local imgui = require 'mimgui'
local faicons = require('fAwesome6')
local WinState = imgui.new.bool()

local password = imgui.new.char[256]('')
local showPas = false

imgui.OnFrame(function() return WinState[0] end, function()
    imgui.SetNextWindowPos(imgui.ImVec2(500,500), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
    imgui.SetNextWindowSize(imgui.ImVec2(250,300), imgui.Cond.FirstUseEver)
    imgui.Begin('##Window', WinState)
    imgui.InputTextWithHint('','Type password',password,256, showPas and 0 or imgui.InputTextFlags.Password)
    imgui.SameLine()
    if imgui.Button(faicons(showPas and "EYE" or "EYE_SLASH")) then
        showPas = not showPas
    end
    imgui.End()
end)

function main()
    sampRegisterChatCommand('cmdd', function()
        WinState[0] = not WinState[0]
    end)
    wait(-1)
end

imgui.OnInitialize(function()
    imgui.GetIO().IniFilename = nil
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    iconRanges = imgui.new.ImWchar[3](faicons.min_range, faicons.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(faicons.get_font_data_base85('solid'), 14, config, iconRanges) -- solid - тип иконок, так же есть thin, regular, light и duotone
end)
Посмотреть вложение 213718Посмотреть вложение 213720
1693410570972.png


скрипт
 

Вложения

  • Addons_demo.lua
    1.2 MB · Просмотры: 8
  • Нравится
Реакции: MLycoris

MLycoris

На вид оружие массового семяизвержения
Проверенный
1,992
2,187
попробуй эту фигню в imgui.OnInitialize добавить
Lua:
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    iconRanges = imgui.new.ImWchar[3](faicons.min_range, faicons.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(faicons.get_font_data_base85('solid'), 14, config, iconRanges) -- solid - тип иконок, так же есть thin, regular, light и duotone
 

.KOHTOP.

Активный
Автор темы
226
35
попробуй эту фигню в imgui.OnInitialize добавить
Lua:
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    iconRanges = imgui.new.ImWchar[3](faicons.min_range, faicons.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(faicons.get_font_data_base85('solid'), 14, config, iconRanges) -- solid - тип иконок, так же есть thin, regular, light и duotone
таже тема
 

MLycoris

На вид оружие массового семяизвержения
Проверенный
1,992
2,187
1. У тебя в коде 2 imgui.OnInitialize, сотри последний перенеси херню со шрифтом в 1-ый
2) В этом же первом imgui.OnInitialize убери строку с FONTS:Clear()
1693411643674.png


должно получится так
Lua:
imgui.OnInitialize(function()
    imgui.GetIO().IniFilename = nil
    local FONTS = imgui.GetIO().Fonts
    local STYLE = imgui.GetStyle()
    local COLOR = STYLE.Colors
    local VEC4, c = imgui.ImVec4, imgui.Col
    font = { B = {}, R = {} }
    
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    iconRanges = imgui.new.ImWchar[3](faicons.min_range, faicons.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(faicons.get_font_data_base85('solid'), 14, config, iconRanges) -- solid - тип иконок, так же есть thin, regular, light и duotone


    local builder = imgui.ImFontGlyphRangesBuilder()
    builder:AddRanges(FONTS:GetGlyphRangesCyrillic())
    builder:AddText("‚„…†‡€‰‹‘’“”•–-™›№")
    local range = imgui.ImVector_ImWchar()
    builder:BuildRanges(range)

    --FONTS:Clear() -- мешает фавесоме
    font['R'][15] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_R, 15, nil, range[0].Data)
    font['B'][15] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_B, 15, nil, range[0].Data)
    font['R'][20] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_R, 20, nil, range[0].Data)
    font['B'][20] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_B, 20, nil, range[0].Data)
    font['R'][70] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_R, 70, nil, range[0].Data)
    font['B'][70] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_B, 70, nil, range[0].Data)

    img = imgui.CreateTextureFromFileInMemory(imgui.new('const char*', base85.img), #base85.img)

    -- STYLE
    imgui.SwitchContext()
    STYLE.WindowPadding        = imgui.ImVec2(5, 5)
    STYLE.ItemSpacing        = imgui.ImVec2(10, 10)
    STYLE.WindowBorderSize    = 5.0
    STYLE.WindowRounding    = 10.0
    STYLE.ChildRounding        = 10.0
    STYLE.FrameRounding        = 5.0

    COLOR[c.Text]                    = VEC4(1.00, 1.00, 1.00, 1.00)
    COLOR[c.TextDisabled]            = VEC4(1.00, 1.00, 1.00, 0.80)
    COLOR[c.WindowBg]                = VEC4(0.13, 0.12, 0.18, 1.00)
    COLOR[c.ChildBg]                = VEC4(0.18, 0.17, 0.23, 1.00)
    COLOR[c.PopupBg]                = VEC4(0.30, 0.30, 0.30, 1.00)
    COLOR[c.Border]                    = VEC4(0.60, 0.50, 0.95, 1.00)
    COLOR[c.Separator]                = VEC4(0.50, 0.50, 0.50, 0.90)
    COLOR[c.FrameBg]                = VEC4(0.60, 0.50, 0.95, 0.20)
    COLOR[c.FrameBgHovered]            = VEC4(0.60, 0.50, 0.95, 0.50)
    COLOR[c.FrameBgActive]            = VEC4(0.60, 0.50, 0.95, 1.00)
    COLOR[c.SliderGrab]                = VEC4(1.00, 1.00, 1.00, 0.50)
    COLOR[c.SliderGrabActive]        = VEC4(1.00, 1.00, 1.00, 1.00)
    COLOR[c.CheckMark]                = VEC4(1.00, 1.00, 1.00, 1.00)
    COLOR[c.Button]                    = VEC4(0.60, 0.50, 0.95, 0.50)
    COLOR[c.ButtonHovered]            = VEC4(0.65, 0.55, 0.75, 0.50)
    COLOR[c.ButtonActive]            = VEC4(0.65, 0.55, 0.75, 1.00)
    COLOR[c.ScrollbarBg]            = VEC4(0.60, 0.50, 0.95, 0.30)
    COLOR[c.ScrollbarGrab]            = VEC4(0.60, 0.50, 0.95, 0.80)
    COLOR[c.ScrollbarGrabHovered]    = VEC4(0.60, 0.50, 0.95, 0.30)
    COLOR[c.ScrollbarGrabActive]    = VEC4(0.60, 0.50, 0.95, 0.30)
    COLOR[c.TextSelectedBg]         = VEC4(1.00, 1.00, 1.00, 0.30)
    COLOR[c.ModalWindowDimBg]       = VEC4(0.00, 0.00, 0.00, 0.60)
end)
 

.KOHTOP.

Активный
Автор темы
226
35
1. У тебя в коде 2 imgui.OnInitialize, сотри последний перенеси херню со шрифтом в 1-ый
2) В этом же первом imgui.OnInitialize убери строку с FONTS:Clear()
Посмотреть вложение 213728

должно получится так
Lua:
imgui.OnInitialize(function()
    imgui.GetIO().IniFilename = nil
    local FONTS = imgui.GetIO().Fonts
    local STYLE = imgui.GetStyle()
    local COLOR = STYLE.Colors
    local VEC4, c = imgui.ImVec4, imgui.Col
    font = { B = {}, R = {} }
   
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    iconRanges = imgui.new.ImWchar[3](faicons.min_range, faicons.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(faicons.get_font_data_base85('solid'), 14, config, iconRanges) -- solid - тип иконок, так же есть thin, regular, light и duotone


    local builder = imgui.ImFontGlyphRangesBuilder()
    builder:AddRanges(FONTS:GetGlyphRangesCyrillic())
    builder:AddText("‚„…†‡€‰‹‘’“”•–-™›№")
    local range = imgui.ImVector_ImWchar()
    builder:BuildRanges(range)

    --FONTS:Clear() -- мешает фавесоме
    font['R'][15] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_R, 15, nil, range[0].Data)
    font['B'][15] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_B, 15, nil, range[0].Data)
    font['R'][20] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_R, 20, nil, range[0].Data)
    font['B'][20] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_B, 20, nil, range[0].Data)
    font['R'][70] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_R, 70, nil, range[0].Data)
    font['B'][70] = FONTS:AddFontFromMemoryCompressedBase85TTF(base85.SF_B, 70, nil, range[0].Data)

    img = imgui.CreateTextureFromFileInMemory(imgui.new('const char*', base85.img), #base85.img)

    -- STYLE
    imgui.SwitchContext()
    STYLE.WindowPadding        = imgui.ImVec2(5, 5)
    STYLE.ItemSpacing        = imgui.ImVec2(10, 10)
    STYLE.WindowBorderSize    = 5.0
    STYLE.WindowRounding    = 10.0
    STYLE.ChildRounding        = 10.0
    STYLE.FrameRounding        = 5.0

    COLOR[c.Text]                    = VEC4(1.00, 1.00, 1.00, 1.00)
    COLOR[c.TextDisabled]            = VEC4(1.00, 1.00, 1.00, 0.80)
    COLOR[c.WindowBg]                = VEC4(0.13, 0.12, 0.18, 1.00)
    COLOR[c.ChildBg]                = VEC4(0.18, 0.17, 0.23, 1.00)
    COLOR[c.PopupBg]                = VEC4(0.30, 0.30, 0.30, 1.00)
    COLOR[c.Border]                    = VEC4(0.60, 0.50, 0.95, 1.00)
    COLOR[c.Separator]                = VEC4(0.50, 0.50, 0.50, 0.90)
    COLOR[c.FrameBg]                = VEC4(0.60, 0.50, 0.95, 0.20)
    COLOR[c.FrameBgHovered]            = VEC4(0.60, 0.50, 0.95, 0.50)
    COLOR[c.FrameBgActive]            = VEC4(0.60, 0.50, 0.95, 1.00)
    COLOR[c.SliderGrab]                = VEC4(1.00, 1.00, 1.00, 0.50)
    COLOR[c.SliderGrabActive]        = VEC4(1.00, 1.00, 1.00, 1.00)
    COLOR[c.CheckMark]                = VEC4(1.00, 1.00, 1.00, 1.00)
    COLOR[c.Button]                    = VEC4(0.60, 0.50, 0.95, 0.50)
    COLOR[c.ButtonHovered]            = VEC4(0.65, 0.55, 0.75, 0.50)
    COLOR[c.ButtonActive]            = VEC4(0.65, 0.55, 0.75, 1.00)
    COLOR[c.ScrollbarBg]            = VEC4(0.60, 0.50, 0.95, 0.30)
    COLOR[c.ScrollbarGrab]            = VEC4(0.60, 0.50, 0.95, 0.80)
    COLOR[c.ScrollbarGrabHovered]    = VEC4(0.60, 0.50, 0.95, 0.30)
    COLOR[c.ScrollbarGrabActive]    = VEC4(0.60, 0.50, 0.95, 0.30)
    COLOR[c.TextSelectedBg]         = VEC4(1.00, 1.00, 1.00, 0.30)
    COLOR[c.ModalWindowDimBg]       = VEC4(0.00, 0.00, 0.00, 0.60)
end)
Помогло, спасибо, но есть ещё одна проблема
1693414383479.png

1693414416357.png


Когда я нажимаю нижнию кнопку, то она не работает
 

MLycoris

На вид оружие массового семяизвержения
Проверенный
1,992
2,187
Помогло, спасибо, но есть ещё одна проблема

Когда я нажимаю нижнию кнопку, то она не работает
приписывай к кнопкам что-то, чтоб небыло одинаковых названий, например
Код:
imgui.Button(faicons(showPas and "EYE" or "EYE_SLASH")..'##1')
imgui.Button(faicons(showPas and "EYE" or "EYE_SLASH")..'##2')
imgui.Button(faicons(showPas and "EYE" or "EYE_SLASH")..'##3')
 
  • Нравится
Реакции: .KOHTOP.