Таймер
Moderators: Murderator+, Murderator
-
Scripts Writer
- Posts: 2259
- Joined: 2005-04-19 18:00:29
- Location: Московская область
- Contact:
Динамическая пауза.
Code: Select all
k = 0
while (k<50)
wait(100)
k = k + 1
wendА не могли бы вы пояснить как и куда именно вставить таймер.
и поясните пожалуста основной принцип действия таймера
Code: Select all
sub heal()
var frizheal = "You apply bandages but"
var hil = "You put bloody"
var bloodbandage = 0x0E20
var bandage = 0x0E21
var Sunduk = '0x40000FE8'
var DoborBintov = 1
var DoborRegov = 1
while not uo.Dead()
if DoborBintov == 1 then
DoborBintov()
end if
if uo.Count('0x0F0B') == 0 then
MakeRefresh()
end if
if uo.Life < uo.Str then
bandageself()
else
ClickNaUlej()
end if
wend
end sub
######################################################################################################
sub DoborBintov()
if uo.count('0x0E20') >= 100 then
uo.findtype('0x0E20', '-1', 'backpack')
if uo.getquantity('finditem') >= 60 then
uo.moveitem('finditem', '100', '0x40000FE8')
wait(700)
endif
end if
if uo.count('0x0E21') < 1000 then
uo.findtype('0x0E21', '-1', '0x40000FE8')
if uo.getquantity('finditem') >= 60 then
uo.moveitem('finditem', '100', 'my')
wait(700)
else
uo.print( 'Áèíòû â ñóíäóêå êîí÷èëèñü!' )
return
endif
end if
end sub
######################################################################################################
sub DoborRegov()
uo.findtype('0x0F7A', '-1', '0x40000FE8')
if uo.getquantity('finditem') >= 60 then
uo.moveitem('finditem', '150', 'my')
wait(700)
endif
end sub
######################################################################################################
sub bandageself()
if UO.Stamina < 30 then
uo.UseType('0x0F0B')
end if
uo.exec('bandageself')
uo.DeleteJournal()
repeat
wait(100)
until uo.InJournal("You apply bandages but") or uo.InJournal("You put bloody")
end sub
######################################################################################################
sub ClickNaUlej()
var ulej = 0x091A
repeat
UO.UseFromGround(ulej)
wait(100)
until uo.Life < (uo.Str - 10)
end sub
######################################################################################################
sub MakeRefresh()
var garlick='0x0F7A'
if uo.bp < 150 then
DoborRegov()
end if
while not uo.Count('0x0F0B') == 112 #
uo.WaitMenu('What sort of potion do you want to','Refresh')
uo.UseType(garlick)
uo.DeleteJournal()
repeat
wait(100)
until uo.InJournal("mes1") or uo.InJournal("mes")
wend
end sub
-
DerMeister =)
- Expert!
- Posts: 1032
- Joined: 2006-02-25 21:48:38
Хуясе... а где тут "динамика"?You Must Die wrote:Динамическая пауза.
Code: Select all
k = 0 while (k<50) wait(100) k = k + 1 wend
DerMeister сейчас на нейрале!
-
DerMeister =)
- Expert!
- Posts: 1032
- Joined: 2006-02-25 21:48:38
Re: Таймер
В каком случае ону тебя ничего не делает? И зачем сначала запускать? Сделай просто "вечный" цикл и фсёRijo wrote:Как можно сделать тамймер на то что если скрипт ничего не делает, то он его бы запускал сначала. А то у меня действеие скрипта зависит от проверки сообщений в журнале. И если что то не так, то он подвисает и просто чар простаивает
DerMeister сейчас на нейрале!
-
DerMeister =)
- Expert!
- Posts: 1032
- Joined: 2006-02-25 21:48:38
Фпятёрке...Rijo wrote:Code: Select all
... repeat UO.UseFromGround(ulej) wait(100) until uo.Life < (uo.Str - 10) ...
ЗЫ: Каким образом он может "ничего не делать?" Этоже скрипт на прокачку... [/quote]
DerMeister сейчас на нейрале!
Допустим чар наложил на себя бинт и ждет пока в журнале не появится сообщага о том положен ли бинт или нет
вот типа что то этого. А скрипт и так вечный
. Ну смысле пока выполняются все условия
Code: Select all
repeat
wait(100)
until uo.InJournal("You apply bandages but") or uo.InJournal("You put bloody")
[/quote]DerMeister =) wrote:Фпятёрке...Rijo wrote:Code: Select all
... repeat UO.UseFromGround(ulej) wait(100) until uo.Life < (uo.Str - 10) ...![]()
ЗЫ: Каким образом он может "ничего не делать?" Этоже скрипт на прокачку...
а тут то что не так?
-
DerMeister =)
- Expert!
- Posts: 1032
- Joined: 2006-02-25 21:48:38
1) Если ты имеешь ввиду ситуацию, когда сообшения о хеле не приходят, то используй счётчик:
Принцип работы: даже если сообщения (You apply bandages but и You put bloody) по каким либо причинам не появятся, то счётчик выведет из цикла (условие выхода: schetchik >200 ) Число подстрой под себя...
2)
У тебя не лагает? Или это так специально задумано 100мс задержка?
Code: Select all
var schetchik=0
repeat
schetchik=schetchik+1
wait(100)
until uo.InJournal("You apply bandages but") or uo.InJournal("You put bloody") or schetchik >2002)
wait(100)Rijo wrote:а тут то что не так?
У тебя не лагает? Или это так специально задумано 100мс задержка?
DerMeister сейчас на нейрале!
-
DerMeister =)
- Expert!
- Posts: 1032
- Joined: 2006-02-25 21:48:38
[/quote]Rijo wrote:wait(100)Rijo wrote:а тут то что не так?
нет не лагает, специально поставил такую паузу чтобы инжект не потерял случайно сообщагу
У тебя не лагает? Или это так специально задумано 100мс задержка?. Все равно теряет
Да я не про это (тут всё правильно
Code: Select all
repeat
UO.UseFromGround(ulej)
wait(100)
until uo.Life < (uo.Str - 10) DerMeister сейчас на нейрале!
-
DerMeister =)
- Expert!
- Posts: 1032
- Joined: 2006-02-25 21:48:38
Не может он её терять! Если сервер присылает то потеря не возможна!Rijo wrote:нет не лагает, специально поставил такую паузу чтобы инжект не потерял случайно сообщагу. Все равно теряет
Совет попробуй соощения "упростить, напимер вместо "You apply bandages but" попробуй просто "bandages"...
DerMeister сейчас на нейрале!
Ну в принципе упростил как ты посоветовал. Ща посмотрим как будет работать.
Ну и получилось примерно так
может че неправлень сделал. На всякий случай выложил сюда
Ну и получилось примерно так
Code: Select all
sub bandageself()
var schetchik=0
if UO.Stamina < 30 then
uo.UseType('0x0F0B')
end if
uo.exec('bandageself')
uo.DeleteJournal()
repeat
schetchik=schetchik+1
wait(100)
until uo.InJournal("bandages but") or uo.InJournal("bloody") or schetchik >300
end sub
Code: Select all
repeat
UO.UseFromGround(ulej)
wait(100)
until uo.Life < (uo.Str - 10)
-
DerMeister =)
- Expert!
- Posts: 1032
- Joined: 2006-02-25 21:48:38
Да мне просто интересно как он у тебя 10 раз в секунду будет хуярить по улью... серв с ума не сходит???Rijo wrote:ну а тут я собсно не понял что тебя удевилоCode: Select all
repeat UO.UseFromGround(ulej) wait(100) until uo.Life < (uo.Str - 10). Он у меня раза 3-4 тыкает на улей и и потом лечится до тех пор пока uo.Life = uo.str
DerMeister сейчас на нейрале!
-
DerMeister =)
- Expert!
- Posts: 1032
- Joined: 2006-02-25 21:48:38
-
No More Lies
- Posts: 39
- Joined: 2006-05-26 11:44:07
- Location: Москва
- Contact: