LUA / Вопрос про скрипт - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Sanoxxx, Alowir  
Форум » Программирование » Lua программирование » LUA / Вопрос про скрипт (Скрипт для адвокатов)
LUA / Вопрос про скрипт
_Droid_ Дата: Суббота, 10.03.2018, 15:01 | Сообщение # 1
Боец
Сообщений: 126
Статус: Offline
Всем привет. Пишу скрипт для адвокатов, упрощающих работу, кое-что есть, но столкнулся с такими проблемами, как:
- Скрипт загружается, но не отвечает (т.е не работает)
- Смешиваются диалоги (запустив один диалог, не факт что скрипт запуститься снова или откроет второй диалог. Или же, если я один раз запустил диалог_2 , не факт что он запуститься снова)
Суть скрипта: парсит игроков в зоне стрима (или, если можно как-то снизить радиус то буду тоже рад), выводит их ники в диалог, далее я выбираю игрока, выбивает окно со способом оплаты (наличные\банк), выбираю способ оплаты и ввожу сумму, а далее идет команда.

Кидаю код, буду рад помощь, хотя бы тут:
Код
script_name('stream_checker')
require "lib.moonloader"

active1 = false
active2 = false
active3 = false
active4 = false

nicks = {}
name = ""
id = 0

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    sampRegisterChatCommand("adv", checker)
    while true do
    wait(0)
  if active1 then
   sampSetCurrentDialogListItem(0)
   repeat
    wait(0)
    re, button, listrpone, input = sampHasDialogRespond(123)
   until re
   if button == 0 then
    _ = sampCloseCurrentDialogWithButton(0)
   else
   name = nicks[listrpone+1]
   for o = 0, 1000 do
    if sampIsPlayerConnected(o) then
     if sampGetPlayerNickname(o) == name then
      id = o
      dialog_selected()
     end
    end
   end
  end
  if active2 then
   sampSetCurrentDialogListItem(0)
   repeat
    wait(0)
    re, button, listrpone, input = sampHasDialogRespond(132)
   until re
   if button == 0 then
    _ = sampCloseCurrentDialogWithButton(0)
   else
   if listrpone == 0 then dialog_free1()
   if listrpone == 1 then dialog_free2()
   end
   end
  end
    end
    if active3 then
   sampSetCurrentDialogListItem(0)
   repeat
    wait(0)
    re, button, listrpone, input = sampHasDialogRespond(142)
   until re
   if button == 0 then
    _ = sampCloseCurrentDialogWithButton(0)
   else
   if input then
    sampSendChat(string.format("/free %d 1 %d", id, input))
   end
  end
    end
    if active4 then
   sampSetCurrentDialogListItem(0)
   repeat
    wait(0)
    re, button, listrpone, input = sampHasDialogRespond(143)
   until re
   if button == 1 then
    _ = sampCloseCurrentDialogWithButton(1)
   else
   if input then
    sampSendChat(string.format("/free %d 2 %d", id, input))
   end
  end
    end
end
end
end

function checker()
    nicks = {}
    for i = 0, 1000 do
        if sampIsPlayerConnected(i) then
            local _, actor = sampGetCharHandleBySampPlayerId(i)
            if doesCharExist(actor) then
     nick = sampGetPlayerNickname(i)
     table.insert(nicks, nick)
     dialog()
            end
        end
    end
end

function dialog()
    stream = ""
    for n = 1, #nicks do
  stream = string.format("%s\n%s", stream , nicks[n])
    end
    activate1()
    sampShowDialog(123, "Игроки в зоне стрима", stream, "Закрыть", "", 2)
end

function dialog_selected()
    activate2()
    sampShowDialog(132, string.format("Выбран игрок: %s[%d] | Уровень: %d", name, id, sampGetPlayerScore(id)), "Наличные\nБанк", "Закрыть", "", 2)
end

function dialog_free1()
    activate3()
    sampShowDialog(142, string.format("Выбран игрок: %s[%d] | Уровень: %d", name, id, sampGetPlayerScore(id)), "Введите текст сообщенмя", "Закрыть", "", 1)
end
function dialog_free2()
    activate4()
    sampShowDialog(143, string.format("Выбран игрок: %s[%d] | Уровень: %d", name, id, sampGetPlayerScore(id)), "Введите текст сообщенмя", "Закрыть", "", 1)
end

function activate1()
    active1 = not active1
end
function activate2()
    active2 = not active2
end
function activate3()
    active3 = not active3
end
function activate4()
    active4 = not active4
end


--------------------
F.A.Q | Как скачивать с MediaDisk без установщика? - http://cheat-master.ru/forum/14-684924-1
F.A.Q | Как скачивать видео из интернета без программ? - http://cheat-master.ru/forum/2-688571-1
Форум » Программирование » Lua программирование » LUA / Вопрос про скрипт (Скрипт для адвокатов)
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Лучшие пользователи
Admin [39113]

GеNius [7209]

[CM]Russel [5557]

kenlo763 [4952]

[CM]AGRESSOR [4639]

Snake_Firm [4452]

Сэс [4416]

Artem_Buero [4223]

[CM]Durman [3204]

[CM]Рафаэль [3080]

iMaddy [2855]

sky_Woker [2854]

getrekt [2745]

Новые пользователи
rubenia18 [21:17]

pokotiloroman91 [18:24]

stephensh5 [12:00]

calliesv7 [06:11]

louqm16 [22:14]

artushak [16:32]

Kingpolker [15:42]

leeyv11 [15:12]

Trappa17 [01:00]

Djamalchik [16:40]

ajeense [14:24]

654470559 [08:55]

Newtone [03:01]