Автопуха

Ask for scripts here

Moderators: Murderator+, Murderator

Kitten
Posts: 40
Joined: 2007-10-20 07:45:56

Post by Kitten »

Sanch wrote:За работоспособность не ручаюсь, если выдержки между тагетами на пушку и противника хватит для установки ловушки инжектом на противника то работать будет теоретически, другие способи таргетинга чреваты баном, вобщем тести.

Code: Select all

sub BuM()
var c, aim, pushka
uo.print('Укажите сундук с ядрами')
uo.exec('addobject Sunduk')
while uo.targeting()
  wait(100)
wend
uo.useobject('Sunduk')
wait(1000)
checklag()
uo.set('finddistance', '3')
uo.findtype('0x0e8d', '-1', '1')
if uo.findcount() > 0 then
  pushka = uo.getserial('finditem')
else
  uo.print('Рядом нет пушки, вырубаю скрипт')
  return
endif
uo.ignore('self', 'on')
uo.set('finddistance', '15')
DIM Chars[2]
Chars[0] = '0x0190' #тип игрока мужского пола#
Chars[1] = '0x0191' #тип игрока женского пола#
while not uo.dead()
  for c = 0 to 1       
    uo.findtype(Chars[c], '-1', '1') 
    if uo.findcount() > 0 then
      aim = uo.getserial('finditem')
      uo.findtype('0x0e73', '-1', 'Sunduk')
      if uo.fincount() == 0 then
        uo.print('Нет ядер в сундуке, вырубаю скрипт')
        return
      else
        uo.waittargetobject( pushka )
        uo.useobject('finditem')
        while uo.targeting()
          wait(10)
        wend
        uo.waittargettype( aim )
        wait(3000)
      endif
    else
      wait(100)
    endif
  next
wend
end sub

sub checklag()
uo.click('backpack')
while not uo.injournal('backpack')
  wait(100)
wend
uo.deletejournal('backpack')
end sub

вот этот конкретно не работает. После юза ядер на пушку не тыкает так сказать :). Если я его насильно (uo.lclick) направляю на пушку, потом не может найти мишень. А иногда все таки пытается стрельнуть в себя. Кому не лень, помогите пожалуйста.
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Code: Select all

sub BuM()

   var c, aim, pushka

   uo.print('Укажите сундук с ядрами')
   uo.addobject('Sunduk')
   while uo.targeting()
     wait(100)
   wend
   uo.useobject('Sunduk')
   wait(1000)
   checklag()
   uo.set('finddistance', '3')
   uo.findtype('0x0e8d', '-1', '1')
   if uo.findcount() then
     pushka = uo.getserial('finditem')
   else
     uo.print('Рядом нет пушки, вырубаю скрипт')
     return
   endif
   uo.ignore('self')
   uo.set('finddistance', '15')
   DIM Chars[2]
   Chars[0] = '0x0190' #тип игрока мужского пола#
   Chars[1] = '0x0191' #тип игрока женского пола#
   while not uo.dead()
     for c = 0 to 1   
       uo.findtype(Chars[c], '-1', 'ground')
       if uo.findcount() then
         aim = uo.getserial('finditem')
         uo.findtype('0x0e73', '-1', 'Sunduk')
         if not uo.fincount() then
           uo.print('Нет ядер в сундуке, вырубаю скрипт')
           return
         else
           uo.waittargetobject( pushka, aim )
           uo.useobject('finditem')
           wait(3000)
           if uo.Waiting() then
               uo.canceltarget()
            end if
         endif
       else
         wait(100)
       endif
     next
   wend

end sub

sub checklag()
   uo.click('backpack')
   while not uo.injournal('backpack')
     wait(100)
   wend
   uo.deletejournal('backpack')
end sub
Kitten
Posts: 40
Joined: 2007-10-20 07:45:56

Post by Kitten »

Grin wrote:

Code: Select all

sub BuM()

   var c, aim, pushka

   uo.print('Укажите сундук с ядрами')
   uo.addobject('Sunduk')
   while uo.targeting()
     wait(100)
   wend
   uo.useobject('Sunduk')
   wait(1000)
   checklag()
   uo.set('finddistance', '3')
   uo.findtype('0x0e8d', '-1', '1')
   if uo.findcount() then
     pushka = uo.getserial('finditem')
   else
     uo.print('Рядом нет пушки, вырубаю скрипт')
     return
   endif
   uo.ignore('self')
   uo.set('finddistance', '15')
   DIM Chars[2]
   Chars[0] = '0x0190' #тип игрока мужского пола#
   Chars[1] = '0x0191' #тип игрока женского пола#
   while not uo.dead()
     for c = 0 to 1   
       uo.findtype(Chars[c], '-1', 'ground')
       if uo.findcount() then
         aim = uo.getserial('finditem')
         uo.findtype('0x0e73', '-1', 'Sunduk')
         if not uo.fincount() then
           uo.print('Нет ядер в сундуке, вырубаю скрипт')
           return
         else
           uo.waittargetobject( pushka, aim )
           uo.useobject('finditem')
           wait(3000)
           if uo.Waiting() then
               uo.canceltarget()
            end if
         endif
       else
         wait(100)
       endif
     next
   wend

end sub

sub checklag()
   uo.click('backpack')
   while not uo.injournal('backpack')
     wait(100)
   wend
   uo.deletejournal('backpack')
end sub

безумное спасибо :wink: , буду тестить
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Можно для меня некоторые моменты пояснить?

Code: Select all

uo.useobject('Sunduk') 
wait(1000)
checklag()

Зачем здесь пауза?.. У меня всегда отично работало и без wait.. Какие могут возникнуть проблемы, если убрать wait?

Code: Select all

uo.findtype('0x0e8d', '-1', '1') 

Какой контейнер соответствует единице?.. Теоретически - это должна быть земля?..

Code: Select all

           wait(3000) 
           if uo.Waiting() then
               uo.canceltarget()
            end if

Не совсем понимаю.. Какой-нить checklag сюда может поставить и паузу сделать динамичной? Почему нет?..
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

Code: Select all

           wait(3000) 
           if uo.Waiting() then
               uo.canceltarget()
            end if

на случай если выстрел по какимто приинам не прошел. Сделал его РАБОТАЮЩИМ и только... По всем остальным вопросам к перво источнику...
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Grin wrote:

Code: Select all

           wait(3000) 
           if uo.Waiting() then
               uo.canceltarget()
            end if

на случай если выстрел по какимто приинам не прошел. Сделал его РАБОТАЮЩИМ и только... По всем остальным вопросам к перво источнику...

Понятно.. По-принципу "вроде должен работать" и ладно :)

Не буду флудить, посмотрим, что скажет тестер, будут проблемы - исправим :)

Конкретно - меня в этом скрипте напрягает скорость, можно всё чуть быстрее делать, имхо. Нужные моменты я указал.
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

проблема как минимум будет с обнаружением пушки на земле
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

Я бы предложил вот так:

Code: Select all

sub BuM() 

   var c, aim, pushka, counter

   uo.print('Укажите сундук с ядрами')
   uo.addobject('Sunduk')
   while uo.targeting()
     wait(100)
   wend
   uo.useobject('Sunduk')
   checklag()
   uo.set('finddistance', '3')
   uo.findtype('0x0e8d', '-1', 'ground')
   if uo.findcount() then
     pushka = uo.getserial('finditem')
   else
     uo.print('Рядом нет пушки, вырубаю скрипт')
     return
   endif
   uo.ignore('self')
   uo.set('finddistance', '15')
   DIM Chars[2]
   Chars[0] = '0x0190' #тип игрока мужского пола#
   Chars[1] = '0x0191' #тип игрока женского пола#
   while not uo.dead()
     for c = 0 to 1   
       uo.findtype(Chars[c], '-1', 'ground')
       if uo.findcount() then
         aim = uo.getserial('finditem')
         uo.findtype('0x0e73', '-1', 'Sunduk')
         if not uo.fincount() then
           uo.print('Нет ядер в сундуке, вырубаю скрипт')
           return
         else
           uo.waittargetobject( pushka, aim )
           uo.useobject('finditem')
           counter = 0
           while uo.waiting() && counter < 30
              wait( 100 )
              counter = counter + 1
           wend
           if uo.Waiting() then
               uo.canceltarget()
           end if
         endif
       else
         wait(100)
       endif
     next
   wend

end sub

sub checklag()
   uo.click('backpack')
   while not uo.injournal('backpack')
     wait(100)
   wend
   uo.deletejournal('backpack')
end sub
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
Grin
Expert!
Posts: 2580
Joined: 2005-05-04 14:05:19
Location: Москва

Post by Grin »

предложение поддерживается:)
Post Reply