Помогите тупому

SaberBoost

Известный
Автор темы
3
0
Версия MoonLoader
.026-beta
Кароче, делаю скрипты недавно и не знаю что значит код ошибки D:
Я решил попробовать сделать аймгуи скрипт который делает подставу одной кнопкой, типо отправить любой текст в чат. Делал для чайников которым лень прописать опкод в сампфункс.
Код ошибки -
[ML] (error) Podstava: E:\Games\SborkaS4itami\moonloader\podstava.lua:24: attempt to index global 'imgui' (a nil value)
stack traceback:
E:\Games\SborkaS4itami\moonloader\podstava.lua:24: in main chunk
[ML] (error) Podstava: Script died due to an error. (10377ECC)

Код аймгуи скопировал с Moon ImGui, не изменяя его закинул для теста и ничего не сработало:(
Жду вашего ответа.

Код:
script_name("Podstava")
script_author("SaberBoost")

require 'lib.moonloader'
local keys = require 'vkeys'
local keys = require 'imgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

function main()
    sampAddChatMessage(u8'{FFD700}[Podstava]{FFFFFF} Скрипт загружен!',-1)
   imgui.Process = true
if not isSampfuncsLoaded() or not isSampLoaded() then
    return
end
while not isSampAvailable() do
    wait(0)
end

sampRegisterChatCommand(pds, imgui.podstava)
end

function imgui.podstava()
local test_text_buffer = imgui.ImBuffer(256)
  imgui.Begin(u8'Основное окно') -- обратите внимание на u8 перед текстом, это и есть преобразование кодировки
  if imgui.InputText(u8'Вводить текст сюда', test_text_buffer) then -- условие будет срабатывать при изменении текста
    -- здесь первая строка передаётся по-обычному, без u8
    -- но введённый текст при выводе преобразуется обратно из UTF-8 в кодировку по умолчанию, т.е. в Windows-1251
    print('Введённый текст:', u8:decode(test_text_buffer.v)) -- при работе с ImBuffer тоже не забывайте о .v
  end
  imgui.Text(u8'Введённый текст: ' .. test_text_buffer.v) -- но тут обратное преобразование введённого текста не требуется, т.к. текст буфера и так в UTF-8
  imgui.Text(u8(string.format('Текущая дата: %s', os.date()))) -- u8 - это функция, её можно использовать и с неконстантными строками
  imgui.End()
end