Возможно ли в функцию main() внести несколько while true do wait(0)?

Vl4dik

Новичок
Автор темы
27
0
Форматирование кода
Возможно ли в функцию main() внести несколько while true do wait(0)? Я знаю, что можно две функции внести сразу под один (while...), но мне нужно именно так как я написал. Прошу пожалуйста помочь) К примеру написал по простому:
function main()
while true do wait(0)
One()
end
while true do
wait(0)
Two()
end
end

function One()
sampAddChatMessage("Один")
end

function
Two()
sampAddChatMessage("Два")
end
 

Izvinisb

иди работай
Проверенный
964
594
Возможно ли в функцию main() внести несколько while true do wait(0)? Я знаю, что можно две функции внести сразу под один (while...), но мне нужно именно так как я написал. Прошу пожалуйста помочь) К примеру написал по простому:
function main()
while true do wait(0)
One()
end
while true do
wait(0)
Two()
end
end

function One()
sampAddChatMessage("Один")
end

function
Two()
sampAddChatMessage("Два")
end
В чем проблема проверить?
 

AnWu

Чайный
Всефорумный модератор
4,503
4,665
Создавать потоки в вечном цикле вроде как затея гиблая, ибо может игра зависнуть
впринципе может и вселенная сколлабсироваться. никто точно не знает что будет.
 

Vl4dik

Новичок
Автор темы
27
0
То есть, я не смогу сделать так(код ниже)? И какой из функций будет правильнее или м.б. совсем все не так? Просто хотелось бы порядочность(по полочкам все) видеть. Буду очень благодарен если укажите ошибку)
function main()
lua_thread.create(One)
while true do wait(0)
Two()
lua_thread.create(Three)
end
end

function
One()
while true do wait(0)
sampAddChatMessage("Один")
end
end

function
Two()
sampAddChatMessage("Два")
end

function Three()
sampAddChatMessage("Три")
end
 

wulfandr

Известный
641
257
То есть, я не смогу сделать так(код ниже)? И какой из функций будет правильнее или м.б. совсем все не так? Просто хотелось бы порядочность(по полочкам все) видеть. Буду очень благодарен если укажите ошибку)
function main()
lua_thread.create(One)
while true do wait(0)
Two()
lua_thread.create(Three)
end
end

function
One()
while true do wait(0)
sampAddChatMessage("Один")
end
end

function Two()
sampAddChatMessage("Два")
end

function
Three()
sampAddChatMessage("Три")
end
Lua:
function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    lua_thread.create(One)
    lua_thread.create(Two)
    wait(-1)
end

function One()
    while true do wait(0)
        sampAddChatMessage("Один", -1)
    end
end

function Two()
    sampAddChatMessage("Два", -1)
    lua_thread.create(Three)
end

function Three()
    sampAddChatMessage("Три", -1)
end
 
Последнее редактирование:
  • Нравится
Реакции: wheythisbitch1

Vl4dik

Новичок
Автор темы
27
0
Lua:
function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    lua_thread.create(One)
    lua_thread.create(Two)
    wait(-1)
end

function One()
    while true do wait(0)
        sampAddChatMessage("Один", -1)
    end
end

function Two()
    sampAddChatMessage("Два", -1)
    lua_thread.create(Three)
end

function Three()
    sampAddChatMessage("Три", -1)
end
А можно подругому как-то, чтобы глаза не мозолить глаза этим lua_thread.create, то есть, если возможно написать ua_thread.create(One, Two, Three, ...), по твоему это каждый раз прописывать нужно будет?
function main()
lua_thread.create(One)
lua_thread.create(Two)
lua_thread.create(Three)
lua_thread.create(Four)
lua_thread.create(Five)
end
И как так же написать как ты? Lua: и сам код, а то у меня какие-то баллы отбирают за форматирование текста. Новичок еще, не особо разбираюсь на этом форуме)
 

Lo_Smite

Участник
56
9
А можно подругому как-то, чтобы глаза не мозолить глаза этим lua_thread.create, то есть, если возможно написать ua_thread.create(One, Two, Three, ...), по твоему это каждый раз прописывать нужно будет?
function main()
lua_thread.create(One)
lua_thread.create(Two)
lua_thread.create(Three)
lua_thread.create(Four)
lua_thread.create(Five)
end
И как так же написать как ты? Lua: и сам код, а то у меня какие-то баллы отбирают за форматирование текста. Новичок еще, не особо разбираюсь на этом форуме)
Lua:
lua.thread.create(Odin, Eva, tree) -- Не правильное использованин создание потоков
-- так делать нельзя

lua.thread.create(Odin)
lua.thread.create(Eva)
lua.thread.create(three)
-- Единственный верный способ
-- Создавать можно в main после того как проверка сампа пройдет
--Либо же внутри функции которая ранее была объявлена
 
  • Нравится
Реакции: Vl4dik

Vl4dik

Новичок
Автор темы
27
0
Lua:
lua.thread.create(Odin, Eva, tree) -- Не правильное использованин создание потоков
-- так делать нельзя

lua.thread.create(Odin)
lua.thread.create(Eva)
lua.thread.create(three)
-- Единственный верный способ
-- Создавать можно в main после того как проверка сампа пройдет
--Либо же внутри функции которая ранее была объявлена
Cпасибо большое, единственный кто понятно разъяснил))
А вот в main() можно написать функцию(ии) как примерно такую которая снизу?
Lua:
function main()    
    function Odin()
        while true do wait(0)
            sampAddChatMessage("Один", -1)
        end
    end
end
 
Последнее редактирование:

Lo_Smite

Участник
56
9
Cпасибо большое, единственный кто понятно разъяснил))
А вот в main() можно написать функцию(ии) как примерно такую которая снизу?
Lua:
function main()   
    function Odin()
        while true do wait(0)
            sampAddChatMessage("Один", -1)
        end
    end
end

Можно, но не забывай про задержки иначе крашиться до запуска будет да и фпс будет очень низок и может игра тупо зависнуть.

То что ты сейчас написал:
Без проверки загрузки сампа создает поток один
Поток один создает бесконечный цикл и по кд шлет слово один в чатлог
 
  • Нравится
Реакции: Vl4dik