Автопуха

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