Page 1 of 1

Scripting by LEO... (archery)

Posted: 2006-05-06 22:49:25
by ghost_hnt
в чем дело?
пытается стрелять , но потом сразу же хелит не тронутого чара(((
помогите

Code: Select all

var Doll = '0x0026B61A' ##ID чара в которого стреляем 
var Cont = '0x4009EDAD' ##ID контейнера где лежат стрелы
var Arrow = '0x0F3F'    ##тип стрел
var Bow = '0x13B1'      ##тип лука
sub Archery()
#¤Leo¤#
while 1
   UO.UseType(Bow)
   UO.Attack(Doll)
   Repeat
      wait (500)
   if UO.InJournal('destroyed') then
   UO.UseType(Bow)
   UO.DeleteJournal()
   endif
   Until UO.GetHP(Doll)<100
   repeat
   wait (500)
   UO.WarMode(0)
      if UO.FindCount('0x0E21')<30 then
         UO.WaitTargetType('0x1008')
         UO.UseType('0x0E20')
         CheckLag()
      endif
      UO.Usetype('0x0E21')
      UO.WaitTargetObject(Doll)
      wait(3500)
   Until UO.InJournal('you need')
      If UO.Count(Arrow) < 100 Then
         UO.Findtype(Arrow, '-1',Cont)
         If UO.FindCount() > 0 Then
            UO.Grab('500','finditem')
            wait(1000)
            CheckLag()
         Endif
      Endif
      UO.DeleteJournal()
wend
end sub

sub Start()
   repeat
   UO.Findtype(Arrow)
   If UO.FindCount() > 0 Then
      UO.MoveItem('finditem','0',Cont)
         wait(1000)
   Endif
   UO.Findtype(Arrow, '-1', '1' )
   If UO.FindCount() > 0 Then
      UO.MoveItem('finditem','0',Cont)
         wait(1000)
   Endif
      wait(10000)
   until UO.Dead()
endsub

Sub CheckLag()
   UO.DeleteJournal( 'backpack' )
   UO.Click( 'backpack' )
   repeat
      wait(100)
   until UO.InJournal( 'backpack' )
endsub

Posted: 2006-05-06 22:52:40
by CONDOMchick
попробуй увеличить задержку

Posted: 2006-05-06 23:02:14
by ghost_hnt
блин он почему то пробует стрельнуть, а потом сразу хелит и хелит все время чара с полными жизнями_(
ошибка где-то в этой строчке

Code: Select all

Until UO.GetHP(Doll)<100 
   repeat
   wait (500)
   UO.WarMode(0)
      if UO.FindCount('0x0E21')<30 then
         UO.WaitTargetType('0x1008')
         UO.UseType('0x0E20')
         CheckLag()
      endif
      UO.Usetype('0x0E21')
      UO.WaitTargetObject(Doll)
      wait(3500)
   Until UO.InJournal('you need')

можете скинуть другой рабочий скрипт)_!

Posted: 2006-05-06 23:06:33
by ghost_hnt
как-то надо изменить проверку hp у куклы
что-то вместо until uo.getHP
типо if жизней у куклы меньше половины то бери бинты

Posted: 2006-05-06 23:10:15
by flake

Code: Select all

Until UO.GetHP(Doll)<100 

замени на

Code: Select all

Until UO.GetHP(Doll)< (UO.GeMaxHP(Dol)/2)

Posted: 2006-05-06 23:14:56
by ghost_hnt
не не хрена)
там подправил, но он убивает чара_)

Posted: 2006-05-07 08:14:39
by Kynep
flake wrote:

Code: Select all

Until UO.GetHP(Doll)<100 

замени на

Code: Select all

Until UO.GetHP(Doll)< (UO.GeMaxHP(Dol)/2)


Скока писал так ни разу не получалось, лучше сделать проверку по журналу на фразу, пробуй:

Code: Select all

var Doll = '0x0026B61A' ##ID чара в которого стреляем 
var Cont = '0x4009EDAD' ##ID контейнера где лежат стрелы
var Arrow = '0x0F3F'    ##тип стрел
var Bow = '0x13B1'      ##тип лука
sub Archery()
#¤Leo¤#
while 1
   UO.UseType(Bow)
   UO.Attack(Doll)
   Repeat
      wait (500)
   if UO.InJournal('destroyed') then
   UO.UseType(Bow)
   UO.DeleteJournal()
   endif
   until UO.InJournal('Stop')
   UO.DeleteJournal()
   repeat
   wait (500)
   UO.WarMode(0)
      if UO.FindCount('0x0E21')<30 then
         UO.WaitTargetType('0x1008')
         UO.UseType('0x0E20')
         CheckLag()
      endif
      UO.Usetype('0x0E21')
      UO.WaitTargetObject(Doll)
      wait(3500)
   Until UO.InJournal('need healing')
      If UO.Count(Arrow) < 100 Then
         UO.Findtype(Arrow, '-1',Cont)
         If UO.FindCount() > 0 Then
            UO.Grab('500','finditem')
            wait(1000)
            CheckLag()
         Endif
      Endif
      UO.DeleteJournal()
wend
end sub

sub Start()
   repeat
   If UO.GetHP() < UO.GetMaxHP() / 2 then
   UO.Say('Stop')
   repeat
   wait(100)
   until UO.GetHP() == UO.GetMaxHP()
   else
   wait(100)
   endif
   UO.Findtype(Arrow)
   If UO.FindCount() > 0 Then
      UO.MoveItem('finditem','0',Cont)
         wait(1000)
   Endif
   UO.Findtype(Arrow, '-1', '1' )
   If UO.FindCount() > 0 Then
      UO.MoveItem('finditem','0',Cont)
         wait(1000)
   Endif 
   until UO.Dead()
endsub

Sub CheckLag()
   UO.DeleteJournal( 'backpack' )
   UO.Click( 'backpack' )
   repeat
      wait(100)
   until UO.InJournal( 'backpack' )
endsub

Posted: 2006-05-07 15:13:42
by ghost_hnt
блин сначало норм, но потом, как чар-кукла сказал STOP
атакующий его хилит, даже если у него хп полные(
надо что-то в этом роде

Code: Select all

 until UO.InJournal('Stop') 

until заменить на if

Posted: 2006-05-07 15:52:43
by Kynep
ghost_hnt wrote:блин сначало норм, но потом, как чар-кукла сказал STOP
атакующий его хилит, даже если у него хп полные(
надо что-то в этом роде

Code: Select all

 until UO.InJournal('Stop') 

until заменить на if


Немнога поправил, посмотри. Ты как запускаешь его? Кто качает должен запускать Archery, а кукла Start

Posted: 2006-05-07 18:28:05
by ghost_hnt
да эт я понял
скоро буду тестить

Posted: 2006-05-11 14:05:32
by ghost_hnt
блин не ПАШЕТ((((((((((
стреляет, пока тот не скажет STOP
потом хелит его до бесконечности..............

Posted: 2006-05-11 17:02:37
by Kynep
ghost_hnt wrote:блин не ПАШЕТ((((((((((
стреляет, пока тот не скажет STOP
потом хелит его до бесконечности..............


Мля!! телепаты в отпуске!!! В этой строке напиши что пишет клиент, когда у чела жизни полные и пытается лечить:

Code: Select all

Until UO.InJournal('need healing')

Posted: 2006-05-11 17:53:01
by ghost_hnt
скрипт работает, но почему то когда у куклы меньше половины хп он все время кричит STOP!!!!!!!!!!!!!!
не останавливаясь, поэтому чар стрельнет, потом сразу хелит :?

Posted: 2006-05-11 21:02:28
by Kynep
ghost_hnt wrote:скрипт работает, но почему то когда у куклы меньше половины хп он все время кричит STOP!!!!!!!!!!!!!!
не останавливаясь, поэтому чар стрельнет, потом сразу хелит :?


Попробуй так, ссылка на мой пост:
Тут
Только не забудь исправить это:

Code: Select all

Until UO.InJournal('need healing') 

Posted: 2006-05-12 12:10:36
by ghost_hnt
спасибо вроде норм!