Yoko

All sides of Injection
It is currently 2024-04-27 23:09:24

All times are UTC+02:00




Post new topic  Reply to topic  [ 9 posts ] 
Author Message
 Post subject: Боевые.
PostPosted: 2011-03-04 06:12:55 
Offline

Joined: 2011-03-04 05:58:46
Posts: 15
Помогите пожалуйста. При чар атакует чара-куклу с луком, потом лечит его, но почему то лечит 1-2 раза и снова бьет. Все хп не вылечивает. В чем тут проблема?
Заранее благодарю.

Code:
sub main()
var selfID = UO.GetSerial('self')
var ID = '0x004CFD60'                             ## ID персонажа которого бить надо
UO.Exec("exec reconnector")
UO.Exec("setarm wp")
while not UO.Dead()
     if GetHP(ID) < 60 then
          uo.Exec('warmode 0')
          UO.Disarm()
          while GetHP(ID) < 60
               uo.Exec('warmode 0')
               Healing(ID)
               wait(100)
          wend
          UO.Exec("arm wp")
          wait(1000)
          uo.Exec('warmode 1')
     end if
     wait(500)
     UO.Attack(ID)
wend
end sub

sub GetHP(ID)
var maxhp, result
UO.GetStatus(ID)
maxhp = UO.GetMaxHP(ID)
if maxhp > 0 then
     result = (UO.GetHP(ID) * 150) / maxhp
else
     result = 0
end if
return result
end sub

sub Healing(ID)
var b=0x0E21
;if UO.Life < UO.Str then
     UO.WaitTargetObject(ID)
     UO.UseType(b)
     CheckLag()
     uo.Exec('warmode 0')
     wait(1000)
     uo.Exec('warmode 0')
     wait(1000)
     uo.Exec('warmode 0')
     wait(1000)
     return true
;end if
return true
end sub

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

sub DeleteJournal(msg)
var num
while UO.InJournal(msg)
     num = UO.InJournal(msg)
     UO.SetJournalLine(num - 1,' ')
wend
end sub

sub CheckBandage()
uo.WaitTargetType('0x1008')
uo.UseType('0x0E20')
wait(1000)
end sub


sub Reconnector()
var RFlag
RFlag = 1
Repeat
While (UO.ObjAtLayer('Bpack') == '')
if RFlag Then
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) Then
RFlag = 1
endif
Until false
end sub



Top
   
 Post subject: Re: Боевые.
PostPosted: 2011-03-05 04:20:22 
Offline

Joined: 2011-03-04 05:58:46
Posts: 15
subj.


Top
   
 Post subject: Re: Боевые.
PostPosted: 2011-03-05 08:02:08 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Code:
sub main()
   var selfID = UO.GetSerial('self')
   var ID = '0x004CFD60'                             ## ID персонажа которого бить надо
   var MAXHP = 150 ## максимальное значение жизни у цели. Отрегулируй.
   UO.Exec("exec reconnector")
   UO.Exec("setarm wp")
   while not UO.Dead()
      if GetHP(ID) < 60 then
         uo.Exec('warmode 0')
         UO.Disarm()
         while GetHP(ID) < MAXHP
            if  UO.WarMode()==1 then
               UO.WarMode(0)
            endif
            Healing(ID)
            wait(100)
         wend
         UO.Exec("arm wp")
         wait(1000)
         uo.warmode (1)
      end if
      wait(500)
      UO.Attack(ID)
   wend
end sub
sub GetHP(ID)
   var maxhp, result
   UO.GetStatus(ID)
   maxhp = UO.GetMaxHP(ID)
   if maxhp > 0 then
      result = (UO.GetHP(ID) * 150) / maxhp
   else
      result = 0
   end if
   return result
end sub
sub Healing(ID)
   var b=0x0E21
   if  UO.WarMode()==1 then
      UO.WarMode(0)
   endif
   UO.WaitTargetObject(ID)
   UO.UseType(b)
   CheckLag()
   wait(3000)
   return true
end sub
sub CheckLag()
   DeleteJournal('ackpack')
   repeat
      UO.Click('backpack')
      wait(500)
   until UO.InJournal('ackpack')
end sub
sub DeleteJournal(msg)
   var num
   while UO.InJournal(msg)
      num = UO.InJournal(msg)
      UO.SetJournalLine(num - 1,' ')
   wend
end sub
sub CheckBandage()
   uo.WaitTargetType('0x1008')
   uo.UseType('0x0E20')
   wait(1000)
end sub
sub Reconnector()
   var RFlag
   RFlag = 1
   Repeat
      While (UO.ObjAtLayer('Bpack') == '')
         if RFlag Then
            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) Then
         RFlag = 1
      endif
   Until false
end sub

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
 Post subject: Re: Боевые.
PostPosted: 2011-03-05 08:08:04 
Offline

Joined: 2011-03-04 05:58:46
Posts: 15
Спасибо :) Теперь не могу понять почему он хватает молоток, а если нет молотка то бьет рукой ...


Top
   
 Post subject: Re: Боевые.
PostPosted: 2011-03-05 08:28:23 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
у тебя запоминается первое оружие которое есть в руках у чара.
UO.Exec("setarm wp")

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
 Post subject: Re: Боевые.
PostPosted: 2011-03-05 09:56:45 
Offline

Joined: 2011-03-04 05:58:46
Posts: 15
Ну вот сейчас тестил, в сумке дагер и клевер лежат, молоток выкинул. Взял клевер, когда он его вылечил, он не одевает ничего, а бьет рукой. И так раз 5 одевал в ручную - всеравно не берет клевер... Можешь сюда вставить чтобы он брал оружие по Type?


Top
   
 Post subject: Re: Боевые.
PostPosted: 2011-03-05 10:28:48 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
вместо
UO.Exec("setarm wp")
впиши
Code:
var x = uo.GetGraphic(uo.ObjAtLayer('Lhand'))
var y = uo.GetGraphic(uo.ObjAtLayer('Rhand'))


вместо
UO.Exec("arm wp")
впиши
Code:
    uo.Equipt('Lhand',x)
    uo.Equipt('Rhand',y)


usetype не очень хорошо работает с даггерами - появляется прицел, который надо сбивать... Возня.

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
 Post subject: Re: Боевые.
PostPosted: 2011-03-05 15:28:15 
Offline

Joined: 2011-03-04 05:58:46
Posts: 15
От души .) Все работает. Но прежде тем чтобы поменять оружие, нужно выключить скрипт, потом взять которое нужно и снова включить :) Вот только бинты не моет, да и ладно :)


Top
   
 Post subject: Re: Боевые.
PostPosted: 2011-03-05 20:24:19 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
не моет потому что лучше сделать вот так:
прописать в шапке скрипта
var Miska = 'ID тазика для мытья'
Code:
Sub CheckBandage()  
  UO.waittargetobject( Miska )
  UO.usetype('0x0e20')
  Wait(1000)
end sub

_________________
Image
YokoInjection CodeSweeper
Ошибка "Unhandled exception in parser"
Стрелялка для олдов.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 9 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 28 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited