Yoko

All sides of Injection
It is currently 2024-03-28 15:22:32

All times are UTC+02:00




Post new topic  Reply to topic  [ 16 posts ] 
Author Message
PostPosted: 2012-01-24 19:42:11 
Offline

Joined: 2011-05-02 17:13:51
Posts: 22
проблема в том что типы совпадают и он бежит к челу который стоит за стеной
я так понимаю нужно добавить чтобы он ещё и по имени проверял UO.GetName


Code:
var distance='10' # дистанция поиска мобов
   var corpser=1 # 1-резать труп # 0-не резать труп
   
sub main()
   var n, m, mob
   var tweapon=uo.getserial(uo.objatlayer('Rhand'))
   var tshield=uo.getserial(uo.objatlayer('Lhand'))
   
   Dim npc[10]
   npc[0]=1 # count
   npc[1]='0x0038'
   npc[2]=''
   npc[3]=''
   
   Dim loot[50]
   loot[0]=3 # count
   loot[1]='0x0F7E'
   loot[2]='0x0E76'
   loot[3]='0x0EED'
   
   uo.set('finddistance',distance)
   while 1
      for n=1 to npc[0]
         uo.findtype(npc[n],-1,'ground')
         if uo.findcount() then
            uo.useobject(tweapon)
            uo.useobject(tshield)
            wait(100)
            mob=uo.getserial('finditem')
            kill(mob)
            uo.useobject('lastcorpse')
            checklag()
            wait(1000)
            for m=1 to loot[0]
               while uo.getquantity('<'+loot[m])
                  uo.moveitem('<'+loot[m])
                  wait(700)
               wend
            next
            while uo.life<uo.str-20 and uo.count('0x0E21')
               uo.bandageself()
               wait(3500)
            wend
            if uo.count('0x0E20') then
               uo.waittargettype('0x1008')
               uo.usetype('0x0E20')
               wait(1000)
            endif
         endif
      next
      wait(1000)
   wend
endsub
sub kill(mob)
   var n
   checklag()
   for n=0 to 100
      uo.attack(mob)
      if uo.getdistance(mob)>1 then
         walkn(0,0,mob)
      endif
      if uo.injournal('Body of') then
         if corpser==1 then
            uo.waittargetobject('lastcorpse')
            wait(100)
            uo.usetype('0x0F51')
            wait(500)   
         endif
         return
      endif
      wait(1000)
   next
endsub


Top
   
PostPosted: 2012-01-24 20:13:17 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
А что у однотипных npc разные имена?(как я понимаю это либо люди, либо орки какие-нибудь)
Если убиение сей твари производится в загоне, то проще ограничить по координатам. Допустим тварюгина координата x вне диапазона допустимых координатЪ (загон) [0;100] (края загона по координате х)
Code:
mob=uo.getserial('finditem')
if uo.getx(mob) <= 100 and uo.getx(mob) >= 0 then
  if аналогичная проверка по у координате then
    kill(mob)
  else
    uo.ignore(mob)
  endif
else
  uo.ignore(mob)
endif

Поиск в журнале нашёл (sub kill()), а затирание строки из журнала нету.


Last edited by ZeroDX on 2012-01-25 00:40:28, edited 1 time in total.

Top
   
PostPosted: 2012-01-24 21:05:49 
Offline

Joined: 2005-04-19 18:00:29
Posts: 2259
Location: Московская область
Боюсь, следующим сообщением будет "Парни, пишет 'Function аналогичная not found'".


Top
   
PostPosted: 2012-01-25 00:54:43 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
ни кто и не заметил, что можно срезать пару строк :P
Code:
mob=uo.getserial('finditem')
if uo.getx(mob) <= 100 and uo.getx(mob) >= 0 and uo.gety(mob) <= 100 and uo.gety(mob) >= 0 then
  kill(mob)
else
  uo.ignore(mob)
endif


Top
   
PostPosted: 2012-01-26 21:25:46 
Offline

Joined: 2011-05-02 17:13:51
Posts: 22
Отвечяю на поставленные вопросы

1) А что у однотипных npc разные имена? - Да! Допустим взять "Линч" и "Лорд Линч"
2) Если убиение сей твари производится в загоне - Да!
3) то проще ограничить по координатам - для меня не проще так-как немогу представить как это сделать
4) Поиск в журнале нашёл (sub kill()), а затирание строки из журнала нету. - работает без затирания


и ещё вот что хотелось бы добавить в эт скрипт

Code:
Sub Stealth()
  var msg = 'have hidden|seem to hide', Time, Delay = 10
  While not UO.Hidden()
endif
    DelJournal(msg)
    Time = UO.Timer()
    UO.UseSkill('Hiding')
    Repeat
      Wait(100)
    Until UO.InJournal(msg) or UO.Hidden() or Time + Delay * 10 <= UO.Timer()
  Wend
Endsub


Top
   
PostPosted: 2012-01-26 22:20:16 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
rusa wrote:
3) то проще ограничить по координатам - для меня не проще так-как немогу представить как это сделать

глаза подними - пример привели. надо поставить координаты углов загона

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


Top
   
PostPosted: 2012-01-26 22:35:21 
Offline

Joined: 2011-05-02 17:13:51
Posts: 22
тоесть вот так???

Code:
if uo.getx(mob) <= 5360 and uo.getx(mob) >= 5367 and uo.gety(mob) <= 1353 and uo.gety(mob) >= 1344 then


Top
   
PostPosted: 2012-01-26 23:05:45 
Offline
Expert!
User avatar

Joined: 2005-09-14 15:31:58
Posts: 2152
Location: Latvia
что за скрипт? кто писал? что он делает?

когда я занималься ходилкой, давал время 20 секунд чтоб пройти к нпц, иначе улетал

_________________
Уроки языка Injection
Основные команды языка Injection
Yoko Injection Code Sweeper
Drw (2009) скрипты
2017 Начал играть на Uorpg.net


Top
   
PostPosted: 2012-01-26 23:21:14 
Offline

Joined: 2011-05-02 17:13:51
Posts: 22
ого какие люди!!!!
у тебя же точь такойже фарм "моб"
точнее эт твой и есть


Top
   
PostPosted: 2012-01-27 10:30:23 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
Code:
Sub Stealth()
  var msg = 'have hidden|seem to hide', Time, Delay = 10
  While not UO.Hidden()
endif
    DelJournal(msg)
    Time = UO.Timer()
    UO.UseSkill('Hiding')
    Repeat
      Wait(100)
    Until UO.InJournal(msg) or UO.Hidden() or Time + Delay * 10 <= UO.Timer()
  Wend
Endsub

Откуда там endif? Добавлять нужно в ходилку, перед тем, как сделать шаг и после убийства моба. Ещё перед этим нужно отключать вармод, но это зависит от шарда, ибо есть такие, где в вармоде можно уходить в хайд). Ну и DelJournal() не забудь =).
Приятно видеть, что кто-то использует конкретно эту функцию :roll:
Наконец люди используют мои творения :cry:


Top
   
PostPosted: 2012-01-27 10:59:50 
Offline
Expert!
User avatar

Joined: 2005-09-14 15:31:58
Posts: 2152
Location: Latvia
viewtopic.php?f=20&t=15897

в скрипте walkn вроде таймер установлен?
If UO.GetDistance(Target)<2 OR LastTimer+100<UO.Timer() Then

не помню это 10 секунд или 100 секунд и он выходит

я это писал наверно лет 4 назад :oops:

_________________
Уроки языка Injection
Основные команды языка Injection
Yoko Injection Code Sweeper
Drw (2009) скрипты
2017 Начал играть на Uorpg.net


Top
   
PostPosted: 2012-01-27 11:02:05 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
10


Top
   
PostPosted: 2012-01-27 12:59:48 
Offline

Joined: 2011-05-02 17:13:51
Posts: 22
ZeroDX

до меня только сейчяс дощло только неуверен что координыты правильные указал . буду пробыват менять местами

покажи на что поменять или межу чем и чем нужно вставить

Code:
mob=uo.getserial('finditem')
if uo.getx(mob) <= 5360 and uo.getx(mob) >= 5367 and uo.gety(mob) <= 1353 and uo.gety(mob) >= 1344 then
  kill(mob)
else
  uo.ignore(mob)
endif


с хайдом - стелс (пока ждёт респа)
тут понятно что долго возитя эт не надо
я проще сделаю
перед тем как бинты на себя кидать в ставлю While not UO.Hidden()

UO.DeleteJournal() есть в ходилке!!!
нестал полностью выкладывать скрипт посчитал ходилку ненужную


Top
   
PostPosted: 2012-01-27 13:37:16 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
Code:
var distance='10' # дистанция поиска мобов
   var corpser=1 # 1-резать труп # 0-не резать труп
   
sub main()
   var n, m, mob
   var tweapon=uo.getserial(uo.objatlayer('Rhand'))
   var tshield=uo.getserial(uo.objatlayer('Lhand'))
   
   Dim npc[10]
   npc[0]=1 # count
   npc[1]='0x0038'
   npc[2]=''
   npc[3]=''
   
   Dim loot[50]
   loot[0]=3 # count
   loot[1]='0x0F7E'
   loot[2]='0x0E76'
   loot[3]='0x0EED'
   
   uo.set('finddistance',distance)
   while 1
      for n=1 to npc[0]
         uo.findtype(npc[n],-1,'ground')
         if uo.findcount() then
            mob=uo.getserial('finditem')
            if uo.getx(mob) <= 5367 and uo.getx(mob) >= 5360 and uo.gety(mob) <= 1353 and uo.gety(mob) >= 1344 then
               uo.useobject(tweapon)
               uo.useobject(tshield)
               wait(100)
               kill(mob)
               uo.useobject('lastcorpse')
               checklag()
               wait(1000)
               for m=1 to loot[0]
                  while uo.getquantity('<'+loot[m])
                     uo.moveitem('<'+loot[m])
                     wait(700)
                  wend
               next
               while uo.life<uo.str-20 and uo.count('0x0E21')
                  uo.bandageself()
                  wait(3500)
               wend
               if uo.count('0x0E20') then
                  uo.waittargettype('0x1008')
                  uo.usetype('0x0E20')
                  wait(1000)
               endif
            else
              uo.ignore(mob)
            endif
         endif
      next
      wait(1000)
   wend
endsub
sub kill(mob)
   var n
   checklag()
   for n=0 to 100
      uo.attack(mob)
      if uo.getdistance(mob)>1 then
         walkn(0,0,mob)
      endif
      if uo.injournal('Body of') then
         if corpser==1 then
            uo.waittargetobject('lastcorpse')
            wait(100)
            uo.usetype('0x0F51')
            wait(500)   
         endif
         return
      endif
      wait(1000)
   next
endsub


вставил. в проверке по х поменял местами координаты


Last edited by ZeroDX on 2012-01-28 20:07:25, edited 1 time in total.

Top
   
PostPosted: 2012-01-28 20:02:30 
Offline

Joined: 2011-05-02 17:13:51
Posts: 22
вылетила ошибка в страке

uo.ignore(mob)

изменил

var distance='10' 10 на 30 стала работать

из 10 находит 8
2 просто невидит даже если моб меня долбит


Top
   
PostPosted: 2012-01-28 20:08:30 
Offline
User avatar

Joined: 2006-12-08 10:51:50
Posts: 718
Location: Москва
Поправил в пред посте игнор. Засунул не в тот if


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

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 15 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:  
cron
Powered by phpBB® Forum Software © phpBB Limited