Ну потому что код говно.Функцию задействовал, но ничего не меняется
script_name('PatrolHelper')
script_author('vidix')
script_version(1.0)
script_version_number(1)
require "lib.moonloader"
require "lib.sampfuncs"
local inicfg = require "inicfg"
local mainIni = inicfg.load({
patrol =
{
mark = ""
}
})
--local stateIni = inicfg.save(mainIni, derictIni)
-- // Доп.инфа // --
local info = {
[0] = {'Code 0 - Самый приоритетный вызов, обычно объявляется, когда офицер/офицеры на земле (ранены/убиты).', 'Code 1 - Офицер в бедственном положении, под обстрелом например, но ещё в состоянии стоять на ногах. Второй по приоритету вызов после Code 0.', 'Code 1-1 - Выезжаем с гаража.', 'Code 1-3 - Уходим с патруля...
script_name('PatrolHelper')
script_author('vidix')
script_version(1.0)
script_version_number(1)
require "lib.moonloader"
require "lib.sampfuncs"
local inicfg = require "inicfg"
local directIni = "moonloader\\patrol.ini"
local mainIni = inicfg.load(nil, directIni)
--local stateIni = inicfg.save(mainIni, derictIni)
-- // Доп.инфа // --
local info = {
[0] = {'Code 0 - Самый приоритетный вызов, обычно объявляется, когда офицер/офицеры на земле (ранены/убиты).', 'Code 1 - Офицер в бедственном положении, под обстрелом например, но ещё в состоянии стоять на ногах. Второй по приоритету вызов после Code 0.', 'Code 1-1 - Выезжаем с гаража.', 'Code 1-3 - Уходим с патруля [Причина].', 'Code 1-4 - Везём преступника в департамент.', 'Code 2 - Требуется подмога, тихий режим (без сирен/стробоскопов).', 'Code 3 - Срочно требуется подмога/экстренный вызов, необходимо срочно выехать на местоположение, где объявлен код.', 'Code 4 - Ситуация под контролем/справимся сами.', 'Code 4 ADAM - Ситуация под контролем/справимся сами, однако ближайшие патрули должны быть готовы оказать поддержку.', 'Code 5 - Требуется подмога близ находящихся патрулей.', 'Code 6 - Офицерам держаться подальше от опасного места. (Включая локацию)', 'Code 7 - Обеденный перерыв. (Включая локацию, где остановится юнит для перекуса)', 'Code 8 - Требуется скорая помощь. (Включая локацию и код ситуации)', 'Code 9 - Выставить оцепление. (Включая локацию)', 'Code 21 - Преступник был нейтрализован.', 'Code 50 - Доложить о составе полиции на рабочем месте.'},
[1] = {'10-3 - Радио-молчание (для срочных сообщений).', '10-4 - Принято.', '10-6 - Отрицательно.', '10-00 - Всем сотрудникам выйти на связь.', '10-20 - Локация (местоположение).', '10-27 - Смена маркировки патруля (включая старую и новую маркировку).', '10-30 - Дорожное транспортное происшествие.', '10-50 - Прошу слова.', '10-55 - Провожу трафик-стоп', '10-57 V (VICTOR) - Начинаю преследование авто с нарушителем.', '10-57 F (FOXTROT) - Начинаю пешее преследование за нарушителем.', '10-60 - Информация об автомобиле.', '10-61 - Информация об пешем преступнике.', '10-66 - Провожу трафик-стоп повышенного риска.', '10-90 - Повторите сообщение.', '10-99 - Ситуация урегулирована (Возобновление нормальной работы).'},
[2] = {'A(Adam) - Парный патрульный юнит состоящий из двух офицеров Patrol Division (Иногда может состоять из трёх офицеров).', 'L(Lincoln) - Одиночный патрульный юнит состоящий из одного офицера Patrol Division.', 'M(Mary) - Одиночный мото-юнит. (Cop Bike)', 'H(Henry,HSIU) - Одиночный или парный скоростной юнит. (Cheetah)', 'ASD (Air Support Division) - Парный Эйр юнит состоящий из пилота и координатора. (Police Maverick)', 'D(David) - Юнит Platoon D (SWAT) состоящий от двух до четырёх офицеров Platoon D.', 'C(Charles) - Юнит Platoon C состоящий от двух до четырёх офицеров Platoon C.', 'K(King) - Юнит Platoon K9 состоящий от одного до четырёх кинологов.', 'R(Robert) - Юнит детективов Robbery Homicide Division состоящий от одного до четырёх детективов.', 'G(George) - Юнит детективов Gang&Narcotics Division состоящий от одного до четырёх детективов.', 'VICE - Юнит детективов Organised Crime and Vice Division состоящий от одного до четырёх детективов.', 'F(Felix) - Юнит детективов Internal Affairs Division состоящий от одного до четырёх детективов.'}
}
prefix = "{ffffff}[{0055ff}Patrol{ff3c0f}Helper{ffffff}]:"
-- // Диалоги // --
local dialogArr2 = {"Ситуационные коды", "Тен-коды", "Маркировки"}
local dialogArr3 = {"A(Adam)", "L(Lincoln)", "M(Mary)", "H(Henry)", "ASD(Air Support Division)", "D(David)", "C(Charles)", "K(King)", "R(Robert)", "G(George)", "VICE", "F(Felix)"}
local dialogArr4 = {"A(Adam)", "L(Lincoln)", "M(Mary)", "H(Henry)", "ASD(Air Support Division)", "D(David)", "C(Charles)", "K(King)", "R(Robert)", "G(George)", "VICE", "F(Felix)"}
function main()
if not isSampLoaded() or not isSampfuncsLoaded() then return end
while not isSampAvailable() do wait(100) end
print('Скрипт успешно загружен!')
sampAddChatMessage(prefix ..' Скрипт {2de320}успешно {ffffff}загружен! Введите команду /phelp.', -1)
sampRegisterChatCommand('phelp', cmd_help)
sampRegisterChatCommand('pinfo', function()
sampShowDialog(2, 'Выберите раздел', arrayDialog(dialogArr2), 'Выбрать', 'Закрыть', 2)
end)
sampRegisterChatCommand('pstart', function()
sampShowDialog(3, 'Выберите маркировку', arrayDialog(dialogArr3), 'Выбрать', 'Закрыть', 2)
end)
sampRegisterChatCommand('markset', cmd_markset)
sampRegisterChatCommand('markget', cmd_markget)
sampRegisterChatCommand('pstop', cmd_stop)
sampRegisterChatCommand('doclad', cmd_doclad)
_, id = sampGetPlayerIdByCharHandle(PLAYER_PED)
nick = sampGetPlayerNickname(id)
while true do
wait(0)
local result, button, list, input = sampHasDialogRespond(2)
if result then
if button == 1 then
if list == 0 then
sampAddChatMessage('Список ситуационных кодов:', -1)
arrayAddChatMessage(info[list], 70)
elseif list == 1 then
sampAddChatMessage('Список тен-кодов:', -1)
arrayAddChatMessage(info[list], 70)
elseif list == 2 then
sampAddChatMessage('Список маркировок:', -1)
arrayAddChatMessage(info[list], 70)
end
else
end
end
local result, button, list, input = sampHasDialogRespond(3)
if result then
if button == 1 then
if list == 0 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как A-6, доступен.')
elseif list == 1 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как L-4, доступен.')
elseif list == 2 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как M-2, доступен.')
elseif list == 3 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как H-7, доступен.')
elseif list == 4 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как ASD-3, доступен.')
elseif list == 5 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как D-5, доступен.')
elseif list == 6 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как C-8, доступен.')
elseif list == 7 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как K-6, доступен.')
elseif list == 8 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как R-1, доступен.')
elseif list == 9 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как G-9, доступен.')
elseif list == 10 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как V-11, доступен.')
elseif list == 11 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как F-6, доступен.')
end
else
end
end
local result, button, list, input = sampHasDialogRespond(4)
if result then
if button == 1 then
if list == 0 then
mainIni.patrol.mark = Adam
if inicfg.save(mainIni, derictIni) then
sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1)
else
sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1)
end
elseif list == 1 then
mainIni.patrol.mark = Lincoln
if inicfg.save(mainIni, derictIni) then
sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1)
else
sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1)
end
elseif list == 2 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как M-2, доступен.')
elseif list == 3 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как H-7, доступен.')
elseif list == 4 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как ASD-3, доступен.')
elseif list == 5 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как D-5, доступен.')
elseif list == 6 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как C-8, доступен.')
elseif list == 7 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как K-6, доступен.')
elseif list == 8 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как R-1, доступен.')
elseif list == 9 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как G-9, доступен.')
elseif list == 10 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как V-11, доступен.')
elseif list == 11 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как F-6, доступен.')
end
else
end
end
end
end
function cmd_markset()
sampShowDialog(4, 'Выберите маркировку', arrayDialog(dialogArr4), 'Выбрать', 'Закрыть', 2)
end
function cmd_mark(arg)
mainIni.patrol.mark = arg
if inicfg.save(mainIni, derictIni) then
sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1)
else
sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1)
end
end
function cmd_markget(arg)
mainIni = inicfg.load(nil, directIni)
sampAddChatMessage(prefix .. ' Выбранная маркировка: ' .. mainIni.patrol.mark .. '.', -1)
end
function cmd_help()
sampAddChatMessage(prefix .. ' Список команд:', -1)
sampAddChatMessage(prefix .. ' /doclad - Меню докладов.', -1)
sampAddChatMessage(prefix .. ' /patrolinfo - Дополнительная информация для патруля.', -1)
sampAddChatMessage(prefix .. ' /patrolstart - Заступить в патруль.', -1)
sampAddChatMessage(prefix .. ' /patrolstop - Завершить патруль.', -1)
end
function arrayDialog(array)
local dialog_str = ''
for _, str in pairs(array) do
dialog_str = dialog_str .. str .. '\n'
end
return dialog_str
end
function arrayAddChatMessage(array, delay)
lua_thread.create(function()
for _, str in pairs(array) do
sampAddChatMessage(str, 0xffffff); wait(delay)
end
end)
end
Там много лишнего, которое буду убирать.
Код:script_name('PatrolHelper') script_author('vidix') script_version(1.0) script_version_number(1) require "lib.moonloader" require "lib.sampfuncs" local inicfg = require "inicfg" local directIni = "moonloader\\patrol.ini" local mainIni = inicfg.load(nil, directIni) --local stateIni = inicfg.save(mainIni, derictIni) -- // Доп.инфа // -- local info = { [0] = {'Code 0 - Самый приоритетный вызов, обычно объявляется, когда офицер/офицеры на земле (ранены/убиты).', 'Code 1 - Офицер в бедственном положении, под обстрелом например, но ещё в состоянии стоять на ногах. Второй по приоритету вызов после Code 0.', 'Code 1-1 - Выезжаем с гаража.', 'Code 1-3 - Уходим с патруля [Причина].', 'Code 1-4 - Везём преступника в департамент.', 'Code 2 - Требуется подмога, тихий режим (без сирен/стробоскопов).', 'Code 3 - Срочно требуется подмога/экстренный вызов, необходимо срочно выехать на местоположение, где объявлен код.', 'Code 4 - Ситуация под контролем/справимся сами.', 'Code 4 ADAM - Ситуация под контролем/справимся сами, однако ближайшие патрули должны быть готовы оказать поддержку.', 'Code 5 - Требуется подмога близ находящихся патрулей.', 'Code 6 - Офицерам держаться подальше от опасного места. (Включая локацию)', 'Code 7 - Обеденный перерыв. (Включая локацию, где остановится юнит для перекуса)', 'Code 8 - Требуется скорая помощь. (Включая локацию и код ситуации)', 'Code 9 - Выставить оцепление. (Включая локацию)', 'Code 21 - Преступник был нейтрализован.', 'Code 50 - Доложить о составе полиции на рабочем месте.'}, [1] = {'10-3 - Радио-молчание (для срочных сообщений).', '10-4 - Принято.', '10-6 - Отрицательно.', '10-00 - Всем сотрудникам выйти на связь.', '10-20 - Локация (местоположение).', '10-27 - Смена маркировки патруля (включая старую и новую маркировку).', '10-30 - Дорожное транспортное происшествие.', '10-50 - Прошу слова.', '10-55 - Провожу трафик-стоп', '10-57 V (VICTOR) - Начинаю преследование авто с нарушителем.', '10-57 F (FOXTROT) - Начинаю пешее преследование за нарушителем.', '10-60 - Информация об автомобиле.', '10-61 - Информация об пешем преступнике.', '10-66 - Провожу трафик-стоп повышенного риска.', '10-90 - Повторите сообщение.', '10-99 - Ситуация урегулирована (Возобновление нормальной работы).'}, [2] = {'A(Adam) - Парный патрульный юнит состоящий из двух офицеров Patrol Division (Иногда может состоять из трёх офицеров).', 'L(Lincoln) - Одиночный патрульный юнит состоящий из одного офицера Patrol Division.', 'M(Mary) - Одиночный мото-юнит. (Cop Bike)', 'H(Henry,HSIU) - Одиночный или парный скоростной юнит. (Cheetah)', 'ASD (Air Support Division) - Парный Эйр юнит состоящий из пилота и координатора. (Police Maverick)', 'D(David) - Юнит Platoon D (SWAT) состоящий от двух до четырёх офицеров Platoon D.', 'C(Charles) - Юнит Platoon C состоящий от двух до четырёх офицеров Platoon C.', 'K(King) - Юнит Platoon K9 состоящий от одного до четырёх кинологов.', 'R(Robert) - Юнит детективов Robbery Homicide Division состоящий от одного до четырёх детективов.', 'G(George) - Юнит детективов Gang&Narcotics Division состоящий от одного до четырёх детективов.', 'VICE - Юнит детективов Organised Crime and Vice Division состоящий от одного до четырёх детективов.', 'F(Felix) - Юнит детективов Internal Affairs Division состоящий от одного до четырёх детективов.'} } prefix = "{ffffff}[{0055ff}Patrol{ff3c0f}Helper{ffffff}]:" -- // Диалоги // -- local dialogArr2 = {"Ситуационные коды", "Тен-коды", "Маркировки"} local dialogArr3 = {"A(Adam)", "L(Lincoln)", "M(Mary)", "H(Henry)", "ASD(Air Support Division)", "D(David)", "C(Charles)", "K(King)", "R(Robert)", "G(George)", "VICE", "F(Felix)"} local dialogArr4 = {"A(Adam)", "L(Lincoln)", "M(Mary)", "H(Henry)", "ASD(Air Support Division)", "D(David)", "C(Charles)", "K(King)", "R(Robert)", "G(George)", "VICE", "F(Felix)"} function main() if not isSampLoaded() or not isSampfuncsLoaded() then return end while not isSampAvailable() do wait(100) end print('Скрипт успешно загружен!') sampAddChatMessage(prefix ..' Скрипт {2de320}успешно {ffffff}загружен! Введите команду /phelp.', -1) sampRegisterChatCommand('phelp', cmd_help) sampRegisterChatCommand('pinfo', function() sampShowDialog(2, 'Выберите раздел', arrayDialog(dialogArr2), 'Выбрать', 'Закрыть', 2) end) sampRegisterChatCommand('pstart', function() sampShowDialog(3, 'Выберите маркировку', arrayDialog(dialogArr3), 'Выбрать', 'Закрыть', 2) end) sampRegisterChatCommand('markset', cmd_markset) sampRegisterChatCommand('markget', cmd_markget) sampRegisterChatCommand('pstop', cmd_stop) sampRegisterChatCommand('doclad', cmd_doclad) _, id = sampGetPlayerIdByCharHandle(PLAYER_PED) nick = sampGetPlayerNickname(id) while true do wait(0) local result, button, list, input = sampHasDialogRespond(2) if result then if button == 1 then if list == 0 then sampAddChatMessage('Список ситуационных кодов:', -1) arrayAddChatMessage(info[list], 70) elseif list == 1 then sampAddChatMessage('Список тен-кодов:', -1) arrayAddChatMessage(info[list], 70) elseif list == 2 then sampAddChatMessage('Список маркировок:', -1) arrayAddChatMessage(info[list], 70) end else end end local result, button, list, input = sampHasDialogRespond(3) if result then if button == 1 then if list == 0 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как A-6, доступен.') elseif list == 1 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как L-4, доступен.') elseif list == 2 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как M-2, доступен.') elseif list == 3 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как H-7, доступен.') elseif list == 4 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как ASD-3, доступен.') elseif list == 5 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как D-5, доступен.') elseif list == 6 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как C-8, доступен.') elseif list == 7 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как K-6, доступен.') elseif list == 8 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как R-1, доступен.') elseif list == 9 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как G-9, доступен.') elseif list == 10 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как V-11, доступен.') elseif list == 11 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как F-6, доступен.') end else end end local result, button, list, input = sampHasDialogRespond(4) if result then if button == 1 then if list == 0 then mainIni.patrol.mark = Adam if inicfg.save(mainIni, derictIni) then sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1) else sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1) end elseif list == 1 then mainIni.patrol.mark = Lincoln if inicfg.save(mainIni, derictIni) then sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1) else sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1) end elseif list == 2 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как M-2, доступен.') elseif list == 3 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как H-7, доступен.') elseif list == 4 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как ASD-3, доступен.') elseif list == 5 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как D-5, доступен.') elseif list == 6 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как C-8, доступен.') elseif list == 7 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как K-6, доступен.') elseif list == 8 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как R-1, доступен.') elseif list == 9 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как G-9, доступен.') elseif list == 10 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как V-11, доступен.') elseif list == 11 then sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как F-6, доступен.') end else end end end end function cmd_markset() sampShowDialog(4, 'Выберите маркировку', arrayDialog(dialogArr4), 'Выбрать', 'Закрыть', 2) end function cmd_mark(arg) mainIni.patrol.mark = arg if inicfg.save(mainIni, derictIni) then sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1) else sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1) end end function cmd_markget(arg) mainIni = inicfg.load(nil, directIni) sampAddChatMessage(prefix .. ' Выбранная маркировка: ' .. mainIni.patrol.mark .. '.', -1) end function cmd_help() sampAddChatMessage(prefix .. ' Список команд:', -1) sampAddChatMessage(prefix .. ' /doclad - Меню докладов.', -1) sampAddChatMessage(prefix .. ' /patrolinfo - Дополнительная информация для патруля.', -1) sampAddChatMessage(prefix .. ' /patrolstart - Заступить в патруль.', -1) sampAddChatMessage(prefix .. ' /patrolstop - Завершить патруль.', -1) end function arrayDialog(array) local dialog_str = '' for _, str in pairs(array) do dialog_str = dialog_str .. str .. '\n' end return dialog_str end function arrayAddChatMessage(array, delay) lua_thread.create(function() for _, str in pairs(array) do sampAddChatMessage(str, 0xffffff); wait(delay) end end) end
local mainIni = inicfg.load({
patrol =
{
mark = ""
}
}, directIni)
И куда это нужно вставить?Lua:local mainIni = inicfg.load({ patrol = { mark = "" } }, directIni)
А, ну да, почему оно должно меняться если ты функцию смены не задействуешь?Все равно не меняется
Функцию задействовал, но ничего не меняетсяА, ну да, почему оно должно меняться если ты функцию смены не задействуешь?
Посмотреть вложение 104990
Ну потому что код говно.Функцию задействовал, но ничего не меняется
script_name('PatrolHelper')
script_author('vidix')
script_version(1.0)
script_version_number(1)
require "lib.moonloader"
require "lib.sampfuncs"
local inicfg = require "inicfg"
local mainIni = inicfg.load({
patrol =
{
mark = ""
}
})
--local stateIni = inicfg.save(mainIni, derictIni)
-- // Доп.инфа // --
local info = {
[0] = {'Code 0 - Самый приоритетный вызов, обычно объявляется, когда офицер/офицеры на земле (ранены/убиты).', 'Code 1 - Офицер в бедственном положении, под обстрелом например, но ещё в состоянии стоять на ногах. Второй по приоритету вызов после Code 0.', 'Code 1-1 - Выезжаем с гаража.', 'Code 1-3 - Уходим с патруля [Причина].', 'Code 1-4 - Везём преступника в департамент.', 'Code 2 - Требуется подмога, тихий режим (без сирен/стробоскопов).', 'Code 3 - Срочно требуется подмога/экстренный вызов, необходимо срочно выехать на местоположение, где объявлен код.', 'Code 4 - Ситуация под контролем/справимся сами.', 'Code 4 ADAM - Ситуация под контролем/справимся сами, однако ближайшие патрули должны быть готовы оказать поддержку.', 'Code 5 - Требуется подмога близ находящихся патрулей.', 'Code 6 - Офицерам держаться подальше от опасного места. (Включая локацию)', 'Code 7 - Обеденный перерыв. (Включая локацию, где остановится юнит для перекуса)', 'Code 8 - Требуется скорая помощь. (Включая локацию и код ситуации)', 'Code 9 - Выставить оцепление. (Включая локацию)', 'Code 21 - Преступник был нейтрализован.', 'Code 50 - Доложить о составе полиции на рабочем месте.'},
[1] = {'10-3 - Радио-молчание (для срочных сообщений).', '10-4 - Принято.', '10-6 - Отрицательно.', '10-00 - Всем сотрудникам выйти на связь.', '10-20 - Локация (местоположение).', '10-27 - Смена маркировки патруля (включая старую и новую маркировку).', '10-30 - Дорожное транспортное происшествие.', '10-50 - Прошу слова.', '10-55 - Провожу трафик-стоп', '10-57 V (VICTOR) - Начинаю преследование авто с нарушителем.', '10-57 F (FOXTROT) - Начинаю пешее преследование за нарушителем.', '10-60 - Информация об автомобиле.', '10-61 - Информация об пешем преступнике.', '10-66 - Провожу трафик-стоп повышенного риска.', '10-90 - Повторите сообщение.', '10-99 - Ситуация урегулирована (Возобновление нормальной работы).'},
[2] = {'A(Adam) - Парный патрульный юнит состоящий из двух офицеров Patrol Division (Иногда может состоять из трёх офицеров).', 'L(Lincoln) - Одиночный патрульный юнит состоящий из одного офицера Patrol Division.', 'M(Mary) - Одиночный мото-юнит. (Cop Bike)', 'H(Henry,HSIU) - Одиночный или парный скоростной юнит. (Cheetah)', 'ASD (Air Support Division) - Парный Эйр юнит состоящий из пилота и координатора. (Police Maverick)', 'D(David) - Юнит Platoon D (SWAT) состоящий от двух до четырёх офицеров Platoon D.', 'C(Charles) - Юнит Platoon C состоящий от двух до четырёх офицеров Platoon C.', 'K(King) - Юнит Platoon K9 состоящий от одного до четырёх кинологов.', 'R(Robert) - Юнит детективов Robbery Homicide Division состоящий от одного до четырёх детективов.', 'G(George) - Юнит детективов Gang&Narcotics Division состоящий от одного до четырёх детективов.', 'VICE - Юнит детективов Organised Crime and Vice Division состоящий от одного до четырёх детективов.', 'F(Felix) - Юнит детективов Internal Affairs Division состоящий от одного до четырёх детективов.'}
}
prefix = "{ffffff}[{0055ff}Patrol{ff3c0f}Helper{ffffff}]:"
-- // Диалоги // --
local dialogArr2 = {"Ситуационные коды", "Тен-коды", "Маркировки"}
local dialogArr3 = {"A(Adam)", "L(Lincoln)", "M(Mary)", "H(Henry)", "ASD(Air Support Division)", "D(David)", "C(Charles)", "K(King)", "R(Robert)", "G(George)", "VICE", "F(Felix)"}
local dialogArr4 = {"A(Adam)", "L(Lincoln)", "M(Mary)", "H(Henry)", "ASD(Air Support Division)", "D(David)", "C(Charles)", "K(King)", "R(Robert)", "G(George)", "VICE", "F(Felix)"}
function main()
if not isSampLoaded() or not isSampfuncsLoaded() then return end
while not isSampAvailable() do wait(100) end
print('Скрипт успешно загружен!')
sampAddChatMessage(prefix ..' Скрипт {2de320}успешно {ffffff}загружен! Введите команду /phelp.', -1)
sampRegisterChatCommand('phelp', cmd_help)
sampRegisterChatCommand('pinfo', function()
sampShowDialog(2, 'Выберите раздел', arrayDialog(dialogArr2), 'Выбрать', 'Закрыть', 2)
end)
sampRegisterChatCommand('pstart', function()
sampShowDialog(3, 'Выберите маркировку', arrayDialog(dialogArr3), 'Выбрать', 'Закрыть', 2)
end)
sampRegisterChatCommand('markset', cmd_markset)
sampRegisterChatCommand('markget', cmd_markget)
sampRegisterChatCommand('pstop', cmd_stop)
sampRegisterChatCommand('doclad', cmd_doclad)
_, id = sampGetPlayerIdByCharHandle(PLAYER_PED)
nick = sampGetPlayerNickname(id)
while true do
wait(0)
local result, button, list, input = sampHasDialogRespond(2)
if result then
if button == 1 then
if list == 0 then
sampAddChatMessage('Список ситуационных кодов:', -1)
arrayAddChatMessage(info[list], 70)
elseif list == 1 then
sampAddChatMessage('Список тен-кодов:', -1)
arrayAddChatMessage(info[list], 70)
elseif list == 2 then
sampAddChatMessage('Список маркировок:', -1)
arrayAddChatMessage(info[list], 70)
end
else
end
end
local result, button, list, input = sampHasDialogRespond(3)
if result then
if button == 1 then
if list == 0 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как A-6, доступен.')
elseif list == 1 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как L-4, доступен.')
elseif list == 2 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как M-2, доступен.')
elseif list == 3 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как H-7, доступен.')
elseif list == 4 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как ASD-3, доступен.')
elseif list == 5 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как D-5, доступен.')
elseif list == 6 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как C-8, доступен.')
elseif list == 7 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как K-6, доступен.')
elseif list == 8 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как R-1, доступен.')
elseif list == 9 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как G-9, доступен.')
elseif list == 10 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как V-11, доступен.')
elseif list == 11 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как F-6, доступен.')
end
else
end
end
local result, button, list, input = sampHasDialogRespond(4)
if result then
if button == 1 then
if list == 0 then
mainIni.patrol.mark = Adam
if inicfg.save(mainIni, derictIni) then
sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1)
else
sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1)
end
elseif list == 1 then
mainIni.patrol.mark = Lincoln
if inicfg.save(mainIni, derictIni) then
sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1)
else
sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1)
end
elseif list == 2 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как M-2, доступен.')
elseif list == 3 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как H-7, доступен.')
elseif list == 4 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как ASD-3, доступен.')
elseif list == 5 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как D-5, доступен.')
elseif list == 6 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как C-8, доступен.')
elseif list == 7 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как K-6, доступен.')
elseif list == 8 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как R-1, доступен.')
elseif list == 9 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как G-9, доступен.')
elseif list == 10 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как V-11, доступен.')
elseif list == 11 then
sampSendChat('/r '.. nick ..' на CONTROL, заступаю в патруль как F-6, доступен.')
end
else
end
end
end
end
function cmd_markset(arg)
mainIni.patrol.mark = arg
if inicfg.save(mainIni, derictIni) then
sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1)
else
sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1)
end
end
function cmd_mark(arg)
mainIni.patrol.mark = arg
if inicfg.save(mainIni, derictIni) then
sampAddChatMessage(prefix .. ' {60a813}Маркировка успешно изменена.', -1)
else
sampAddChatMessage(prefix .. ' {bf524e}Маркировку не удалось сохранить.', -1)
end
end
function cmd_markget(arg)
mainIni = inicfg.load(nil, directIni)
sampAddChatMessage(prefix .. ' Выбранная маркировка: ' .. mainIni.patrol.mark .. '.', -1)
end
function cmd_help()
sampAddChatMessage(prefix .. ' Список команд:', -1)
sampAddChatMessage(prefix .. ' /doclad - Меню докладов.', -1)
sampAddChatMessage(prefix .. ' /patrolinfo - Дополнительная информация для патруля.', -1)
sampAddChatMessage(prefix .. ' /patrolstart - Заступить в патруль.', -1)
sampAddChatMessage(prefix .. ' /patrolstop - Завершить патруль.', -1)
end
function arrayDialog(array)
local dialog_str = ''
for _, str in pairs(array) do
dialog_str = dialog_str .. str .. '\n'
end
return dialog_str
end
function arrayAddChatMessage(array, delay)
lua_thread.create(function()
for _, str in pairs(array) do
sampAddChatMessage(str, 0xffffff); wait(delay)
end
end)
end