атачим птицу бьём режем лутаем перья

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Mr.Denchik
Posts: 12
Joined: 2006-09-14 08:55:52
Location: Moscow
Contact:

атачим птицу бьём режем лутаем перья

Post by Mr.Denchik »

Прошу помощи соединить 2 скрипта

луталка по типу режем и собираем из трупа

Code: Select all

sub Loot4() 
   VAR i,Exit 
   DIM Loot[18]
   
 
Loot[0]=0x0EED ; gp
Loot[1]=0x0F7B ; BM
Loot[2]=0x0F7A ; BP
Loot[3]=0x0F84 ; GA
Loot[4]=0x0F85 ; GI
Loot[5]=0x0F86 ; MR
Loot[6]=0x0F88 ; NS
Loot[7]=0x0F8C ; SA
Loot[8]=0x0F8D ; SS
Loot[9]=0x13FA ;two handed axe
Loot[10]=0x1413 ;arm
Loot[11]=0x1415 ;arm
Loot[12]=0x1411 ;arm
Loot[13]=0x1410 ;arm
Loot[14]=0x1414 ;arm
Loot[15]=0x0E21 ;ban
Loot[16]=0x0F78 ;batw
Loot[17]=0x0F8B ;pumise

UO.SetReceivingContainer('0x4000C313') ;ID backpacka
   uo.waittargetobject('lastcorpse')
   uo.UseType('0x0F51')
   For i=0 to 17
      Exit=0
      repeat
       UO.FindType(Loot[i],-1,'lastcontainer')           
        if UO.GetQuantity('finditem') then
         UO.Grab('0','finditem')
          wait(100)
          Else
         Exit=1
        endif
      until Exit==1 OR uo.injournal("loot")
   Next 
UO.UnSetReceivingContainer()
end sub



и прекрасная атачилка нападалка убивалка


Code: Select all

sub att() 
#***********
#(C) Cooper
#***********
VAR monst=0x0006 #Tèï ìîíñòðà
VAR feathers=0x1bd1
VAR dagger=0x0F51
VAR backpack=0x4000C313
UO.Set('finddistance','3')
while UO.GetHP('self') < 500
UO.FindType(monst, '-1', 'ground')
if UO.FindCount() > 0 then
UO.DeleteJournal()
UO.Attack('finditem')
wait (500)
repeat
wait(700)
else
wait(100)
endif
wend
end sub




помогите соединить эти прекрасные скрипты так чтоб чар с кинжалом в руке сам атачил(что в настройках укажем) бил резал и лутал только (переменная) что в настройках зададим :)
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Code: Select all

sub wOOt()
while true
Loot4()
wait(1000)
att()
wend
end sub

:roll:
Mr.Denchik
Posts: 12
Joined: 2006-09-14 08:55:52
Location: Moscow
Contact:

Post by Mr.Denchik »

спасибо.
попробовал - не работает.
работает только скрипт атачилка.
а хотелось бы код луталки вставить в код атачилки и без цикла а только 1 тип чтоб лутал.
то есть чтоб вот так работало

repeat
ищем птицу
атачим
бьём
режем труп
лутаем из трупа перья
endrepeat

тогда останется только мышкой бегать от птицы к птице
Mr.Denchik
Posts: 12
Joined: 2006-09-14 08:55:52
Location: Moscow
Contact:

Post by Mr.Denchik »

возможно придется между

бьём
режем труп

вставить ищем последний труп?

бьём
ищем последний труп
режем труп

то есть типа взять из журнала айди последнего увиденного тела и на него применить кинжал?
Mr.Denchik
Posts: 12
Joined: 2006-09-14 08:55:52
Location: Moscow
Contact:

Post by Mr.Denchik »

UO.SetReceivingContainer('0x4000C313') ;ID backpacka
uo.waittargetobject('lastcorpse')
uo.UseType('0x0F51')
UO.FindType(0x1bd1,'lastcontainer')
if UO.GetQuantity('finditem') then
UO.Grab('0','finditem')
wait(100)
UO.UnSetReceivingContainer()

вот этот кусочек кода (подозреваю что я неграмотно выдрал и код с ощибками проверьте плиз) всставить бы после убийства птицы
Mr.Denchik
Posts: 12
Joined: 2006-09-14 08:55:52
Location: Moscow
Contact:

Post by Mr.Denchik »

или вот так ?

Code: Select all

sub att() 
#***********
#(C) Cooper
#***********
VAR monst=0x0006 #Tèï ìîíñòðà
VAR feathers=0x1bd1
VAR dagger=0x0F51
VAR backpack=0x4000C313
var baggg
var weapon='0x0F51' # òèï àòàêóþùåãî îðóæèÿ
var i

 DIM garp[3]
 
   garp[0]='0x1BD1'
   garp[1]='0x0eed'
   garp[2]='0x1BFB'
   garp[3]='0x1F3F'

UO.Set('finddistance','3')
while UO.GetHP('self') < 500
UO.FindType(monst, '-1', 'ground')
if UO.FindCount() > 0 then
UO.DeleteJournal()
UO.Attack('finditem')
for i = 0 to 3
    uo.warmode(0)
    baggg=uo.getserial('lastcorpse')
    uo.useobject(baggg)
    uo.Waittargetobject(baggg)
    wait(700)
    uo.usetype(dagger)
    wait(700)
    uo.findtype(garp[i],-1,baggg)
    if uo.findcount()>0 then
      uo.grab(-1,'finditem')
      Wait(600)
    endif
    uo.ignore('finditem')
next
  uo.IgnoreReset()
  uo.usetype(weapon)
  uo.warmode(1)
repeat
wait(700)
else
wait(100)
endif
wend
end sub


но как то не понятно работает открывает постоянно старый труп и атачит и лутает дноаременно что ли
может я где облажался в коде ? (наверняка облажался помогите плиз)
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Code: Select all

sub att()
#NMY#
VAR monst=0x0006

UO.Set('finddistance','3')
while true
UO.FindType(monst,'-1','ground')
if UO.FindCount() then
UO.DeleteJournal()
UO.Attack('finditem')
repeat
wait(250)
until uo.injournal('body')
Loot()
endif
wait(250)
wend
end sub

sub Loot()
   VAR n
   DIM Loot[18]

Loot[0]=0x0EED ; gp
Loot[1]=0x0F7B ; BM
Loot[2]=0x0F7A ; BP
Loot[3]=0x0F84 ; GA
Loot[4]=0x0F85 ; GI
Loot[5]=0x0F86 ; MR
Loot[6]=0x0F88 ; NS
Loot[7]=0x0F8C ; SA
Loot[8]=0x0F8D ; SS
Loot[9]=0x13FA ;two handed axe
Loot[10]=0x1413 ;arm
Loot[11]=0x1415 ;arm
Loot[12]=0x1411 ;arm
Loot[13]=0x1410 ;arm
Loot[14]=0x1414 ;arm
Loot[15]=0x0E21 ;ban
Loot[16]=0x0F78 ;batw
Loot[17]=0x0F8B ;pumise

UO.UseObject('lastcorpse')
 CheckLag()
 if (uo.getserial('backpack') <> uo.getserial('lastcontainer')) then
   uo.waittargetobject('lastcorpse')
   uo.UseType('0x0F51')
   wait(200)
   checklag()
   For n=0 to 17
  UO.FindType( Loot[n] , -1 ,'lastcontainer')
 while UO.GetQuantity('finditem') > 0
  UO.Print(' !!! Looting Items: '+str(UO.findcount()))
  uo.moveitem('finditem')
  CheckLag()
  Wait(100)
  UO.FindType( Loot[n] , -1 ,'lastcontainer')
 wend
 Next
Endif
UO.Print(' !!! -= Done =- !!! ')
end sub

Sub CHECKLAG()
   del('backpack')
   uo.click('backpack')
   repeat
   wait(200)
   until uo.injournal('backpack')
   del('backpack')
endsub

Sub DEL(msg)
   while uo.injournal(msg)
   uo.setJournalLine(uo.injournal(msg)-1,"Is Empty!")
   wend
endsub


нетестил...
Mr.Denchik
Posts: 12
Joined: 2006-09-14 08:55:52
Location: Moscow
Contact:

Post by Mr.Denchik »

ну оттестить то мы быстро :)

посмотрите пожалуйста второй код перед вашим ответом
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Mr.Denchik wrote:ну оттестить то мы быстро :)

посмотрите пожалуйста второй код перед вашим ответом

на чужые скрипты глаза ломать неахота... :shock: :roll: :)
Scripts Writer
Posts: 2259
Joined: 2005-04-19 18:00:29
Location: Московская область
Contact:

Post by Scripts Writer »

Mr.Denchik wrote:ну оттестить то мы быстро :)

посмотрите пожалуйста второй код перед вашим ответом


Code: Select all

sub att() 
#**********
#(C) Cooper
#***********
VAR monst=0x0006 #Tèï ìîíñòðà
VAR feathers=0x1bd1
VAR dagger=0x0F51
VAR backpack=0x4000C313
var baggg
var weapon='0x0F51' # òèï àòàêóþùåãî îðóæèÿ
var i

 DIM garp[4]
 
   garp[0]='0x1BD1'
   garp[1]='0x0eed'
   garp[2]='0x1BFB'
   garp[3]='0x1F3F'

  UO.Set('finddistance','3')
  while UO.GetHP('self') < 500
    UO.FindType(monst, '-1', 'ground')
    if UO.FindCount() > 0 then
      UO.DeleteJournal()
      UO.Attack('finditem')
      for i = 0 to 3
        uo.warmode(0)
        baggg=uo.getserial('lastcorpse')
        uo.useobject(baggg)
        uo.Waittargetobject(baggg)
        wait(700)
        uo.usetype(dagger)
        wait(700)
        uo.findtype(garp[i],-1,baggg)
        if uo.findcount()>0 then
          uo.grab(-1,'finditem')
          Wait(600)
        endif
        uo.ignore('lastcorpse')
      next
      uo.IgnoreReset()
      uo.usetype(weapon)
      uo.warmode(1)
      wait(700)
    else
      wait(100)
    endif
  wend
end sub


Вот правильный синтаксис. Что уже у тебя тут наваяно-сам смотри.
Post Reply