MimGui

OguzokMax

Участник
Автор темы
72
4
Нарушение правил раздела x2
Версия MoonLoader
.027.0-preview
Дратути, писал код на тему для МимГуй и выдает вечно одну и ту же ошибку хотя без темы она не выдаёт ошибку!

Логи ошибки:
govnoKod(ByKot).lua:12: 'struct ImGuiStyle *()' has no member named 'Colors'
stack traceback:
    ./govnoKod(ByKot).lua:12: in function 'Tema'
    ./govnoKod(ByKot).lua:21: in function 'cb'
    ./lib/mimgui/init.lua:79: in function 'InitializeRenderer'
    ./lib/mimgui/init.lua:87: in function <./lib/mimgui/init.lua:84>
И сам же ГовноКод:
ГовноКод:
local ffi = require('ffi');
local imgui = require('mimgui');
local encoding = require('encoding');
encoding.default = 'CP1251';
local u8 = encoding.UTF8;

local window = imgui.new.bool(false);
local active = imgui.new.bool(false);
local text = imgui.new.char[64]('Hello world!');
function Tema()
local style = imgui.GetStyle
local colors = style.Colors
style.WindowPadding = imgui.ImVec2(15, 15)
style.ScrollbarSize = 15
style.FramePadding = imgui.ImVec2(20, 10)
style.FrameRounding = 10
end

imgui.OnInitialize(function()
    imgui.GetIO().IniFilename = nil;
    Tema();
end)

imgui.OnFrame(
    function() return window[0] end,
    function(this)
        local size, res = imgui.ImVec2(450, 250), imgui.ImVec2(getScreenResolution());
        imgui.SetNextWindowPos(imgui.ImVec2(res.x / 2, res.y / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5));
        imgui.SetNextWindowSize(size, imgui.Cond.FirstUseEver);
        if imgui.Begin('test window', window, imgui.WindowFlags.NoCollapse) then
            if (imgui.Checkbox(u8'Статус работы', active)) then
                sampAddChatMessage('Чекбокс ' .. (active[0] and 'включен' or 'выключен'), -1);
            end
            imgui.InputText(u8'Текст', text, ffi.sizeof(text));
            if (imgui.Button(u8'Добавить сообщение в чат')) then
                sampAddChatMessage(u8:decode(ffi.string(text)), -1);
            end
            imgui.End();
        end
    end
)

function main()
    while not isSampAvailable() do wait(0) end
    sampRegisterChatCommand('im', function()
        window[0] = not window[0];
    end)
    while true do
        wait(500)
        if (active[0]) then
            sampAddChatMessage(u8:decode(ffi.string(text)), -1);
        end
    end
end
Что делать?
 
Решение
Дратути, писал код на тему для МимГуй и выдает вечно одну и ту же ошибку хотя без темы она не выдаёт ошибку!

Логи ошибки:
govnoKod(ByKot).lua:12: 'struct ImGuiStyle *()' has no member named 'Colors'
stack traceback:
    ./govnoKod(ByKot).lua:12: in function 'Tema'
    ./govnoKod(ByKot).lua:21: in function 'cb'
    ./lib/mimgui/init.lua:79: in function 'InitializeRenderer'
    ./lib/mimgui/init.lua:87: in function <./lib/mimgui/init.lua:84>
И сам же ГовноКод:
ГовноКод:
local ffi = require('ffi');
local imgui = require('mimgui');
local encoding = require('encoding');
encoding.default = 'CP1251';
local u8 = encoding.UTF8;

local window = imgui.new.bool(false);
local active = imgui.new.bool(false);
local text = imgui.new.char[64]('Hello world!')...

ARMOR

Модератор по раксампу
Модератор
4,933
6,716
Дратути, писал код на тему для МимГуй и выдает вечно одну и ту же ошибку хотя без темы она не выдаёт ошибку!

Логи ошибки:
govnoKod(ByKot).lua:12: 'struct ImGuiStyle *()' has no member named 'Colors'
stack traceback:
    ./govnoKod(ByKot).lua:12: in function 'Tema'
    ./govnoKod(ByKot).lua:21: in function 'cb'
    ./lib/mimgui/init.lua:79: in function 'InitializeRenderer'
    ./lib/mimgui/init.lua:87: in function <./lib/mimgui/init.lua:84>
И сам же ГовноКод:
ГовноКод:
local ffi = require('ffi');
local imgui = require('mimgui');
local encoding = require('encoding');
encoding.default = 'CP1251';
local u8 = encoding.UTF8;

local window = imgui.new.bool(false);
local active = imgui.new.bool(false);
local text = imgui.new.char[64]('Hello world!');
function Tema()
local style = imgui.GetStyle
local colors = style.Colors
style.WindowPadding = imgui.ImVec2(15, 15)
style.ScrollbarSize = 15
style.FramePadding = imgui.ImVec2(20, 10)
style.FrameRounding = 10
end

imgui.OnInitialize(function()
    imgui.GetIO().IniFilename = nil;
    Tema();
end)

imgui.OnFrame(
    function() return window[0] end,
    function(this)
        local size, res = imgui.ImVec2(450, 250), imgui.ImVec2(getScreenResolution());
        imgui.SetNextWindowPos(imgui.ImVec2(res.x / 2, res.y / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5));
        imgui.SetNextWindowSize(size, imgui.Cond.FirstUseEver);
        if imgui.Begin('test window', window, imgui.WindowFlags.NoCollapse) then
            if (imgui.Checkbox(u8'Статус работы', active)) then
                sampAddChatMessage('Чекбокс ' .. (active[0] and 'включен' or 'выключен'), -1);
            end
            imgui.InputText(u8'Текст', text, ffi.sizeof(text));
            if (imgui.Button(u8'Добавить сообщение в чат')) then
                sampAddChatMessage(u8:decode(ffi.string(text)), -1);
            end
            imgui.End();
        end
    end
)

function main()
    while not isSampAvailable() do wait(0) end
    sampRegisterChatCommand('im', function()
        window[0] = not window[0];
    end)
    while true do
        wait(500)
        if (active[0]) then
            sampAddChatMessage(u8:decode(ffi.string(text)), -1);
        end
    end
end
Что делать?
Не imgui.GetStyle, а imgui.GetStyle(). Это метод, а не объект структуры
 
  • Нравится
Реакции: OguzokMax