Ошибка с ColorEdit4

CaJlaT

07.11.2024 14:55
Автор темы
Модератор
2,832
2,667
Версия MoonLoader
.026-beta
В общем, только на одной сборке работает нормально функция ColorEdit4 в Imgui...
Сначала я столкнулся с этой проблемой в своём скрипте, потом ради теста скачал colorpicker и там тоже не работает....

Log:
[ML] (error) colorpicker: E:\GTA 120K BY DAPO SHOW\moonloader\colorpicker.lua:41: stack index 2, expected userdata, received sol.ImVec4: value at this index does not properly reflect the desired type (bad argument into 'bool(const char*, ImArray<float,4>*, sol::optional<int>)')
stack traceback:
    [C]: in function 'ColorEdit4'
    E:\GTA 120K BY DAPO SHOW\moonloader\colorpicker.lua:41: in function 'OnDrawFrame'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1378: in function <E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1367>
[ML] (error) colorpicker: Script died due to an error. (0BD38C44)
[ML] (error) test.lua: E:\GTA 120K BY DAPO SHOW\moonloader\test.lua:128: stack index 2, expected userdata, received sol.ImVec4: value at this index does not properly reflect the desired type (bad argument into 'bool(const char*, ImArray<float,4>*, sol::optional<int>)')
stack traceback:
    [C]: in function 'ColorEdit4'
    E:\GTA 120K BY DAPO SHOW\moonloader\test.lua:128: in function 'OnDrawFrame'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1378: in function <E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1367>
[ML] (error) test.lua: Script died due to an error. (0BD38624)
Я уже с той сборки перекидывал мун полностью, не помогает. Переустанавливал мун с установщика, не помогает....
Пожалуйста, помогите
 

Вложения

  • colorpicker.lua
    4.7 KB · Просмотры: 47

CaJlaT

07.11.2024 14:55
Автор темы
Модератор
2,832
2,667
Русским английским же языков написано. Неправильные аргументы. Эта функция принимает не ImVec4, а ImFloat4
Что тогда тут не так? -_-

Log:
[ML] (error) BulletTrack.lua: E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:128: stack index 2, expected userdata, received sol.ImVec4: value at this index does not properly reflect the desired type (bad argument into 'bool(const char*, ImArray<float,4>*, sol::optional<int>)')
stack traceback:
    [C]: in function 'ColorEdit4'
    E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:128: in function 'OnDrawFrame'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1378: in function <E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1367>
[ML] (error) BulletTrack.lua: Script died due to an error. (0BD38624)

Строчка, на которую жалуется:

Код:
local BulletColorPed = imgui.ImColor(0, 0, 0, 255):GetFloat4()

if imgui.ColorEdit4(u8("Цвет поподания по игроку"), BulletColorPed) then
 

AnWu

https://t.me/anwublog
Всефорумный модератор
4,771
5,376
Что тогда тут не так? -_-

Log:
[ML] (error) BulletTrack.lua: E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:128: stack index 2, expected userdata, received sol.ImVec4: value at this index does not properly reflect the desired type (bad argument into 'bool(const char*, ImArray<float,4>*, sol::optional<int>)')
stack traceback:
    [C]: in function 'ColorEdit4'
    E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:128: in function 'OnDrawFrame'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1378: in function <E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1367>
[ML] (error) BulletTrack.lua: Script died due to an error. (0BD38624)

Строчка, на которую жалуется:

Код:
local BulletColorPed = imgui.ImColor(0, 0, 0, 255):GetFloat4()

if imgui.ColorEdit4(u8("Цвет поподания по игроку"), BulletColorPed) then
файл кидай. по двум строчкам не сказать что не так
 

AnWu

https://t.me/anwublog
Всефорумный модератор
4,771
5,376
вроде эта шляпа из за разных версий имгуи, у меня что то подобное было(с редактором цветов, каким именно не помню) на старой версии имгуи работает стабильно, а на новой не хочет
в новой включена проверка типов просто. не успел вчера. в 10 домой ток приехал. сегодня после работы
 

CaJlaT

07.11.2024 14:55
Автор темы
Модератор
2,832
2,667
вроде эта шляпа из за разных версий имгуи, у меня что то подобное было(с редактором цветов, каким именно не помню) на старой версии имгуи работает стабильно, а на новой не хочет
Так я перекидывал либы с той сборки, где работает... Это не помогло
 

AnWu

https://t.me/anwublog
Всефорумный модератор
4,771
5,376
Так я перекидывал либы с той сборки, где работает... Это не помогло
Короче. GetFloat4() возвращает 4 значения, а не ImFloat4. Тебе нужен именно ImFloat4 для работы с ColorEdit.

 
  • Нравится
Реакции: CaJlaT

CaJlaT

07.11.2024 14:55
Автор темы
Модератор
2,832
2,667
Короче. GetFloat4() возвращает 4 значения, а не ImFloat4. Тебе нужен именно ImFloat4 для работы с ColorEdit.

1:
Lua:
local BulletColorPed = imgui.ImFloat4(0, 0, 0, 255)

if imgui.ColorEdit4(u8("Цвет поподания по игроку"), BulletColorPed) then
Log:
[ML] (error) BulletTrack.lua: E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:128: stack index 2, expected userdata, received sol.ImVec4: value at this index does not properly reflect the desired type (bad argument into 'bool(const char*, ImArray<float,4>*, sol::optional<int>)')
stack traceback:
    [C]: in function 'ColorEdit4'
    E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:128: in function 'OnDrawFrame'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1378: in function <E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1367>
[ML] (error) BulletTrack.lua: Script died due to an error. (0BD4B644)
2:

Lua:
local BulletColorPed = imgui.ImColor(imgui.ImFloat4(0, 0, 0, 255))

if imgui.ColorEdit4(u8("Цвет поподания по игроку"), BulletColorPed) then
Log:
[ML] (error) BulletTrack.lua: E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:346: sol: no matching function call takes this number of arguments and the specified types
stack traceback:
    [C]: in function 'ImVec4'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:346: in function 'ImColor'
    E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:21: in main chunk
[ML] (error) BulletTrack.lua: Script died due to an error. (0BD4B644)
 

AnWu

https://t.me/anwublog
Всефорумный модератор
4,771
5,376
1:
Lua:
local BulletColorPed = imgui.ImFloat4(0, 0, 0, 255)

if imgui.ColorEdit4(u8("Цвет поподания по игроку"), BulletColorPed) then
Log:
[ML] (error) BulletTrack.lua: E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:128: stack index 2, expected userdata, received sol.ImVec4: value at this index does not properly reflect the desired type (bad argument into 'bool(const char*, ImArray<float,4>*, sol::optional<int>)')
stack traceback:
    [C]: in function 'ColorEdit4'
    E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:128: in function 'OnDrawFrame'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1378: in function <E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1367>
[ML] (error) BulletTrack.lua: Script died due to an error. (0BD4B644)
2:

Lua:
local BulletColorPed = imgui.ImColor(imgui.ImFloat4(0, 0, 0, 255))

if imgui.ColorEdit4(u8("Цвет поподания по игроку"), BulletColorPed) then
Log:
[ML] (error) BulletTrack.lua: E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:346: sol: no matching function call takes this number of arguments and the specified types
stack traceback:
    [C]: in function 'ImVec4'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:346: in function 'ImColor'
    E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:21: in main chunk
[ML] (error) BulletTrack.lua: Script died due to an error. (0BD4B644)
первый верный, у тебя при чтении из файла переназначение идет. смотри код
 

CaJlaT

07.11.2024 14:55
Автор темы
Модератор
2,832
2,667
первый верный, у тебя при чтении из файла переназначение идет. смотри код
Таааак, теперь гуи показывает, но когда меняю цвет - скрип крашится

Log:
[ML] (error) BulletTrack.lua: E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:346: sol: no matching function call takes this number of arguments and the specified types
stack traceback:
    [C]: in function 'ImVec4'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:346: in function 'ImColor'
    E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:143: in function 'OnDrawFrame'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1378: in function <E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1367>
[ML] (error) BulletTrack.lua: Script died due to an error. (0C3BE144)
А ещё значения в гуи становятся дикими...
1584516525501.png
 

Вложения

  • BulletTrack.lua
    13.4 KB · Просмотры: 47

AnWu

https://t.me/anwublog
Всефорумный модератор
4,771
5,376
Таааак, теперь гуи показывает, но когда меняю цвет - скрип крашится

Log:
[ML] (error) BulletTrack.lua: E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:346: sol: no matching function call takes this number of arguments and the specified types
stack traceback:
    [C]: in function 'ImVec4'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:346: in function 'ImColor'
    E:\GTA 120K BY DAPO SHOW\moonloader\BulletTrack.lua:143: in function 'OnDrawFrame'
    E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1378: in function <E:\GTA 120K BY DAPO SHOW\moonloader\lib\imgui.lua:1367>
[ML] (error) BulletTrack.lua: Script died due to an error. (0C3BE144)
А ещё значения в гуи становятся дикими...
Посмотреть вложение 51383
Lua:
if imgui.ColorEdit4(u8("Цвет поподания по игроку"), BulletColorPed) then
    rgba = imgui.ImColor(BulletColorPed.v[1], BulletColorPed.v[2], BulletColorPed.v[3], BulletColorPed.v[4])
    r, g, b, a = rgba:GetRGBA()
    mainIni.Other.ColorPed = join_argb(a, r, g, b)
    Color[2] = mainIni.Other.ColorPed
end
 
  • Нравится
Реакции: CaJlaT

CaJlaT

07.11.2024 14:55
Автор темы
Модератор
2,832
2,667
Lua:
if imgui.ColorEdit4(u8("Цвет поподания по игроку"), BulletColorPed) then
    rgba = imgui.ImColor(BulletColorPed.v[1], BulletColorPed.v[2], BulletColorPed.v[3], BulletColorPed.v[4])
    r, g, b, a = rgba:GetRGBA()
    mainIni.Other.ColorPed = join_argb(a, r, g, b)
    Color[2] = mainIni.Other.ColorPed
end
Спасибо, но как пофиксить показатели в гуи? Если их подёргать, то всё норм.... Но глаза режет, когда первый раз запускаешь скрипт...
1584544491245.png

Настроил альфу на попадания в объект... сохранилось, да, но не отображает линий... перезапустил скрипт, отображает 255, когда на остальных 6502
1584544922015.png
 
Последнее редактирование: