Таймер покупки авто

aff

Известный
Автор темы
26
0
Версия MoonLoader
.026-beta
1641414724230.png
Хочу сделать чтобы когда открывалось это окно у меня отчитывался таймер (5-6секунд) и когда пройдет это время был какой то знак

Все на что ума хватило вот)
Код:
script_name("timer ab")

require 'moonloader'
local sampev = require "lib.samp.events"

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end

    sampAddChatMessage("helper ab loaded", -1)
  while true do
    wait(0)
    if time then
      setTimeOfDay(time, 0)
    end
  end
end

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find("Технический паспорт транспорта") then

        sampAddChatMessage("вы открыли диалог с покупкой авто", -1)

        return false
        end
    end
end
 

SomaGnoma

Известный
442
152
Посмотреть вложение 130140Хочу сделать чтобы когда открывалось это окно у меня отчитывался таймер (5-6секунд) и когда пройдет это время был какой то знак

Все на что ума хватило вот)
Код:
script_name("timer ab")

require 'moonloader'
local sampev = require "lib.samp.events"

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end

    sampAddChatMessage("helper ab loaded", -1)
  while true do
    wait(0)
    if time then
      setTimeOfDay(time, 0)
    end
  end
end

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find("Технический паспорт транспорта") then

        sampAddChatMessage("вы открыли диалог с покупкой авто", -1)

        return false
        end
    end
end
wait(5000)
 

qdIbp

Автор темы
Проверенный
1,386
1,141
По сути можно, НО это не таймер, это задержка, он задерживает весь скрипт
самый простой таймер это

Lua:
local timer = 0

function main()
    timer = os.time() + 3

    while true do wait(0)
        if timer == os.time() then print('xyi') end
    end
end
главное 4 строку не сувать в беск.цикл без условных операторов
Посмотреть вложение 130140Хочу сделать чтобы когда открывалось это окно у меня отчитывался таймер (5-6секунд) и когда пройдет это время был какой то знак

Все на что ума хватило вот)
Код:
script_name("timer ab")

require 'moonloader'
local sampev = require "lib.samp.events"

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end

    sampAddChatMessage("helper ab loaded", -1)
  while true do
    wait(0)
    if time then
      setTimeOfDay(time, 0)
    end
  end
end

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find("Технический паспорт транспорта") then

        sampAddChatMessage("вы открыли диалог с покупкой авто", -1)

        return false
        end
    end
end

Lua:
local on = require "lib.samp.events"
local timer = 0

function on.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find('Технический паспорт транспорта')then
        timer = os.time() + 5
    end
end
function main()

    while true do wait(0)
        if timer == os.time() then
            timer = 0
            sampAddChatMessage('Я ебу собак',-1)
        end
    end
end
 
  • Нравится
Реакции: SomaGnoma

ARMOR

kjor32 is legend
Модератор
4,852
6,081
По сути можно, НО это не таймер, это задержка, он задерживает весь скрипт
самый простой таймер это

Lua:
local timer = 0

function main()
    timer = os.time() + 3

    while true do wait(0)
        if timer == os.time() then print('xyi') end
    end
end
главное 4 строку не сувать в беск.цикл без условных операторов


Lua:
local on = require "lib.samp.events"
local timer = 0

function on.onShowDialog(dialogId, style, title, button1, button2, text)
    if title:find('Технический паспорт транспорта')then
        timer = os.time() + 5
    end
end
function main()

    while true do wait(0)
        if timer == os.time() then
            timer = 0
            sampAddChatMessage('Я ебу собак',-1)
        end
    end
end
А можно и не ебаться так сильно, а просто создать поток в хуке и ждать 6 сек, после чего отправлять сообщение, Тем самым сократив код, и похуй что оно задерживает весь скрипт
Lua:
local ev = require "lib.samp.events"

function ev.onShowDialog(id, style, title, b1, b2, text)
    if title:find('Технический паспорт транспорта') then
        lua_thread.create(function()
            wait(6000)
            sampAddChatMessage("Эй ребята, приключений час!", -1)
            addOneOffSound(nil, nil, nil, 31204) -- прикольная функция, не ебу зачем здесь, просто будет проигрывать звук
        end)
    end
end
 
Последнее редактирование:
  • Нравится
Реакции: SomaGnoma и aff

qdIbp

Автор темы
Проверенный
1,386
1,141
А можно и не ебаться так сильно, а просто создать поток в хуке и ждать 6 сек, после чего отправлять сообщение, Тем самым сократив код, и похуй что оно задерживает весь скрипт
Lua:
local ev = require "lib.samp.events"

function ev.onShowDialog(id, style, title, b1, b2, text)
    if title:find('Технический паспорт транспорта') then
        lua_thread.create(function()
            wait(6000)
            sampAddChatMessage("Эй ребята, приключений час!", -1)
        end)
    end
end
Этот код подходит только для отдельных скриптов либо для маленьких