- 2
- 0
Есть бар бот для аризоны, там что бы кинуть ставку надо прописать команды в чат, а на родине что бы кинуть ставку человеку надо нажать F1-Орел, F2-Решка, и потом в текстдраве выбрать ник человека, затем указать сумму так же в текстдраве, помогите переделать скрипт с команды на автоматическое нажатие кнопки, поиска человека среди ников в текстдраве, и автоматически вписывать сумму ставки. Спасибо, если что ссылка на скрипт: СсылОчка
Весь скрипт:
local event = require('lib.samp.events')
local imgui = require ('imgui')
local encoding = require "encoding" --К переменным
encoding.default = 'CP1251'
u8 = encoding.UTF8 -- перед main можешь пихнуть
stat = 0
delay = false
local activ = imgui.ImBool(false)
local stavka = imgui.ImInt(10000)
local rb = imgui.ImInt(1)
local stavkawin = imgui.ImInt(10000)
local bar = {0}
imgui.SwitchContext()
local style = imgui.GetStyle()
local colors = style.Colors
local clr = imgui.Col
local ImVec4 = imgui.ImVec4
style.WindowPadding = imgui.ImVec2(9, 5)
style.WindowRounding = 10
style.ChildWindowRounding = 10
style.FramePadding = imgui.ImVec2(5, 3)
style.FrameRounding = 6.0
style.ItemSpacing = imgui.ImVec2(9.0, 3.0)
style.ItemInnerSpacing = imgui.ImVec2(9.0, 3.0)
style.IndentSpacing = 21
style.ScrollbarSize = 6.0
style.ScrollbarRounding = 13
style.GrabMinSize = 17.0
style.GrabRounding = 16.0
style.WindowTitleAlign = imgui.ImVec2(0.5, 0.5)
style.ButtonTextAlign = imgui.ImVec2(0.5, 0.5)
colors[clr.Text] = ImVec4(0.90, 0.90, 0.90, 1.00)
colors[clr.TextDisabled] = ImVec4(1.00, 1.00, 1.00, 1.00)
colors[clr.WindowBg] = ImVec4(0.00, 0.00, 0.00, 1.00)
colors[clr.ChildWindowBg] = ImVec4(0.00, 0.00, 0.00, 1.00)
colors[clr.PopupBg] = ImVec4(0.00, 0.00, 0.00, 1.00)
colors[clr.Border] = ImVec4(0.82, 0.77, 0.78, 1.00)
colors[clr.BorderShadow] = ImVec4(0.35, 0.35, 0.35, 0.66)
colors[clr.FrameBg] = ImVec4(1.00, 1.00, 1.00, 0.28)
colors[clr.FrameBgHovered] = ImVec4(0.68, 0.68, 0.68, 0.67)
colors[clr.FrameBgActive] = ImVec4(0.79, 0.73, 0.73, 0.62)
colors[clr.TitleBg] = ImVec4(0.00, 0.00, 0.00, 1.00)
colors[clr.TitleBgActive] = ImVec4(0.46, 0.46, 0.46, 1.00)
colors[clr.TitleBgCollapsed] = ImVec4(0.00, 0.00, 0.00, 1.00)
colors[clr.MenuBarBg] = ImVec4(0.00, 0.00, 0.00, 0.80)
colors[clr.ScrollbarBg] = ImVec4(0.00, 0.00, 0.00, 0.60)
colors[clr.ScrollbarGrab] = ImVec4(1.00, 1.00, 1.00, 0.87)
colors[clr.ScrollbarGrabHovered] = ImVec4(1.00, 1.00, 1.00, 0.79)
colors[clr.ScrollbarGrabActive] = ImVec4(0.80, 0.50, 0.50, 0.40)
colors[clr.ComboBg] = ImVec4(0.24, 0.24, 0.24, 0.99)
colors[clr.CheckMark] = ImVec4(0.99, 0.99, 0.99, 0.52)
colors[clr.SliderGrab] = ImVec4(1.00, 1.00, 1.00, 0.42)
colors[clr.SliderGrabActive] = ImVec4(0.76, 0.76, 0.76, 1.00)
colors[clr.Button] = ImVec4(0.51, 0.51, 0.51, 0.60)
colors[clr.ButtonHovered] = ImVec4(0.68, 0.68, 0.68, 1.00)
colors[clr.ButtonActive] = ImVec4(0.67, 0.67, 0.67, 1.00)
colors[clr.Header] = ImVec4(0.72, 0.72, 0.72, 0.54)
colors[clr.HeaderHovered] = ImVec4(0.92, 0.92, 0.95, 0.77)
colors[clr.HeaderActive] = ImVec4(0.82, 0.82, 0.82, 0.80)
colors[clr.Separator] = ImVec4(0.73, 0.73, 0.73, 1.00)
colors[clr.SeparatorHovered] = ImVec4(0.81, 0.81, 0.81, 1.00)
colors[clr.SeparatorActive] = ImVec4(0.74, 0.74, 0.74, 1.00)
colors[clr.ResizeGrip] = ImVec4(0.80, 0.80, 0.80, 0.30)
colors[clr.ResizeGripHovered] = ImVec4(0.95, 0.95, 0.95, 0.60)
colors[clr.ResizeGripActive] = ImVec4(1.00, 1.00, 1.00, 0.90)
colors[clr.CloseButton] = ImVec4(0.45, 0.45, 0.45, 0.50)
colors[clr.CloseButtonHovered] = ImVec4(0.70, 0.70, 0.90, 0.60)
colors[clr.CloseButtonActive] = ImVec4(0.70, 0.70, 0.70, 1.00)
colors[clr.PlotLines] = ImVec4(1.00, 1.00, 1.00, 1.00)
colors[clr.PlotLinesHovered] = ImVec4(1.00, 1.00, 1.00, 1.00)
colors[clr.PlotHistogram] = ImVec4(1.00, 1.00, 1.00, 1.00)
colors[clr.PlotHistogramHovered] = ImVec4(1.00, 1.00, 1.00, 1.00)
colors[clr.TextSelectedBg] = ImVec4(1.00, 1.00, 1.00, 0.35)
colors[clr.ModalWindowDarkening] = ImVec4(0.88, 0.88, 0.88, 0.35)
function main() --this function will start when script load
while not isSampAvailable() do wait(0) end --wait for samp load
sampRegisterChatCommand('barbot', function()
activ.v = not activ.v
imgui.Process = activ.v
sampAddChatMessage('{A30008}BARBOT by Scrix {FF000D}'..(activ.v and '[Включен]' or '[Выключен]'), 0x580004)end)
while true do
wait(0)
imgui.Process = activ.v
if activ.v == true then
if stavka.v >= 1000001 then
stavka.v = 1000000
end
if delay == true then
wait(30000)
delay = false
end
end
end
end
function imgui.OnDrawFrame()
imgui.Begin('BAR', activ, imgui.WindowFlags.NoTitleBar, imgui.SetNextWindowSize(imgui.ImVec2(455, 160), imgui.Cond.FirstUseEver))
imgui.Text('BARBOT version 22.04.21')
imgui.PlotLines(u8'Статистика', bar)
imgui.Text(u8'След. ставка: '..stavka.v)
imgui.SliderInt(u8'Изменить след. ставку ', stavka, 1, 1000000)
imgui.SliderInt(u8'Ставка при победе ', stavkawin, 1, 1000000)
imgui.RadioButton(u8'Выкл', rb, 1)
imgui.SameLine()
imgui.RadioButton(u8'Автопринятие', rb, 2)
imgui.SameLine()
imgui.RadioButton(u8'Автоотклонение', rb, 3)
imgui.End()
end
function event.onServerMessage(color, text)
if activ.v == true and delay == false then
if string.match(text, "Победил (.+) - орёл.") then
nameplayer = string.match(text, "Победил (.+) - орёл.")
nick = string.gsub(nameplayer, "-", "")
sampSendChat("/reshka "..nick.." "..stavka.v)
delay = true
end
if string.match(text, "Победил (.+) - решка.") then
nameplayer = string.match(text, "Победил (.+) - решка.")
nick = string.gsub(nameplayer, "-", "")
sampSendChat("/orel "..nick.." "..stavka.v)
delay = true
end
end
end
function event.onDisplayGameText(style, time, textt)
if activ.v == true then
if string.match(textt, "You Lose!") then
if stavka.v <= 1000000 then
stavka.v = stavka.v * 2
stat = stat - 1
table.insert(bar, stat)
end
end
if string.match(textt, "You Win!") then
stavka.v = stavkawin.v
stat = stat + 1
table.insert(bar, stat)
end
end
end
function event.onShowDialog(dialogId, style, title, button1, button2, text)
if activ.v == true then
if string.match(title, 'Орёл и Решка') then
if rb.v == 2 then
sampSendDialogResponse(dialogId, 1, -1, -1)
return false
elseif rb.v == 3 then
sampSendDialogResponse(dialogId, 0, -1, -1)
return false
end
end
end
end