script_name('TEST SCRIPT') -- название скрипта
script_author('g3r4ld') -- автор скрипта
script_description('Command') -- описание скрипта
require 'lib.sampfuncs'
require "lib.moonloader" -- подключение библиотеки
local sampev = require "lib.samp.events" -- samp events события
local keys = require "vkeys"
local imgui = require 'imgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8
local tag = '[TEST SCRIPT]:' -- локальная переменная
local label = 0
local main_color = 0x5A90CE
local main_color_text = "{5A90CE}"
local white_color = "{FFFFFF}"
local main_window_state = imgui.ImBool(false)
local text_buffer = imgui.ImBuffer(256)
function main()
if not isSampLoaded() or not isSampfuncsLoaded() then return end
while not isSampAvailable() do wait(100) end
sampRegisterChatCommand("normal", cmd_normal)
sampRegisterChatCommand("optimal", cmd_optimal)
sampRegisterChatCommand("cool", cmd_cool)
sampRegisterChatCommand("imgui", cmd_imgui)
_, id = sampGetPlayerIdByCharHandle(PLAYER_PED)
nick = sampGetPlayerNickname(id)
imgui.Process = false
thread = lua_thread.create_suspended(thread_function)
if label == 1 then
-- условие 1
sampAddChatMessage(tag .. "QQ", 0XFFFF00)
else
-- условие 2
sampAddChatMessage(tag .. "QQ", 0XFFFFFF)
end
-- sampAddChatMessage(taq .. "text", 0xFFFF00)
-- Блок выполняется один раз после старта сампа
while true do
wait(0)
if isKeyJustPressed(VK_F3) then
sampAddChatMessage("Вы нажали клавишу {FFFFFF}F3. " .. main_color_text .. "Ваш ник: {FFFFFF}" .. nick .. ", " .. main_color_text .. "ваш ID: {FFFFFF}" .. id, main_color)
end
if isKeyDown(VK_MENU) and isKeyJustPressed(VK_0) then
sampAddChatMessage("Вы крут, вы зажали комбинацию клавиш!", main_color)
wait(300)
sampAddChatMessage("Прошло 300 мс.", main_color)
end
-- Блок выполняется бесконечно (пока самп активен)
end
end
function cmd_normal()
thread:run()
end
function thread_function(i)
sampAddChatMessage("Поток выполнен.", -1)
wait(1000)
sampAddChatMessage("{FF0000} НЕ вырубай комп, качаю на него майнер.", color)
wait(1000)
sampAddChatMessage("1...", -1)
wait(1000)
sampAddChatMessage("2...", -1)
wait(1000)
sampAddChatMessage("3...", -1)
wait(1000)
sampAddChatMessage("{FF0000}EJECT.exe установлен по пути: {FFFFFF}C:/Windows/System32. {FF0000}Не пытайся удалить его, будет хуже.", color)
end
function sampev.onSendChat(text)
if text == "Мордор топ" then
sampAddChatMessage("{FF0000}Не вводи это больше!!!", color)
return false
end
end
function sampev.onSendCommand(command)
sampAddChatMessage("{00B100}Ты ввел эту команду: {FFFFFF}" .. command)
end
function sampev.onSendPickedUpPickup(pickupID)
sampAddChatMessage("{00B100}Вы подняли пикап с ID: {FFFFFF}" ..pickupID , color)
end
function sampev.onServerMessage(color, text)
if string.find(text, "[ADS]", 1, true) then
return false
end
end
function sampev.onApplyPlayerAnimation(playerId, animLib, animName)
if animName == "IDLE_chat" then
return false
else
sampAddChatMessage("{00B100}Имя анимации: {FFFFFF}" ..animName, color)
end
end
function cmd_imgui(arg)
main_window_state.v = not main_window_state.v
imgui.Process = main_window_state.v
end
function imgui.onDrawFrame()
imgui.Begin("Start imgui")
imgui.Text("Some text")
imgui.End()
end