local themes = import 'lib/imgui_themes.lua'
local tag = '{3498DB}[Хелпер Похиток]: '
local color = 0x3498DB--0xFF69B4
local red_color = 0xff0040
local berserk = 1
local imgui = require 'imgui'
local cbuffer = imgui.ImInt(0)
local buffer1 = imgui.ImBuffer(256)
local buffer2 = imgui.ImBuffer(256)
local buffer3 = imgui.ImBuffer(256)
local buffer4 = imgui.ImBuffer(256)
local buffer5 = imgui.ImBuffer(256)
local combobombo1 = imgui.ImInt(0)
local combobombo = imgui.ImInt(0)
font2 = renderCreateFont('Arial', 8, 5)
ftext = function(text)
sampAddChatMessage('[Хелпер Похиток]: {ffffff}'..text,0x3498DB)
end
local inicfg = require 'inicfg'
local directIni = "moonloader\\config\\px.ini"
local mainIni = inicfg.load({
hotkey = {
bindr = encodeJson({ VK_R, VK_ALT }),
bindrb = encodeJson({ VK_Q, VK_ALT }),
bindst = encodeJson({VK_O,VK_ALT}),
bindt = encodeJson({VK_A,VK_ALT})
},
itheme = {
theme = encodeJson({themes.SwitchColorTheme(0)}),
},
trebovania = {
treb1 = encodeJson({buffer1.v}),
treb2 = encodeJson({buffer2.v}),
treb3 = encodeJson({buffer3.v}),
treb4 = encodeJson({buffer4.v}),
treb5 = encodeJson({buffer5.v}),
tclist = encodeJson(cbuffer.v)
}
},directIni)
require 'lib.moonloader'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8
local rkeys = require 'rkeys'
imgui.HotKey = require('imgui_addons').HotKey
imgui.ToggleButton = require('imgui_addons').ToggleButton
local sampev = require 'lib.samp.events'
local tLastKeys = {}
local imBool = imgui.ImBool(false)
local ThemeMenu = {
v = decodeJson(mainIni.itheme.theme)
}
local TrebMenu1 = {
v = decodeJson(mainIni.trebovania.treb1)
}
local TrebMenu2 = {
v = decodeJson(mainIni.trebovania.treb2)
}
local TrebMenu3 = {
v = decodeJson(mainIni.trebovania.treb3)
}
local TrebMenu4 = {
v = decodeJson(mainIni.trebovania.treb4)
}
local TrebMenu5 = {
v = decodeJson(mainIni.trebovania.treb5)
}
local ActiveClockMenu = {
v = decodeJson(mainIni.hotkey.bindr)
}
local ActiveClockMenu1 = {
v = decodeJson(mainIni.hotkey.bindrb)
}
local ActiveClockMenu2 = {
v = decodeJson(mainIni.hotkey.bindst)
}
local ActiveClockMenu3 = {
v = decodeJson(mainIni.hotkey.bindt)
}
if not doesFileExist('moonloader\\px.ini') then inicfg.save(mainIni,'px.ini') end
local bt = 0
local rt =2
local pt = 6
local bt = 5
local key = 20000
local agent_window_state = imgui.ImBool(false)
local rasc_window_state = imgui.ImBool(false)
local poxititel_window_state = imgui.ImBool(false)
local extra_window_state = imgui.ImBool(false)
local extra_extra_window_state = imgui.ImBool(false)
local text_buffer_name = imgui.ImBuffer(256)
local min = imgui.ImInt(10)
local timer = 0
local priezd = imgui.ImBuffer(64)
local priezds = imgui.ImBuffer(64)
local combo = imgui.ImInt(0)
local combo1 = imgui.ImInt(0)
local combo2 = imgui.ImInt(0)
local combo3 = imgui.ImInt(0)
local combo4 = imgui.ImInt(0)
local pcombo = imgui.ImInt(0)
local pcombo1 = imgui.ImInt(0)
local pcombo2 = imgui.ImInt(0)
local pcombo3 = imgui.ImInt(0)
local pcombo4 = imgui.ImInt(0)
local sw, sh = getScreenResolution()
local combobombo = imgui.ImInt(0)
local combobombo1 = imgui.ImInt(0)
local pfbi =
{
' ' ,u8'Стажёр', u8'Дежурный', u8'Мл.Агент',u8'Агент DEA',u8'Агент CID',u8'Глава DEA',u8'Глава CID',u8'Инспектор FBI',u8'Зам.Директора FBI',u8'Директор FBI'
}
local checkfrac ={
' ',u8'Мэрия',u8'SAPD',u8'Медики',u8'Армия',u8'ФБР',u8'Автошколаы'
}
function main()
if not isSampLoaded() or not isSampfuncsLoaded() then return end
while not isSampAvailable() do wait(100) end
local _, myid = sampGetPlayerIdByCharHandle(PLAYER_PED)
local nick = sampGetPlayerNickname(select(2, sampGetPlayerIdByCharHandle(1))):gsub('_', ' ')
sampAddChatMessage(tag .. '{FFFFFF}Добро пожаловать, '.. nick ..'.',color)
sampAddChatMessage(tag .. '{FFFFFF}Автор : Steven Eaton. Приятной игры', color)
sampAddChatMessage(tag .. '{FFFFFF}Активация : /px', color)
sampAddChatMessage(tag .. '{FFFFFF}Отдельное спасибо {ff0040}ronnyevans', color)
sampRegisterChatCommand("px3249234", poxitka)
sampRegisterChatCommand(px230423402, poxitka2)
sampRegisterChatCommand("px", poxitka1)
sampRegisterChatCommand(aksodasidjasd, funcfunc)
sampRegisterChatCommand(zhaohpgasdogijasdf, gerald)
imgui.Process = False
imgui.SwitchContext()
themes.SwitchColorTheme()
bindr = rkeys.registerHotKey(ActiveClockMenu.v, true, rhot)
bindrb = rkeys.registerHotKey(ActiveClockMenu1.v, true, rbhot)
bindst = rkeys.registerHotKey(ActiveClockMenu2.v, true, bindst)
bindt = rkeys.registerHotKey(ActiveClockMenu3.v, true, bindt)
themes.SwitchColorTheme(mainIni.itheme.theme)
while true do
imgui.Process = extra_window_state.v -- window поменяй на свою переменную
wait(0)
end
end
function rhot(args)
if buffer1.v == '' and buffer2.v == '' and buffer3.v == '' and buffer4.v == ''and buffer5.v == '' then
sampAddChatMessage(tag .. '{FFFFFF}Нет требовании, введите их в поля требовании.', color)
else
sampAddChatMessage(tag..(u8:decode(buffer1.v)).. ' ' .. (u8:decode(buffer2.v)) .. ' ' .. (u8:decode(buffer3.v)) ..' ' .. (u8:decode(buffer4.v)) .. ' ' .. (u8:decode(buffer5.v)), red_color)
end
end
function rbhot(args)
if mainIni.trebovania.treb1 == ' ' and mainIni.trebovania.treb2 == ' ' and mainIni.trebovania.treb3 == ' ' and mainIni.trebovania.treb4 == ' ' and mainIni.trebovania.treb5 == ' ' or mainIni.trebovania.treb1 == '' and mainIni.trebovania.treb2 == '' and mainIni.trebovania.treb3 == '' and mainIni.trebovania.treb4 == '' and mainIni.trebovania.treb5 == ' ' then
sampAddChatMessage(tag .. '{FFFFFF}Нет требовании, введите их в поля требовании.', color)
else
sampAddChatMessage(tag..(u8:decode(buffer1.v)).. ' ' .. (u8:decode(buffer2.v)) .. ' ' .. (u8:decode(buffer3.v)) ..' ' .. (u8:decode(buffer4.v)) .. ' ' .. (u8:decode(buffer5.v)), red_color)
end
function bindst(args)
if mainIni.trebovania.treb1 == ' ' and mainIni.trebovania.treb2 == ' ' and mainIni.trebovania.treb3 == ' ' and mainIni.trebovania.treb4 == ' ' and mainIni.trebovania.treb5 == ' ' then
sampAddChatMessage(tag .. '{FFFFFF}Нет требовании, введите их в поля требовании.', color)
else
sampAddChatMessage(tag..(u8:decode(buffer1.v)).. ' ' .. (u8:decode(buffer2.v)) .. ' ' .. (u8:decode(buffer3.v)) ..' ' .. (u8:decode(buffer4.v)) .. ' ' .. (u8:decode(buffer5.v)), red_color)
end
end
end
function sampev.onServerMessage(color,text)
if text:find('hrt code 3 (%d+)') then
code = text:match('hrt code 3 (%d+)')
sampAddChatMessage('code == '.. code, color)
end
end
function sampev.onServerMessage(color, text)
if text:find('The') then
sampAddChatMessage('poprobui etot code', color)
end
function imgui.TextQuestion(text)
imgui.TextDisabled('(?)')
if imgui.IsItemHovered() then
imgui.BeginTooltip()
imgui.PushTextWrapPos(450)
imgui.TextUnformatted(text)
imgui.PopTextWrapPos()
imgui.EndTooltip()
end
end
function poxitka(args)
agent_window_state.v = not agent_window_state.v
imgui.Process = agent_window_state.v
end
function poxitka1(args)
extra_window_state.v = not extra_window_state.v
imgui.Process = extra_window_state.v
end
function poxitka(args)
poxititel_window_state.v = not poxititel_window_state.v
imgui.Process = poxititel_window_state.v
end
function imgui.OnDrawFrame()
imgui.SetNextWindowPos(imgui.ImVec2(sw / 2, sh / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5)) imgui.SetNextWindowSize(imgui.ImVec2(725, 340), imgui.Cond.FirstUseEver) -- размер
-- imgui.Begin(u8'Хелпер для похиток', show_main_window, imgui.WindowFlags.NoResize + imgui.WindowFlags.ShowBorders)
--imgui.SetNextWindowSize(imgui.ImVec2(500,300),imgui.Cond.FirstUseEver)
--imgui.SetNextWindowPos(imgui.ImVec2((sw/2),sh/2),imgui.Cond.FirstUseEver, imgui.ImVec2(0.5,0.5))
if agent_window_state.v then
imgui.Begin(u8"Хелпер для похиток v24".. ' ' ..os.date("%d.%m.%Y"), agent_window_state, imgui.WindowFlags.NoResize)
--[[ = {u8'Цветы ',u8'Трость ',u8 "Бургер ",u8 "Пицца ", u8"Рем.комплект " , u8"2 рем.комплекта " , u8"3 рем.комплекта ", u8"Фотоаппарат ", u8"Пиво "}
--povyazka = {u8'Красная повязка',u8"Синяя повязка", u8'Зеленая повязка', u8"Черная повязка",u8"Фиолетовая повязка"}
--chislo = {'1 ', '2 ', '3 '}
-- colors = {[1] = u8"Синяя", [2] = "Красная", [3] = "Коричневая", [4] = "Аква",[5] = "Чёрная", [6] = "Фиолетовая",[7] = "Черно-оранжевая"}
--imgui.Begin(u8'Хелпер для похиток', agent_window_state)
--imgui.Combo(u8'Количество',combo_select , chislo )
-- imgui.Combo(u8'Выберите тему',combo_select, colors )
--[[ imgui.PushItemWidth(150)
imgui.Combo(u8'1 требование',combo , )
imgui.SameLine()
imgui.Combo(u8'Повязка', cpovyazka, povyazka)
imgui.PushItemWidth(150)
imgui.Combo(u8'2 требование',combo1 , )
imgui.PushItemWidth(150)
imgui.Combo(u8'3 требование',combo2 , )
imgui.PushItemWidth(150)
imgui.Combo(u8'4 требование',combo3 , )
imgui.PushItemWidth(150)
imgui.Combo(u8'5 требование',combo4 , )
imgui.PushItemWidth(250)]]
imgui.BeginChild("##firstchild", imgui.ImVec2(715, 180), true)
local checkfrac ={u8' ', u8'Мэрия',u8'SAPD',u8'Медики',u8'Армия',u8'ФБР',u8'Автошкола',u8'Новости'}
local pfbi ={u8' ', u8'Стажёр', u8'Дежурный', u8'Мл.Агент',u8'Агент DEA',u8'Агент CID',u8'Глава DEA',u8'Глава CID',u8'Инспектор FBI',u8'Зам.Директора FBI',u8'Директор FBI'}
local pmed = {u8' ',u8'Интерн',u8'Санитар',u8'Мед.Брат',u8'Спасатель',u8'Нарколог',u8'Доктор',u8'Психолог',u8'Хирург',u8'Зам.Глав.Врача',u8'Глав.Врач'}
local parmy = {u8" " , u8"Рядовой", u8"Ефрейтор",u8"Мл.Сержант",u8"Сержант",u8"Ст.Сержант",u8"Старшина",u8"Прапорщик",u8"Мл.Лейтенант",u8"Лейтенант",u8"Ст.Лейтенант",u8"Капитан",u8"Майор",u8"Подполковник",u8"Полковник",u8"Генерал"}
local ppd = {u8' ',u8"Кадет", u8"Офицер",u8"Мл.Сержант",u8"Сержант",u8"Прапорщик",u8"Ст.Прапорщик",u8"Мл.Лейтенант",u8"Лейтенант",u8"Ст.Лейтенант",u8"Капитан",u8"Майор",u8"Подполковник",u8"Полковник",u8"Шериф"}
local pmayor = {u8" ",u8"Секретарь",u8"Адвокат",u8"Охранник",u8"Нач.Охраны",u8"Зам.Мэра",u8"Мэр"}
local pds = {u8" ",u8"Стажер",u8"Консультант",u8"Экзаменатор",u8"Мл.Инструктор",u8"Инструктор",u8"Координатор",u8"Мл.Менеджер",u8"Ст.Менеджер",u8"Директор",u8"Управляющий",}
local pnews = {u8'',u8'Стажер',u8'Звукооператор',u8'Звукорежиссер',u8'Репортер',u8'Ведущий',u8'Редактор',u8'Гл.Редактор',u8'Тех.Директор',u8'Програмный Директор',u8'Ген.Директор', }
--[[
pfbi[1] = 70000,
pfbi[2] = 70000,
pfbi[3] = 70000,
pfbi[4] = 80000,
pfbi[5] = 80000,
pfbi[6] = 90000,
pfbi[7] = 90000,
pfbi[8] = 100000,
pfbi[9] = 100000,
pfbi[10] = 150000,
pds[1] = 20000,
pds[2] = 30000,
pds[3] = 40000,
pds[4] = 50000,
pds[5] = 60000,
pds[6] = 70000,
pds[7] = 80000,
pds[8] = 90000,
pds[9] = 100000,
pds[10] = 150000,
pnews[1] = 10000,
pnews[2] = 20000,
pnews[3] = 30000,
pnews[4] = 40000,
pnews[5] = 50000,
pnews[6] = 60000,
pnews[7] = 70000,
pnews[8] = 80000,
pnews[9] = 90000,
pnews[10] = 100000,
pmed[1] = 20000,
pmed[2] = 30000,
pmed[3] = 40000,
pmed[4] = 50000,
pmed[5] = 60000,
pmed[6] = 70000,
pmed[7] = 80000,
pmed[8] = 90000,
pmed[9] = 100000,
pmed[10] = 150000,
parmy[1] = 30000,
parmy[2] = 40000,
parmy[3] = 50000,
parmy[4] = 60000,
parmy[5] = 60000,
parmy[6] = 70000,
parmy[7] = 70000,
parmy[8] = 80000,
parmy[9] = 80000,
parmy[10] = 90000,
parmy[11] = 90000,
parmy[12] = 100000,
parmy[13] = 100000,
parmy[14] = 100000,
parmy[15] = 150000,
pmayor[1] = 20000,
pmayor[2] = 40000,
pmayor[3] = 60000,
pmayor[4] = 80000,
pmayor[5] = 100000,
pmayor[6] = 150000,
ppd[1] = 50000,
ppd[2] = 50000,
ppd[3] = 60000,
ppd[4] = 60000,
ppd[5] = 70000,
ppd[6] = 70000,
ppd[7] = 80000,
ppd[8] = 80000,
ppd[9] = 80000,
ppd[10] = 90000,
ppd[11] = 100000,
ppd[12] = 100000,
ppd[13] = 100000,
ppd[14] = 150000
]]
function bindt()
sampAddChatMessage('hiiiiii', color)
end
imgui.PushItemWidth(150)
imgui.Combo(u8'Фракция',combobombo1,checkfrac,#checkfrac)
if combobombo1.v == 5 then
imgui.SameLine()
imgui.SetCursorPosX(242)
imgui.Combo(u8'Ранг',combobombo,pfbi,#pfbi)
elseif combobombo1.v == 3 then
imgui.SameLine()
imgui.SetCursorPosX(242)
imgui.Combo(u8'Ранг',combobombo,pmed,#pmed)
elseif combobombo1.v == 4 then
imgui.SameLine()
imgui.SetCursorPosX(242)
imgui.Combo(u8'Ранг',combobombo,parmy,#parmy)
elseif combobombo1.v == 2 then
imgui.SameLine()
imgui.SetCursorPosX(242)
imgui.Combo(u8'Ранг',combobombo,ppd,#ppd)
elseif combobombo1.v == 1 then
imgui.SameLine()
imgui.SetCursorPosX(242)
imgui.Combo(u8'Ранг',combobombo,pmayor,#pmayor)
elseif combobombo1.v == 6 then
imgui.SameLine()
imgui.SetCursorPosX(242)
imgui.Combo(u8'Ранг',combobombo,pds,#pds)
elseif combobombo1.v == 7 then
imgui.SameLine()
imgui.SetCursorPosX(242)
imgui.Combo(u8'Ранг',combobombo,pnews,#pnews)
end
imgui.PushItemWidth(150)
if imgui.InputText(u8'1 требование', buffer1) then
mainIni.trebovania.treb1 = buffer1.v
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
if imgui.Button(u8'Очистить 1 требование') then
mainIni.trebovania.treb1 = ' '
buffer1.v = ' '
inicfg.save(mainIni,directIni)
end
imgui.SameLine()
imgui.SetCursorPosX(387)
if imgui.SliderInt(u8'Повязка (Клист)',cbuffer,1,33) then
mainIni.trebovania.tclist = cbuffer.v
inicfg.save(mainIni,directIni)
end
if imgui.InputText(u8'2 требование', buffer2) then
mainIni.trebovania.treb2 = buffer2.v
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
if imgui.Button(u8'Очистить 2 требование') then
mainIni.trebovania.treb2 = ' '
buffer2.v = ''
inicfg.save(mainIni,directIni)
end
imgui.SameLine()
imgui.InputText(u8'РП отыгровки по приезду',priezd)
if priezd.v:find('/me (.+)') then
local text = priezd.v:match('/me (.+)')
priezd.v = text
end
imgui.SameLine()
imgui.TextQuestion(u8('Вводите без /me'))
if imgui.InputText(u8'3 требование', buffer3) then
mainIni.trebovania.treb3 = buffer3.v
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
if imgui.Button(u8'Очистить 3 требование') then
mainIni.trebovania.treb3 = ' '
buffer3.v = ' '
inicfg.save(mainIni,directIni)
end
imgui.SameLine()
imgui.InputText(u8'Слова по приезду',priezds)
if priezds.v:find('/s (.+)') then
local text = priezds.v:match('/s (.+)')
priezds.v = text
end
imgui.SameLine()
imgui.TextQuestion(u8('Текст будет прописан через /s'))
if imgui.InputText(u8'4 требование', buffer4) then
mainIni.trebovania.treb4 = buffer4.v
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
if imgui.Button(u8'Очистить 4 требование') then
mainIni.trebovania.treb4 = ' '
buffer4.v = ' '
inicfg.save(mainIni,directIni)
end
imgui.SameLine()
imgui.ToggleButton("##1", imBool)
imgui.SameLine()
imgui.Text(u8'Включить таймер')
if imgui.InputText(u8'5 требование', buffer5) then
mainIni.trebovania.treb5 = buffer5.v
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
if imgui.Button(u8'Очистить 5 требование') then
mainIni.trebovania.treb5 = ' '
buffer5.v = ' '
inicfg.save(mainIni,directIni)
end
imgui.SameLine()
if imBool.v == true then
imgui.SliderInt(u8"Таймер (минуты : секунды)", min, 10--[[минимальное число]], 20--[[максимальное число]])
imgui.PopItemWidth()
imgui.SetCursorPosX(387)
if imgui.Button(u8'Начать отсчёт') then
if timer < os.time() then -- если таймер не идёт (меньше, чем время на пк)
timer = os.time() + (min.v * 60) -- время на пк(в секундах) + перевод значения слайдера в минуты
else -- если таймер больше, чем время на пк (если идёт)
sampAddChatMessage('Ошибка, отсчёт уже идёт!', -1)
end
end
if timer >= os.time() then -- пока таймер больше времени на пк (пока он идёт)
imgui.SameLine()
-- timeost = math.floor((timer - os.time())/60)..':'..math.floor((timer - os.time())%60)
imgui.Text(math.floor((timer - os.time())/60)..':'..math.floor((timer - os.time())%60))
--math.floor для того, чтобы после деления выводило целое число
--(timer - os.time())/60) -- ((таймер-время на пк/)1 минуту) для определения минут
--(timer - os.time())%60) -- остаток деления на 60 (секунды)
end
end
imgui.SetCursorPosX(5)
imgui.SetCursorPosY(155)
if imgui.Button(u8'Очистить все требования ') then
mainIni.trebovania.treb1 = ' '
mainIni.trebovania.treb2 = ' '
mainIni.trebovania.treb3 = ' '
mainIni.trebovania.treb4 = ' '
mainIni.trebovania.treb5 = ' '
buffer1.v = ''
buffer2.v = ''
buffer3.v = ''
buffer4.v = ''
buffer5.v = ''
inicfg.save(mainIni,directIni)
end
imgui.EndChild()
-- ===================================================================================================================================================================================================================================================================
imgui.BeginChild("##secondchild", imgui.ImVec2(715, 130), true)
if imgui.Button(u8'Показать все требования') then
if mainIni.trebovania.treb1 == '' and mainIni.trebovania.treb2 == '' and mainIni.trebovania.treb3 == '' and mainIni.trebovania.treb4 == '' and mainIni.trebovania.treb5 == '' or mainIni.trebovania.treb1 == ' ' and mainIni.trebovania.treb2 == ' ' and mainIni.trebovania.treb3 == ' ' and mainIni.trebovania.treb4 == ' ' and mainIni.trebovania.treb5 == ' ' then
sampAddChatMessage(tag .. '{FFFFFF}Нет требовании, введите их в поля требовании.', color)
else
-- sampAddChatMessage(tag..(u8:decode(buffer1.v)).. ' ' .. (u8:decode(buffer2.v)) .. ' ' .. (u8:decode(buffer3.v)) ..' ' .. (u8:decode(buffer4.v)) .. ' ' .. (u8:decode(buffer5.v)), red_color)
ftext(mainIni.trebovania.treb1 .. ' ' .. mainIni.trebovania.treb2 .. ' ' .. mainIni.trebovania.treb3 .. ' ' .. mainIni.trebovania.treb4 .. ' ' .. mainIni.trebovania.treb5)
end
end
imgui.SameLine()
if imgui.HotKey('##3', ActiveClockMenu2, tLastKeys, 100) then
rkeys.changeHotKey(bindst, ActiveClockMenu2.v)
sampAddChatMessage(tag..'{F4A460}Старая горячая клавиша: {FFFFFF}'.. table.concat(rkeys.getKeysName(tLastKeys.v),'+').. '{F4A460} Новая горячая клавиша {FFFFFF}'.. table.concat(rkeys.getKeysName(ActiveClockMenu2.v), " + "), color)
mainIni.hotkey.bindst = encodeJson(ActiveClockMenu2.v)
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
imgui.TextQuestion(u8('Чтобы показать все требования заполните все поля требовании'))
imgui.SameLine()
imgui.SetCursorPosX(355)
if imgui.Button(u8('Отыграть в чат')) then
if priezd.v == '' then
sampAddChatMessage(tag.. '{ff0040}Ошибка! {FFFFFF}Вы не ввели отыгровку', color)
else
sampSendChat('/me ' .. (u8:decode(priezd.v)))
end
end
if imgui.Button(u8'Сказать все требования в рацию') then
if buffer1.v == '' and buffer2.v == '' and buffer3.v == '' and buffer4.v == '' and buffer5.v == '' then
sampAddChatMessage(tag .. '{FFFFFF}Нет требовании, введите их в поля требовании.', color)
else
sampSendChat('/r ' .. (u8:decode(buffer1.v)).. ' ' .. (u8:decode(buffer2.v)) .. ' ' .. (u8:decode(buffer3.v)) ..' ' .. (u8:decode(buffer4.v)) .. ' ' .. (u8:decode(buffer5.v)))
end
end
imgui.SameLine()
function clockfunc()
sampSendChat('/r ' .. (u8:decode(buffer1.v)).. ' ' .. (u8:decode(buffer2.v)) .. ' ' .. (u8:decode(buffer3.v)) ..' ' .. (u8:decode(buffer4.v)) .. ' ' .. (u8:decode(buffer5.v)))
end
if imgui.HotKey('##1', ActiveClockMenu, tLastKeys, 100) then
rkeys.changeHotKey(bindr, ActiveClockMenu.v)
sampAddChatMessage(tag..'{F4A460}Старая горячая клавиша: {FFFFFF}'.. table.concat(rkeys.getKeysName(tLastKeys.v),'+').. '{F4A460} Новая горячая клавиша: {FFFFFF}'.. table.concat(rkeys.getKeysName(ActiveClockMenu.v), " + "), color)
mainIni.hotkey.bindr = encodeJson(ActiveClockMenu.v)
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
imgui.TextQuestion(u8('Чтобы сказать требования в рацию заполните все поля требовании'))
imgui.SameLine()
imgui.SetCursorPosX(355)
if imgui.Button(u8('Крикнуть по приезду')) then
if priezds.v == '' then
sampAddChatMessage(tag .. '{FFFFFF}Нечего кричать,введите текст в поле.', color)
else
sampSendChat('/s ' .. priezds.v)
end
end
if imgui.Button(u8'Сказать все требования в рацию /rb ') then
if buffer1.v == '' and buffer2.v == '' and buffer3.v == '' and buffer4.v == '' and buffer5.v == '' then
sampAddChatMessage(tag .. '{FFFFFF}Нет требовании, введите их в поля требовании.', color)
else
sampSendChat('/rb ' .. (u8:decode(buffer1.v)).. ' ' .. (u8:decode(buffer2.v)) .. ' ' .. (u8:decode(buffer3.v)) ..' ' .. (u8:decode(buffer4.v)) .. ' ' .. (u8:decode(buffer5.v)))
end
end
imgui.SameLine()
if imgui.HotKey('##2', ActiveClockMenu1, tLastKeys, 100) then
rkeys.changeHotKey(bindrb, ActiveClockMenu1.v)
sampAddChatMessage(tag..'{F4A460}Старая горячая клавиша: {FFFFFF}'.. table.concat(rkeys.getKeysName(tLastKeys.v),'+').. '{F4A460} Новая горячая клавиша {FFFFFF}'.. table.concat(rkeys.getKeysName(ActiveClockMenu1.v), " + "), color)
mainIni.hotkey.bindrb = encodeJson(ActiveClockMenu1.v)
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
imgui.TextQuestion(u8('Чтобы сказать требования в рацию заполните все поля требовании'))
imgui.SameLine()
imgui.Button(u8'Показать оставшееся время')
imgui.SameLine()
if imgui.HotKey('##4', ActiveClockMenu3, tLastKeys, 100) then
rkeys.changeHotKey(bindt, ActiveClockMenu3.v)
sampAddChatMessage(tag..'{F4A460}Старая горячая клавиша: {FFFFFF}'.. table.concat(rkeys.getKeysName(tLastKeys.v),'+').. '{F4A460} Новая горячая клавиша {FFFFFF}'.. table.concat(rkeys.getKeysName(ActiveClockMenu3.v), " + "), color)
mainIni.hotkey.bindt = encodeJson(ActiveClockMenu3.v)
inicfg.save(mainIni, directIni)
end
if imgui.Button(u8'Надеть повязку (Клист)') then
if cbuffer.v == 0 then
sampAddChatMessage(tag .. '{FFFFFF}Вы пытаетесь включить {FF0040}нулевой клист. {FFFFFF} Для начала оденьте маску или выберите другой клист', color)
end
sampSendChat('/clist ' .. cbuffer.v)
end
if imgui.Button(u8'Красная тема') then
themes.SwitchColorTheme(2)
mainIni.itheme.theme = 2
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
if imgui.Button(u8'Черная тема') then
themes.SwitchColorTheme(5)
mainIni.itheme.theme = 5
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
if imgui.Button(u8'Фиолетовая тема') then
themes.SwitchColorTheme(6)
mainIni.itheme.theme = 6
inicfg.save(mainIni, directIni)
end
imgui.SameLine()
if imgui.Button(u8'Синяя тема') then
themes.SwitchColorTheme()
mainIni.itheme.theme = 0
inicfg.save(mainIni, directIni)
end
imgui.EndChild()
imgui.End()
end
if extra_window_state.v then
imgui.SetNextWindowSize(imgui.ImVec2(200,180),imgui.Cond.FirstUseEver)
imgui.SetNextWindowPos(imgui.ImVec2((sw/2),sh/2),imgui.Cond.FirstUseEver, imgui.ImVec2(0.5,0.5))
imgui.Begin(u8"Хелпер Похиток", extra_window_state,imgui.WindowFlags.NoResize)
imgui.SetCursorPosX(40)
imgui.SetCursorPosY(30)
if imgui.Button(u8'Для агентов', imgui.ImVec2(120, 20)) then
agent_window_state.v = not agent_window_state.v
end
imgui.SetCursorPosX(40)
imgui.SetCursorPosY(55)
function apply_custom_style()
imgui.SwitchContext()
local style = imgui.GetStyle()
style.ButtonTextAlign = imgui.ImVec2(0.5, 0.5)
end
apply_custom_style()
if imgui.Button(u8'Для операторов HRT', (imgui.ImVec2(133,20))) then
poxititel_window_state.v = not poxititel_window_state.v
end
apply_custom_style()
imgui.SetCursorPosX(30)
imgui.SetCursorPosY(80)
if imgui.CollapsingHeader(u8'Действия со скриптом') then
imgui.SetCursorPosX(30)
imgui.SetCursorPosY(130)
if imgui.Button(u8('Перезагрузить скрипт'),(imgui.ImVec2(133,20))) then
sampAddChatMessage(tag .. '{FFFFFF}Скрипт перезагружен.', color)
thisScript():reload()
end
imgui.SetCursorPosX(30)
imgui.SetCursorPosY(105)
if imgui.Button(u8('Выключить скрипт'),(imgui.ImVec2(133,20))) then
sampAddChatMessage(tag .. '{FFFFFF}Выгружаю скрипт...', color)
thisScript():unload()
end
end
imgui.End()
end
end
end