Page 1 of 1

ожидание другова SUB

Posted: 2005-09-08 17:42:01
by MazaFaka
можно ли сделать так?
sub test()
if uo.life<100 then
uo.exec('bandageself')
end if
тут нужно вставить типа
if (sub (другой оператор)) then
ждать его окончания
end if
дальше продолжение скрипта ононе важно
end sub

собственно нужна функция для ожидания окончания другова скрипта

Posted: 2005-09-08 18:24:21
by Leo
Воспользуйся глобальными переменными. В 1 скрипте в начале поставь одно значение переменной а в конце другое.
Во 2 скрипте проверка.

Posted: 2005-09-08 18:39:56
by MazaFaka
Воспользуйся глобальными переменными. В 1 скрипте в начале поставь одно значение переменной а в конце другое.
Во 2 скрипте проверка.

это понятно ! но как заставить эту проверку ждать када появится
в конце другое
??????

Posted: 2005-09-08 19:25:03
by Leo

Code: Select all

sub one() 
UO.SetGlobal("test","a")
...
скрипт
...
UO.SetGlobal("test","b")
endsub

Code: Select all

sub two() 
If UO.GetGlobal("test")=="a" Then
repeat
wait(100)
until UO.GetGlobal("test")=="b"
Endif
endsub


Подробнее тут :wink:

Posted: 2005-09-08 20:42:14
by MazaFaka
спасибо :twisted:

Re: ожидание другова SUB

Posted: 2005-09-09 01:51:10
by PCGamer
MazaFaka wrote:можно ли сделать так?
sub test()
if uo.life<100 then
uo.exec('bandageself')
end if
тут нужно вставить типа
if (sub (другой оператор)) then
ждать его окончания
end if
дальше продолжение скрипта ононе важно
end sub

собственно нужна функция для ожидания окончания другова скрипта


Если у тебя функция возвращает значение, то можно писать так как ты сказал. If sub >0 then
Возвращать значение из функции коммандой return 'значение'. После её выполнения функция прекращает работу.

Posted: 2005-09-09 09:59:57
by 666Man666
Что-то не допру если функ-я будет запускатся внутри той функ-и то пока другая функция не отработает, дальше дело не пойдёт.... или ты её будеш запускать как UO.Exec('exec func') ?

Posted: 2005-09-09 12:40:21
by PCGamer
666Man666 wrote:Что-то не допру если функ-я будет запускатся внутри той функ-и то пока другая функция не отработает, дальше дело не пойдёт.... или ты её будеш запускать как UO.Exec('exec func') ?

ДА.