2 imgui вопроса

IlyaHL2

Активный
Автор темы
210
53
Версия MoonLoader
.026-beta
1 почему не пропадает курсор, он просто моргает но не исчезает
2 как сделать так чтобы не моргал а то заеб, даже так сделал, не помогло
p.s. весь код

Lua:
local imgui = require('imgui')
local fa = require('fAwesome5')

local encoding = require('encoding')
encoding.default = 'CP1251'
u8 = encoding.UTF8

function imgui.OnDrawFrame()
    imgui.SetNextWindowPos(imgui.ImVec2(1007,375), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
    imgui.Begin('##',nil,imgui.WindowFlags.NoTitleBar+imgui.WindowFlags.AlwaysAutoResize)
        imgui.Text(u8( ('Health: %d\n'):format(isCharInAnyCar(playerPed) and getCarHealth(storeCarCharIsInNoSave(playerPed)) or getCharHealth(playerPed)) ))
    imgui.End()
end

function main()
    imgui.Process = true
    while true do wait(0)
        if not(isSampfuncsConsoleActive() or sampIsChatInputActive()) and imgui.Process then
            imgui.showCursor = false
            showCursor(false)
        end
    end
end
 
Решение
С таким мусором курсор работает нормально

mimgui govno:
local imgui = require 'imgui'

function imgui.OnDrawFrame()
    imgui.ShowCursor = false
    imgui.SetNextWindowPos(imgui.ImVec2(1007,375), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.Begin('##',nil,imgui.WindowFlags.NoTitleBar+imgui.WindowFlags.AlwaysAutoResize)
        imgui.Text(u8( ('Health: %d\n'):format(isCharInAnyCar(playerPed) and getCarHealth(storeCarCharIsInNoSave(playerPed)) or getCharHealth(playerPed)) ))
    imgui.End()
end

function main()
    imgui.Process = true
    while true do wait(0) end
end

Что работает без main?
Imgui тоже без main работает.
1672676048343.png

EX4MPLYCH

Участник
42
5
У тебя случаем не разные курсоры одновременно рендерит? Один системный(imgui-шный) а другой игровой(черный от гта)?
Например в main есть рендер sampSetCursorPos() или sampShowCursor()(не уверен на счет того что правильно написал). А в imgui тоже рендер курсора только своего. Недавно такая же проблема была. Только вместе с этим самповский курсор из-за sampSetCursorPos() приклеивался к центру экрана в диалогах.


Это еще зачем?
У меня и так все норм, ток курсор заеб мигать
Это он затем, чтобы когда ты закрыл окно имгуи - процесс имгуи прекращался и все что ты там вписал

Да и вообще, почему выключение курсора у тебя в бесконечном цикле? Сделай просто переключение окна через команду вне бесконечного цикла. Или же на кнопку только уже внутри бесконечного цикла
 
Последнее редактирование:
  • Эм
Реакции: IlyaHL2

IlyaHL2

Активный
Автор темы
210
53
Да и вообще, почему выключение курсора у тебя в бесконечном цикле? Сделай просто переключение окна через команду вне бесконечного цикла. Или же на кнопку только уже внутри бесконечного цикла
Потому что только так курсор пропадает но не исчезает
 

Sadow

Известный
1,436
585
Lua:
local imgui = require("mimgui")
local fa = require("fawesome6") -- Если надумаешь перейти на мимгуи то используй 6 версию

local encoding = require('encoding')
encoding.default = 'CP1251'
u8 = encoding.UTF8

local imguiWindow = imgui.new.bool(true)

local newFrame = imgui.OnFrame(
    function() return ImguiWindow[0] end,
    function(self)
    self.HideCursor = true
    imgui.SetNextWindowPos(imgui.ImVec2(1007, 375), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
    imgui.Begin('##', nil, imgui.WindowFlags.NoTitleBar + imgui.WindowFlags.AlwaysAutoResize)
    imgui.Text(u8( ('Health: %d\n'):format(isCharInAnyCar(playerPed) and getCarHealth(storeCarCharIsInNoSave(playerPed)) or getCharHealth(playerPed)) ))
    imgui.End()
end)
Мимгуи лучше будет. И он более прост в обучении чем имгуи
 
  • Эм
Реакции: IlyaHL2

EX4MPLYCH

Участник
42
5
Видно иного варианта нету как юзать мимгуй ибо мимгуйДрочеры не отстанут + нету идей по исправлению дефекта

Тогда еще вопрос, почему эта... Работает без main?
mimgui(рот его ебал) норм тема. Тоже не хотел. Но пришлось
 
  • Нравится
Реакции: IlyaHL2

Sadow

Известный
1,436
585
окно, хрен ли еще там работает без main
А зачем main? В том то и прикол мимгуи что ненадо ничего лишнего писать) Достаточно зарегистрировать переменную и присвоить ей true/false
 

purpleee

Активный
180
80
С таким мусором курсор работает нормально

mimgui govno:
local imgui = require 'imgui'

function imgui.OnDrawFrame()
    imgui.ShowCursor = false
    imgui.SetNextWindowPos(imgui.ImVec2(1007,375), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.Begin('##',nil,imgui.WindowFlags.NoTitleBar+imgui.WindowFlags.AlwaysAutoResize)
        imgui.Text(u8( ('Health: %d\n'):format(isCharInAnyCar(playerPed) and getCarHealth(storeCarCharIsInNoSave(playerPed)) or getCharHealth(playerPed)) ))
    imgui.End()
end

function main()
    imgui.Process = true
    while true do wait(0) end
end

Что работает без main?
Imgui тоже без main работает.
1672676048343.png
 
  • Вау
Реакции: IlyaHL2

Sadow

Известный
1,436
585
С таким мусором курсор работает нормально

mimgui govno:
local imgui = require 'imgui'

function imgui.OnDrawFrame()
    imgui.ShowCursor = false
    imgui.SetNextWindowPos(imgui.ImVec2(1007,375), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.Begin('##',nil,imgui.WindowFlags.NoTitleBar+imgui.WindowFlags.AlwaysAutoResize)
        imgui.Text(u8( ('Health: %d\n'):format(isCharInAnyCar(playerPed) and getCarHealth(storeCarCharIsInNoSave(playerPed)) or getCharHealth(playerPed)) ))
    imgui.End()
end

function main()
    imgui.Process = true
    while true do wait(0) end
end


Imgui тоже без main работает.
Посмотреть вложение 184121
Mimgui лучше Imgui. Мне его использовать приятнее чем имгуи
 
  • Bug
  • Эм
Реакции: IlyaHL2 и qdIbp

purpleee

Активный
180
80
Mimgui лучше Imgui. Мне его использовать приятнее чем имгуи
Ну тебе приятнее ты и используй. Заставлять человека переходить на него? Нуу...

Самая банальный мусор мимгуи - ОШИБКИ. Если ты сделаешь ошибку в фрейме - ты словишь краш, если переменная в фрейме будет не того типа - краш...
 
  • Нравится
Реакции: qdIbp

Sadow

Известный
1,436
585
Ну тебе приятнее ты и используй. Заставлять человека переходить на него? Нуу...

Самая банальный мусор мимгуи - ОШИБКИ. Если ты сделаешь ошибку в фрейме - ты словишь краш, если переменная в фрейме будет не того типа - краш...
Меня не крашит при ошибке. К тому же как можно перепутать переменные?

Я кстати его не заставляю. Я ему это предлагаю сделать. Я это сделал недавно и не пожалел. Теперь у меня не болят глаза от куча мусора для имгуи
 

purpleee

Активный
180
80
Меня не крашит при ошибке. К тому же как можно перепутать переменные?
Ну простой пример - AddTextFontPtr. Довольно вкусная функция из имгуи...

Самый первый параментр данной функции идёт FONTS. Данный мусор не принимает fonts из MIMGUI. Оно будет жрать NIL. Если ты туда попытаешь запихнуть фонтс - краш.

Выше описанный мусор фиксится, но костыли...костыли...костыли...

Меня не крашит при ошибке.
Правда? Попробуй отрисовать текст с использованиям u8 без его подключения
 

chapo

🫡 В армии с 17.10.2023. В ЛС НЕ ОТВЕЧАЮ
Друг
8,769
11,213
Самая банальный мусор мимгуи - ОШИБКИ. Если ты сделаешь ошибку в фрейме - ты словишь краш.
А теперь попробуй не закрыть imgui.PushStyleColor в имгуи и мимгуи :)
если переменная в фрейме будет не того типа - краш...
как скажешь
1672681396161.png

Ну простой пример - AddTextFontPtr. Довольно вкусная функция из имгуи...
Самый первый параментр данной функции идёт FONTS. Данный мусор не принимает fonts из MIMGUI. Оно будет жрать NIL. Если ты туда попытаешь запихнуть фонтс - краш.
все нормльно работает
1672680045664.png

1672680176205.png

1672680164512.png

Правда? Попробуй отрисовать текст с использованиям u8 без его подключения
1672681126682.png