Приостановка скрипта до выполнения действия

NatsuDragnil

Новичок
Автор темы
6
0
Версия MoonLoader
.026-beta
Пишу биндер для сампа. В некоторых моментах нужно подождать ответ игрока, и только потом продолжать отыгровку. Как заставить скрипт ждать, пока я нажму какую нибудь кнопку или введу команду, чтобы он продолжил?
 

XONE

Участник
7
6
Делаешь глобальную переменную к примеру "Wait = false"
Делаешь в отдельном потоке ожидание выполненного действия "пока я нажму какую нибудь кнопку или введу команду", и после выполнения делаешь Wait = true
Пример
Lua:
local samp = require 'samp.events'

function samp.onServerMessage(color, text) --пример выполнения действия (сообщения в чате 'test message')
    if text == "test message" then
        Wait = true
    end
end
А теперь в коде выполнения делаешь:
Lua:
--код который выполняется до паузы


Wait = false --код ожидания выполнения действия
while (Wait == false) do
    wait (0)
end

--код который продолжит выполняться после паузы


Это лишь пример как можно реализовать ожидание выполнения, главное что бы твой код выполнения действия и ожидания выполнения действия были в разных потоках
 
  • Нравится
Реакции: Poopseek