Page 1 of 1

реконектор

Posted: 2006-04-12 16:41:58
by Nort777
дайте плиз скрипт и скажите че там делать нуна и куда его вставлять

Posted: 2006-04-12 17:16:44
by DerMeister =)
Вот, выдрал из скриптов от (с)Askaneli
Принцип действия понимаю, но не полностью...
Надо поставить галочку Save Password

Code: Select all

sub Reconnector() 
var ReconnectTime, RFlag
ReconnectTime = '0'
RFlag = 1
Repeat
While (UO.ObjAtLayer('Bpack') == '')
if RFlag Then
ReconnectTime = MakeTime()
RFlag = 0
endif
Wait(20000) # WorldSave Protection
UO.Say('')
Wait(3000)
UO.Say('')
Wait(3000)
UO.Say('')
Wait(3000)
UO.LDblClick(357,164)
UO.LClick(616,459)
Wait(3000)
WEnd
Wait(3000)
if (RFlag == 0) and (ReconnectTime <> '0') Then
UO.Exec('terminate Alchemy')  #сюда похоже нужно писать название другого скрипта, который нужно перезапустить после реконекта (для прокачки)
wait(1000)
UO.Exec('exec Alchemy')
UO.TextOpen()
UO.TextPrint('Disconnected & Reconnected @ '+ReconnectTime)
RFlag = 1
ReconnectTime = '0'
endif
Until false
end sub

sub MakeTime()
VAR D, T, Ret, i
Ret = STR(UO.Time())
T = ""
For i = 0 To Len(Ret)
T = Ret[Len(Ret)-i] + T
If (I == 2) OR (I == 4) Then
T = ":" + T
EndIf
Next
Ret = STR(UO.Date())
D = ""
For i = 0 To Len(Ret)
D = Ret[Len(Ret)-i] + D
If (I == 2) OR (I == 4) Then
D = "." + D
EndIf
Next
Ret = T + " @ " + D
RETURN Ret
end sub

Posted: 2006-04-13 06:12:18
by Askaneli
Написать '' означает ничего не написав нажать ENTER вот и весь принцип. То бишь скрипт просто тычет ENTER через опеределённые промежутки времени при определённом условии.

Скрипты основные нада перезапускать по некоторым причинам. Например на крафте если используется AUTOMENU то после реконекта оно сбивается. Да и динамические задержки могут криво отработать. Я предпочитаю реконектором перезапускать основной модуль ...

Posted: 2006-04-13 08:55:36
by Edred
Да и вообще, давно пора переписать этот реконнектор с использованием Ongump и IsOnline, будет гораздо надежнее...

Posted: 2006-04-13 09:28:10
by Askaneli
Edred wrote:Да и вообще, давно пора переписать этот реконнектор с использованием Ongump и IsOnline, будет гораздо надежнее...


:)

Posted: 2006-04-13 09:51:08
by SLAK
Edred wrote:Да и вообще, давно пора переписать этот реконнектор с использованием Ongump и IsOnline, будет гораздо надежнее...

Да и вообще, почему ты этого до сих пор не сделал и не выложил на суд жюри :D

Posted: 2006-04-13 14:49:25
by DerMeister =)
Кстати, а ведь помоему вполне реально сделать реконнектор с вводом пароля...
Кстати, тогда вопрос: можно-ли на лету преобразовывать букву в код клавиши?

Posted: 2006-04-13 15:08:52
by Edred
SLAK wrote:Да и вообще, почему ты этого до сих пор не сделал и не выложил на суд жюри :D


Я уже почти год как не играю... А писать реконнектор в оффлайне... бррр... да и времени просто нету.

Posted: 2006-04-13 16:39:59
by SLAK
Edred wrote:Я уже почти год как не играю... А писать реконнектор в оффлайне... бррр... да и времени просто нету.


Эх...
uo.IsOnLine() возвращает трю / фалс при наличии / отсутствии коннекта?

Posted: 2006-04-13 17:55:33
by Edred
SLAK wrote:Эх...
uo.IsOnLine() возвращает трю / фалс при наличии / отсутствии коннекта?


По идее. Уже не помню, мне когда-то Йоко говорил про то, что она там возвращает, но это было давно и хистори давно накрылось медным тазом. А команда, естественно, недокументированная...

Надо тестить просто.

Posted: 2006-04-14 03:20:48
by Destruction
Edred wrote:
SLAK wrote:Эх...
uo.IsOnLine() возвращает трю / фалс при наличии / отсутствии коннекта?


По идее. Уже не помню, мне когда-то Йоко говорил про то, что она там возвращает, но это было давно и хистори давно накрылось медным тазом. А команда, естественно, недокументированная...

Надо тестить просто.

Всё верно.

PS: На 2.0.3 у меня работал безотказно.