Page 1 of 1

Быстрая помощь :) Хил+лут

Posted: 2006-10-05 22:31:30
by Shadowdancer
ВОТ СКРИПТ ХИЛ-Лут
Как его совместить что бы работало, как тока убью монстра сразу лут. и Хилялся сразу после слов *You put the bloody bandages in your pack* а не повремени!!!


Code: Select all

sub heal()    
VAR X=0
repeat
   if uo.life < uo.str then   ;;; healing
   while uo.life < uo.str
      uo.exec("bandageself")
      uo.deletejournal()
      while not (X == 100 or uo.injournal("backpack") or uo.injournal ("reach that") or uo.injournal("current state") or uo.injournal("barely") or uo.injournal("mummy") or uo.injournal("target info"))
         wait(100)
         X=X+1
         if uo.injournal("reach that") or uo.injournal("current state") or uo.injournal("target info") then
            wait(1000)
         endif
         if uo.stamina < 50 then
            uo.usetype("0x0F0B") ;ïüåì ðåôðåøêó
         endif
      wend
   X=0
   wend
      uo.deletejournal()
endif
wait(100)
until uo.dead()
end sub



Это второй :) их наверно тут надо совместить :( И он почему то выключаеться когда отдельно лук используешь :( а мне надо чо бы всевремя работал :roll:

Code: Select all

sub loot() 
## written by Nick :)
Dim loot[10]
loot[0] = '0x0EED' ; gold
loot[1] = '0x0F13' ; tickets
loot[2] = '0x0EF0' ; slots
loot[3] = '0x097A' ; windgems
loot[4] = '0x14EB' ; maps
loot[5] = '0x0DF2' ; wand
loot[6] = '0x0DF3' ; wand
loot[7] = '0x0DF4' ; wand
loot[8] = '0x0DF5' ; wand
loot[9] = '0x1078' ; hides
var h,i,j,k,l,m,n
var cutem = 1
If UO.Targeting() then
UO.CancelTarget()
EndIf
UO.SetReceivingContainer("catch")
i = 250
h = 500
FOR j = 0 To 9
UO.FindType(loot[j],"-1",'ground')
If UO.FindCount() > 0 then
UO.Grab(0, "finditem")
Wait(i)
UO.FindType(loot[j],"-1",'ground')
endIf
next
UO.FindType('0x0E75','0x0000',"ground")
If UO.FindCount() > 0 then
UO.AddObject("BPackg","finditem")
UO.Ignore("finditem")
UO.UseObject("BPackg")
Wait(i)
FOR m = 0 TO 9
UO.FindType(loot[m],"-1","BPackg","ground")
While UO.FindCount() > 0
UO.Grab(0, "finditem")
UO.Print("Found in a Backpack on the ground "+str(UO.FindCount()))
Wait(i)
UO.FindType(loot[m],"-1","BPackg","ground")
Wend
next
EndIf
If UO.GetQuantity('lastcorpse') then
UO.UseObject("lastcorpse")
wait(h)
If cutem==1 then
UO.SetArm('temp')
wait(i)
UO.Arm('2') ; Right handed bladed weapon use ",setarm 2"
Wait(h)
UO.WaitTargetObject('lastcorpse')
UO.UseObject(UO.Objatlayer("Rhand"))
wait(h)
UO.Arm('temp')
EndIf   
FOR n = 0 TO 9
UO.FindType(loot[n],"-1","lastcorpse")
While UO.FindCount() > 0
If loot[n] == '0x1078' then ; leather
UO.WaitTargetObject("finditem")
UO.UseType("0x0F9E") ; sissors
UO.Print("scissors")
wait(i)
Else
UO.Grab(0, "finditem")
wait(i)
UO.FindType(loot[n],"-1","lastcorpse")
Wend
EndIf
next
UO.FindType('0x0E75',"-1","lastcorpse") ;Backpack
If UO.FindCount() > 0 then
repeat
UO.AddObject("BP","finditem")
UO.Ignore("finditem")
UO.UseObject("BP")
Wait(h)
FOR l = 0 TO 9
UO.FindType(loot[l],"-1","BP","lastcorpse")
While UO.FindCount() > 0
UO.Grab(0, "finditem")
UO.Print("Found in a Backpack "+str(UO.FindCount()))
Wait(i)
UO.FindType(loot[l],"-1","BP","lastcorpse")
Wend
next
UO.FindType('0x0E75',"-1","lastcorpse") ;Backpack
until uo.findcount() == 0
EndIf
UO.FindType('0x0E76',"-1","lastcorpse") ;Bag
If UO.FindCount() > 0 then
UO.AddObject("Bag","finditem")
UO.Ignore("finditem")
UO.UseObject("Bag")
Wait(h)
UO.WaitTargetObject("Bag")
UO.Exec('emptycontainer 10')
EndIf
EndIf
UO.FindType('0x0F0E','0x0000',"lastcorpse") ;Bottles
If UO.FindCount() > 0 then
UO.Grab(0, "finditem")
EndIf
UO.UnsetReceivingContainer()
End Sub

Posted: 2006-10-05 23:21:26
by Edred
Я ведь тебе писал - пости скрипты правильно, в тегах кода. Прочитай правила, там написано об этом. Это же легко, всего лишь надо выделить текст скрипта в окне и нажать кнопку Code выше.

Posted: 2006-10-06 10:18:21
by Shadowdancer
Едгар тут наверно ненадо некакой код...

Это не тот скрипт тут тока совместить надо :)
Помоги пожалуйста, в это все долго вникать а у меня работа,семья,дети :!: :wink:

Posted: 2006-10-06 15:30:10
by Nmy
по журналу:

Code: Select all

repeat
wait(250)
until uo.injournal('body')

Code: Select all

repeat
wait(250)
until uo.injournal('fail|you put')

Posted: 2006-10-06 16:08:23
by Shadowdancer
Я тебя очень прошу вставь куда надо, а то я нешарю куда его вставлять! ЧАЙНИК !!! что бы весь скрипт что я скинул был вместе как его соединить я незнаю :((( я же в самом верху написал

Posted: 2006-10-06 16:29:02
by Nmy

Code: Select all

sub looping()
uo.deletejournal()
while true
if uo.injournal('body') then
uo.deletejournal()
loot()
heal()
endif
wait(500)
wend
endsub


sub loot()
Dim loot[10]
loot[0] = '0x0EED' ; gold
loot[1] = '0x0F13' ; tickets
loot[2] = '0x0EF0' ; slots
loot[3] = '0x097A' ; windgems
loot[4] = '0x14EB' ; maps
loot[5] = '0x0DF2' ; wand
loot[6] = '0x0DF3' ; wand
loot[7] = '0x0DF4' ; wand
loot[8] = '0x0DF5' ; wand
loot[9] = '0x1078' ; hides
var h,i,j,k,l,m,n
var cutem = 1
If UO.Targeting() then
UO.CancelTarget()
EndIf
UO.SetReceivingContainer("catch")
i = 250
h = 500
FOR j = 0 To 9
UO.FindType(loot[j],"-1",'ground')
If UO.FindCount() > 0 then
UO.Grab(0, "finditem")
Wait(i)
UO.FindType(loot[j],"-1",'ground')
endIf
next
UO.FindType('0x0E75','0x0000',"ground")
If UO.FindCount() > 0 then
UO.AddObject("BPackg","finditem")
UO.Ignore("finditem")
UO.UseObject("BPackg")
Wait(i)
FOR m = 0 TO 9
UO.FindType(loot[m],"-1","BPackg","ground")
While UO.FindCount() > 0
UO.Grab(0, "finditem")
UO.Print("Found in a Backpack on the ground "+str(UO.FindCount()))
Wait(i)
UO.FindType(loot[m],"-1","BPackg","ground")
Wend
next
EndIf
If UO.GetQuantity('lastcorpse') then
UO.UseObject("lastcorpse")
wait(h)
If cutem==1 then
UO.SetArm('temp')
wait(i)
UO.Arm('2') ; Right handed bladed weapon use ",setarm 2"
Wait(h)
UO.WaitTargetObject('lastcorpse')
UO.UseObject(UO.Objatlayer("Rhand"))
wait(h)
UO.Arm('temp')
EndIf   
FOR n = 0 TO 9
UO.FindType(loot[n],"-1","lastcorpse")
While UO.FindCount() > 0
If loot[n] == '0x1078' then ; leather
UO.WaitTargetObject("finditem")
UO.UseType("0x0F9E") ; sissors
UO.Print("scissors")
wait(i)
Else
UO.Grab(0, "finditem")
wait(i)
UO.FindType(loot[n],"-1","lastcorpse")
Wend
EndIf
next
UO.FindType('0x0E75',"-1","lastcorpse") ;Backpack
If UO.FindCount() > 0 then
repeat
UO.AddObject("BP","finditem")
UO.Ignore("finditem")
UO.UseObject("BP")
Wait(h)
FOR l = 0 TO 9
UO.FindType(loot[l],"-1","BP","lastcorpse")
While UO.FindCount() > 0
UO.Grab(0, "finditem")
UO.Print("Found in a Backpack "+str(UO.FindCount()))
Wait(i)
UO.FindType(loot[l],"-1","BP","lastcorpse")
Wend
next
UO.FindType('0x0E75',"-1","lastcorpse") ;Backpack
until uo.findcount() == 0
EndIf
UO.FindType('0x0E76',"-1","lastcorpse") ;Bag
If UO.FindCount() > 0 then
UO.AddObject("Bag","finditem")
UO.Ignore("finditem")
UO.UseObject("Bag")
Wait(h)
UO.WaitTargetObject("Bag")
UO.Exec('emptycontainer 10')
EndIf
EndIf
UO.FindType('0x0F0E','0x0000',"lastcorpse") ;Bottles
If UO.FindCount() > 0 then
UO.Grab(0, "finditem")
EndIf
UO.UnsetReceivingContainer()
End Sub

sub heal()
while uo.life < uo.str
uo.deletejournal()
uo.bandageself()
repeat
wait(250)
until uo.injournal('you put|help')
wend
end sub


Code: Select all

until uo.injournal('you put|help')
здесь отредактировать сообщения каторые появляются при хилинге...

удачи :roll:

Posted: 2006-10-06 16:45:30
by Shadowdancer
Все вырубает сразу тока ЛОПИНГ остаеться в скрипте оно раз хил и все, и лут раз и все вырубаеться (

Posted: 2006-10-06 16:53:39
by Nmy
Shadowdancer wrote:Все вырубает сразу тока ЛОПИНГ остаеться в скрипте оно раз хил и все, и лут раз и все вырубаеться (


запускать надо только лупинг!
надо убить кагота чтоб в журнале появился текст- боди, тогда он по идее должен лутать и хилится...

Posted: 2006-10-06 17:25:17
by Shadowdancer
Ладно, спасибо большое тебе. я уже подругому придумал :))

Posted: 2006-10-07 23:34:43
by Edred
Форест варз?

Вот тебе хил:

Code: Select all

sub AutoHeal()
; (c) Edred
   VAR Success = 'You put the bloody bandage'
   VAR Fizzle = 'failed.'
   VAR bandag = '0x0E21'
   VAR k
   repeat
      If UO.GetHP() < UO.GetMaxHP() - 20 Then
         If UO.Count( Bandag ) > 0 Then
            DeleteJournal( Success )
            DeleteJournal( Fizzle )
            k = 0
            UO.Bandageself()
            repeat
               wait(50)
               k = k + 1
            until UO.InJournal( Success ) or UO.InJournal( Fizzle ) or k > 100
         Else
            return
         Endif
      Else
         wait(500)
      Endif
   until UO.Life == 0
endsub


Запускаешь, забываешь. А лутить лучше отдельным скриптом.