- 293
- 22
У меня уже есть написан сам скрипт, хочу добавить имгуи меню и еще несколько функций типу слапер, колизия и т.д
local imgui = require('imgui') -- библиотека имгуи
local encoding = require 'encoding' -- библиотека кодировки
encoding.default = 'CP1251' -- устанавливает кодировку
u8 = encoding.UTF8
local window = imgui.ImBool(false) -- переменная для активного окна
function main()
while not isSampAvailable() do wait(200) end
sampRegisterChatCommand('imgui',function() -- по команде /imgui будет включаться/выключаться окно
window.v = not window.v -- присваиваем противоположное значение переменной
end)
while true do
wait(0)
imgui.Process = window.v -- имгуи процесс равен значению переменной
end
end
function imgui.OnDrawFrame()
local x,y = getScreenResolution() -- размер экрана
if window.v then -- если переменная активна
imgui.SetNextWindowPos(imgui.ImVec2(x/3, y/3), imgui.Cond.FirstUseEver) -- установка позиции
imgui.SetNextWindowSize(imgui.ImVec2(500.0, 500.0), imgui.Cond.FirstUseEver) -- установка размера
imgui.Begin('Window Title', window) -- само окно
-- your code
imgui.End() -- конец окна
end
end
а как туда впихнуть свой скрипт?Lua:local imgui = require('imgui') -- библиотека имгуи local encoding = require 'encoding' -- библиотека кодировки encoding.default = 'CP1251' -- устанавливает кодировку u8 = encoding.UTF8 local window = imgui.ImBool(false) -- переменная для активного окна function main() while not isSampAvailable() do wait(200) end sampRegisterChatCommand('imgui',function() -- по команде /imgui будет включаться/выключаться окно window.v = not window.v -- присваиваем противоположное значение переменной end) while true do wait(0) imgui.Process = window.v -- имгуи процесс равен значению переменной end end function imgui.OnDrawFrame() local x,y = getScreenResolution() -- размер экрана if window.v then -- если переменная активна imgui.SetNextWindowPos(imgui.ImVec2(x/3, y/3), imgui.Cond.FirstUseEver) -- установка позиции imgui.SetNextWindowSize(imgui.ImVec2(500.0, 500.0), imgui.Cond.FirstUseEver) -- установка размера imgui.Begin('Window Title', window) -- само окно -- your code imgui.End() -- конец окна end end
Ты не знаешь как впихнуть кусок кода в свой скрипт?.....а как туда впихнуть свой скрипт?
я тоже кста не знаю, можешь обьяснить как?Ты не знаешь как впихнуть кусок кода в свой скрипт?.....
чел если сам не знаешь как вписать так и скажи, нам просто интересно мы так скажем юные начальные скриптеры и я уверен что ты сам не знаешь как вписать скрипт в imgui вот, это все что я хотел сказатьрофл?
ЛОЛ, это сделать проще простого, впихаешь некоторые кусочки кода туда, куда надо + мне надо увидеть ваш код, чтобы впихнуть этот кусок под ваш кодчел если сам не знаешь как вписать так и скажи, нам просто интересно мы так скажем юные начальные скриптеры и я уверен что ты сам не знаешь как вписать скрипт в imgui вот, это все что я хотел сказать
+ мне надо увидеть ваш код, чтобы впихнуть этот кусок под ваш код
тебя не просили пихать туда сам код мы тебя попросили просто обьяснить как это делаеться или если есть тема на бх или видос на ют то кинь ПОЖАЛУЙСТА
бЛОЛ, это сделать проще простого, впихаешь некоторые кусочки кода туда, куда надо + мне надо увидеть ваш код, чтобы впихнуть этот кусок под ваш код
санчез можеш пожалуста сделать карпак дпс со звуком мигалки дпс буду благодаренЛОЛ, это сделать проще простого, впихаешь некоторые кусочки кода туда, куда надо + мне надо увидеть ваш код, чтобы впихнуть этот кусок под ваш код
require 'lib.moonloader'
function main()
while not isSampAvailable() do wait(100) end
while true do
wait(0)
end
end
local imgui = require('imgui') -- библиотека имгуи
local encoding = require 'encoding' -- библиотека кодировки
encoding.default = 'CP1251' -- устанавливает кодировку
u8 = encoding.UTF8
local window = imgui.ImBool(false) -- переменная для активного окна
function main()
while not isSampAvailable() do wait(200) end
while true do
wait(0)
imgui.Process = window.v -- имгуи процесс равен значению переменной
end
end
require 'lib.moonloader'
local imgui = require 'imgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8
local window = imgui.ImBool(false)
function main()
while not isSampAvailable() do wait(100) end
sampRegisterChatCommand('imgui',function() -- по команде /imgui будет включаться/выключаться окно
window.v = not window.v -- присваиваем противоположное значение переменной
end)
while true do
wait(0)
imgui.Process = window.v
end
end
НРП врач с Аризоны, привет)можешь показать мне на примере вот этого:
require "lib.moonloader"
function main()
if not isSampLoaded() or not isSampfuncsLoaded() then return end
while not isSampAvailable() do wait(2000) end
sampRegisterChatCommand('rheal', rheal)
while true do
wait(0)
end
end
function rheal()
local peds = getAllChars()
for _, v in pairs(peds) do
local result, myid = sampGetPlayerIdByCharHandle(playerPed)
local mx, my, mz = getCharCoordinates(playerPed)
local x, y, z = getCharCoordinates(v)
local distance = getDistanceBetweenCoords3d(mx, my, mz, x, y, z)
local result, id = sampGetPlayerIdByCharHandle(v)
if result and id ~= sampGetPlayerIdByCharHandle(PLAYER_PED) and distance < 12.0 then
if id ~= myid then
sampSendChat('/heal '..tonumber(id))
end
end
end
end
как в него пихнуть имгуй, это на бх твой метод помоему или кого то еще вот кароч просто рандом взял и мог бы ты показать как?
можешь показать мне на примере вот этого:
require "lib.moonloader"
function main()
if not isSampLoaded() or not isSampfuncsLoaded() then return end
while not isSampAvailable() do wait(2000) end
sampRegisterChatCommand('rheal', rheal)
while true do
wait(0)
end
end
function rheal()
local peds = getAllChars()
for _, v in pairs(peds) do
local result, myid = sampGetPlayerIdByCharHandle(playerPed)
local mx, my, mz = getCharCoordinates(playerPed)
local x, y, z = getCharCoordinates(v)
local distance = getDistanceBetweenCoords3d(mx, my, mz, x, y, z)
local result, id = sampGetPlayerIdByCharHandle(v)
if result and id ~= sampGetPlayerIdByCharHandle(PLAYER_PED) and distance < 12.0 then
if id ~= myid then
sampSendChat('/heal '..tonumber(id))
end
end
end
end
как в него пихнуть имгуй, это на бх твой метод помоему или кого то еще вот кароч просто рандом взял и мог бы ты показать как?
local imgui = require('imgui')
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8
local window = imgui.ImBool(false)
function main()
while not isSampAvailable() do wait(200) end
imgui.Process = false
window.v = true --show window
while true do
wait(0)
imgui.Process = window.v
end
end
function imgui.OnDrawFrame()
if window.v then
imgui.SetNextWindowPos(imgui.ImVec2(600.0, 250.0), imgui.Cond.FirstUseEver)
imgui.SetNextWindowSize(imgui.ImVec2(260.0, 230.0), imgui.Cond.FirstUseEver)
imgui.Begin('Heal In Radius', window)
imgui.SetCursorPos(imgui.ImVec2(5, 23))
imgui.BeginChild('child:playerlist', imgui.ImVec2(250, 200), true)
local list = getList()
if imgui.Button('Heal All', imgui.ImVec2(250, 20)) then
if list[1] then
for i = 1, #list do sampSendChat('/heal '..i) end
end
end
imgui.Separator()
if list[1] then
for i = 1, #list do
imgui.Text(sampGetPlayerNickname(list[i]))
imgui.SameLine()
imgui.SetCursorPosX(200)
if imgui.Button('Heal##'..tostring(i), imgui.ImVec2(50, 20)) then
sampSendChat('/heal '..i)
end
imgui.Separator()
end
end
imgui.EndChild()
imgui.End()
end
end
function getList()
local t = {}
for k, v in pairs(getAllChars()) do
local myX, myY, myZ = getCharCoordinates(PLAYER_PED)
local x, y, z = getCharCoordinates(v)
if getDistanceBetweenCoords3d(myX, myY, myZ, x, y, z) <= 12 then
_, id = sampGetPlayerIdByCharHandle(v)
if id ~= select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then
table.insert(t, id)
end
end
end
return t
end
спасибо огромное! я уже нашел тему и делаю имгуй окно) только вот вопрос у тебя в скриптах тоже есть имгуй окна например там незнаю где аксы визуал там где ширину и т.д с экраном можно делать имгуи у тебя красивый вопрос, как сделать на подобии такого?Посмотреть вложение 112458
Lua:local imgui = require('imgui') local encoding = require 'encoding' encoding.default = 'CP1251' u8 = encoding.UTF8 local window = imgui.ImBool(false) function main() while not isSampAvailable() do wait(200) end imgui.Process = false window.v = true --show window while true do wait(0) imgui.Process = window.v end end function imgui.OnDrawFrame() if window.v then imgui.SetNextWindowPos(imgui.ImVec2(600.0, 250.0), imgui.Cond.FirstUseEver) imgui.SetNextWindowSize(imgui.ImVec2(260.0, 230.0), imgui.Cond.FirstUseEver) imgui.Begin('Heal In Radius', window) imgui.SetCursorPos(imgui.ImVec2(5, 23)) imgui.BeginChild('child:playerlist', imgui.ImVec2(250, 200), true) local list = getList() if imgui.Button('Heal All', imgui.ImVec2(250, 20)) then if list[1] then for i = 1, #list do sampSendChat('/heal '..i) end end end imgui.Separator() if list[1] then for i = 1, #list do imgui.Text(sampGetPlayerNickname(list[i])) imgui.SameLine() imgui.SetCursorPosX(200) if imgui.Button('Heal##'..tostring(i), imgui.ImVec2(50, 20)) then sampSendChat('/heal '..i) end imgui.Separator() end end imgui.EndChild() imgui.End() end end function getList() local t = {} for k, v in pairs(getAllChars()) do local myX, myY, myZ = getCharCoordinates(PLAYER_PED) local x, y, z = getCharCoordinates(v) if getDistanceBetweenCoords3d(myX, myY, myZ, x, y, z) <= 12 then _, id = sampGetPlayerIdByCharHandle(v) if id ~= select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then table.insert(t, id) end end end return t end