Yoko
http://forum.yoko.com.ua/

Спаринг
http://forum.yoko.com.ua/viewtopic.php?f=17&t=14834
Page 1 of 1

Author:  Alex82 [ 2009-06-05 10:23:51 ]
Post subject:  Спаринг

Кому не тяжко гляньте. Пишу скрипт на спарринг. Чар должен бить оппонента, и при хп жертвы меньше 50% останавливать бой и лечить его. И так до победного.
Проблема в том что не могу нормально зациклить действие. Чар все время пытается юзать оружие на цель. Вот сам скрипт


Quote:
sub sparing()
while not uo.Dead()
if uo.GetHp('0x0029D60B') > uo.getMaxHP('0x0029D60B')/2 then
atak()
else
hil()
endif
wend
end sub

sub hil()
uo.deletejournal()
repeat
uo.warmode(0)
UO.Usetype("0x0E21")
UO.Exec("waittargetobject 0x0029D60B")
wait(4500)
until uo.injournal('does not need you to heal or cure him')
end sub

sub atak()
uo.warmode(1)
UO.Exec("attack 0x0029D60B")
wait(100)
uo.usetype("0x13FA") # тип оружия
wait(100)
uo.waittargetobject("0x0029D60B")
UO.Exec("attack 0x0029D60B")
end sub


По отдельности процедуры атаки и лечения работают а вот свести вместе не получается Помогите пожалуйста.

Author:  Mirage [ 2009-06-05 10:33:55 ]
Post subject:  Re: Спаринг

Alex82 wrote:
Чар все время пытается юзать оружие на цель.

Quote:

sub atak()
uo.warmode(1)
UO.Exec("attack 0x0029D60B")
wait(500)
end sub


Вот так можно.
Я не уверен что инжект умеет определять хиты оппонента.

Скрипты на паринг были тут.

Author:  Alex82 [ 2009-06-05 11:57:22 ]
Post subject: 

Так как ты предложил,чар не возьмет в руки нужное мне оружие. Да и главной проблемы это не решает.

Author:  ynkemer [ 2009-06-05 13:15:29 ]
Post subject: 

Попробуй терминейт сделать.
sub sparing()
while not uo.Dead()
if uo.GetHp('0x0029D60B') > uo.getMaxHP('0x0029D60B')/2 then
atak()
else
uo.exec('terminate atak')
hil()
endif
wend
end sub

Author:  Alex82 [ 2009-06-05 13:17:43 ]
Post subject: 

Все всем кто отписался спасибо.Взял и тупо переделал скрипт на спаринг с лошадью. :D Тема закрыта

Author:  Alex82 [ 2009-06-05 14:03:42 ]
Post subject: 

Вдруг кому понадобится. Скрипт нагло содран с спарринга с лошадью неизвестного автора :roll:


Code:
;перетащите ОБЯЗАТЕЛЬНО полоску с жизньями жертвы!!!!!!!!! 
;Жертве в руки лук без стрел :=)))

var kykla='0x0190' ;тип человека -)
var orygie='0x13B9';тип оружия -)
var bints='0x0E21'; тип бинта -)

sub train()
uo.findtype(kykla,'-1','ground')
while not uo.dead()
uo.findtype(kykla,'-1','ground')
if uo.gethp('finditem')>20 then
  atack()
 else
  heal()
endif
uo.warmode(0)
wait(100)
wend
endsub

sub atack()
uo.usetype(orygie)
uo.waittargetself()
wait(500)
uo.warmode(1)
uo.ignorereset()
uo.ignore('self')
uo.findtype(kykla,'-1','ground')
uo.attack('finditem')
while uo.gethp('finditem')>20
 uo.findtype(kykla,'-1','ground')
 wait(100)
 if uo.gethp('finditem')<19 then
  uo.warmode(0)
 endif
wend
uo.warmode(0)
endsub

sub heal()
var moy
var BandBL ='0x0E20'
uo.warmode(0)
UO.Disarm()

uo.FindType('0x1008','-1')
moy=uo.GetSerial('finditem')
UO.WaitTargetObject(Moy)
UO.UseType(BandBL)

uo.deletejournal()
uo.findtype(kykla,'-1','ground')
while not uo.injournal("does not need")
 uo.warmode(0)
 CheckLag()
 uo.waittargetobject('finditem')
 uo.usetype(bints)
 wait(4000)
 uo.findtype(kykla,'-1','ground')
 wend
  endsub
 


Sub CheckLag()
    UO.DeleteJournal()
    UO.Click('backpack')
    repeat
       wait(50)
    until UO.InJournal('backpack')
end sub


Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/