Yoko

All sides of Injection
It is currently 2025-12-26 08:12:34

All times are UTC+02:00




Post new topic  Reply to topic  [ 12 posts ] 
Author Message
 Post subject: Пойзон
PostPosted: 2005-06-21 19:00:17 
Offline

Joined: 2005-06-18 15:55:25
Posts: 24
Пытался написать скрипт но как то затрудняюсь в середине скрипта
помогите пожалуйста
Code:
sub Poison()
    var strela =
    var binti =
    var blbinti =
    var butpus =
    var butjad =
    var sklad =
   while UO.SkillVal( 'Poisoning' ) < 100
    
      UO.FindType( strela, -1, 1 )
           UO.Grab( '1', 'finditem' )
      wait( 2000 )
      UO.FindType( butjad, -1, 1 )
      If UO.FindCount() == 0 Then
             UO.Print("Bottle of Poison not found")
             return
           Endif
############################################################################
#Сюда надо вставить скрипт чтобы чар начинал бутлкой яда пойзонить 1-ую стрелу
#переложенную перед этим на пол(или в бекпак без разницы), в случае удачного запойзонивания
# надо чтобы чара сварил новую бутылку яда а дальше бы пошла проверка хп и перекладыания стрелы...
# если же неудачно то чтобы пойзонил снова стрелу
###############################################################################




   if UO.Life < 80 then
     If UO.Count( binti ) < 20 Then
            UO.Findtype( blbinti )
            If UO.FindCount() > 0 Then
               UO.MoveItem( 'finditem', 0, Sklad )
               wait(1000)
               CheckLag()
            Endif
            UO.Findtype( bandag, -1, Sklad )
            If UO.FindCount() > 0 Then
               UO.Grab( '100', 'finditem' )
               wait(1000)
               CheckLag()
            Endif
     Endif
    While UO.Life < 100
       UO.Bandageself()
            wait(4000)
            CheckLag()
         Wend
   Endif
         wait(2000)
   wend
        wait(50)
endsub
   
Sub CheckLag()
   DeleteJournal( 'backpack' )
   UO.Click( 'backpack' )
   repeat
      wait(100)
   until UO.InJournal( 'backpack' )
endsub


Top
   
 Post subject:
PostPosted: 2005-06-21 19:23:17 
Offline
Expert!
User avatar

Joined: 2004-10-15 22:38:04
Posts: 1396
Location: Moscow City.
Code:
while UO.SkillVal( 'Poisoning' ) < 100 

Если ты так намерен качатс до гыма то не 100 а 1000 И если значение реал от нериала различно то так
Code:
while UO.SkillVal('Poisoning',1)<1000 

Должен признатся дальше несмотрел.

Хм а скрипт эдреда непробовал вроде по запросу чем-то похоже?
http://yoko.netroof.net/forum/viewtopic.php?t=704


Top
   
 Post subject:
PostPosted: 2005-06-21 19:24:44 
Offline

Joined: 2005-06-18 15:55:25
Posts: 24
I'm wrote:
Хм а скрипт эдреда непробовал вроде по запросу чем-то похоже?
http://yoko.netroof.net/forum/viewtopic.php?t=704

он у него похож, но там нет функции чтобы варил бутылку пойзона, у него они уже готовы


Top
   
 Post subject:
PostPosted: 2005-06-21 20:46:33 
Offline
Expert!
User avatar

Joined: 2004-10-15 22:38:04
Posts: 1396
Location: Moscow City.
Boris wrote:
он у него похож, но там нет функции чтобы варил бутылку пойзона, у него они уже готовы

А ты добавь и выложи тут :wink:


Top
   
 Post subject:
PostPosted: 2005-06-21 21:26:22 
Offline

Joined: 2005-06-18 15:55:25
Posts: 24
I'm wrote:
Boris wrote:
он у него похож, но там нет функции чтобы варил бутылку пойзона, у него они уже готовы

А ты добавь и выложи тут :wink:

ну ладно завтра попробую что нить сделать


Top
   
 Post subject:
PostPosted: 2005-06-22 00:13:18 
Offline
Expert!
User avatar

Joined: 2004-10-15 22:38:04
Posts: 1396
Location: Moscow City.
А мы тебе поможем малек :wink:


Top
   
 Post subject:
PostPosted: 2005-06-22 14:13:38 
Offline

Joined: 2005-06-18 15:55:25
Posts: 24
I'm wrote:
А мы тебе поможем малек :wink:

вот сделал что смог, подскажите что не так, или что можно исправить. В ходе написания скрипта появилась токо один вопрос, он указан в тексте самого кода, помогите плиз :-)
Code:
sub Poison()
    var strela = '0x0F3F'
    var stupka =
    var NS = '0x0F88'
    var binti = '0x0E21'
    var blbinti = '0x0E20'
    var butpus = '0x0F0E'
    var butjad =
    var sklad =
    var ms1 = 'Select a poison potion'
    UO.Exec('set finddistance 2')
   while UO.SkillVal( 'Poisoning' ) < 1000
           CheckLag()
      UO.FindType( strela, -1, 1 )         ;ищем стрелу на полу     
           UO.Grab( '1', 'finditem' )   
      wait(1000)
      UO.FindType('butjad')                ;ищем бутылку яда       
           UO.DeleteJournal()
           CheckLag()
              repeat                 
                  UO.useskill('Poisoning', 'butjad')   ;начинаем пойзонить (для этого сначала надо заюзать скил пойзон, потом укзаать на бутылку яда
                    repeat                             ; а потом указать что будем пойзонить
                     wait(100)
                    until UO.InJournal('ms1')
                  UO.WaitTargetType('strela')
                   repeat
                    wait(100)
############################################################
           until UO.Count(strela)==1       ; пойзоним до тех пор пока в бек паке не окаджется хотя бы одна стрела запойзоненная
вот с эти есть небольшая проблема, я не знаю как сделать чтобы он пойзонил до тех пор пока в бекпаке не окажется хотя бы одна запойзоненная стрела,  пробовал делать по типу но он оказался один и тот же как у запойзоненной так и простой  в журнале в случае удачного пойзона нет ни одной надписи. Вообщем я в затруднеении
###############################################################################
           CheckLag()
           UO.FindType( otravstrela, -1, 'backpack' )
           UO.MoveItem( 'finditem', 0, sklad )         ; перекладываем запойзоненую стрелу в сумку
           wait(1000)
        while UO.Count(butjad) < 4            ;смотри кол-во яда в бекпаке, если меньше 4 то варим
               UO.FindType( NS, -1, 1 )
               UO.WaitTargetType(NS)
               UO.Usetype('stupka')
               wait(200)
               UO.WaitMenu('What','Greater_Poison')
                 repeat
                  wait(100)
                 until UO.Count(butjad) == 4           ; до тех пор пока кол-во яда не будет равно 4
             wend
          CheckLag()
         if UO.Life < 80 then                        ; смотрим на хиты, если <80 проверяем не кончились ли бинты
     If UO.Count( binti ) < 20 Then
            UO.Findtype( blbinti )
            If UO.FindCount() > 0 Then
               UO.MoveItem( 'finditem', 0, Sklad )
               wait(1000)
               CheckLag()
            Endif
            UO.Findtype( bandag, -1, Sklad )
            If UO.FindCount() > 0 Then
               UO.Grab( '100', 'finditem' )
               wait(1000)
               CheckLag()
            Endif
     Endif
    While UO.Life < 100
       UO.Bandageself()
            wait(4000)
            CheckLag()
         Wend
   Endif
      wend
endsub
   
Sub CheckLag()
   DeleteJournal( 'backpack' )
   UO.Click( 'backpack' )
   repeat
      wait(100)
   until UO.InJournal( 'backpack' )
endsub


Top
   
 Post subject:
PostPosted: 2005-06-23 19:02:21 
Offline
Expert!
User avatar

Joined: 2005-05-04 14:05:19
Posts: 2580
Location: Москва
ты лутше расскажи как ты сам определяешь что стрела отравлена? наличном опыте?;)
пойзонинг всегда удачный? а если есть не удача то есть ли какоето сообщение??? полюбому должна быть инфа...


Top
   
 Post subject:
PostPosted: 2005-06-23 19:47:13 
Offline
Expert!
User avatar

Joined: 2004-10-15 22:38:04
Posts: 1396
Location: Moscow City.
Ну еще очень хочется узнать что за шард :?:
Boris добро пожаловать в личку :wink:


Top
   
 Post subject:
PostPosted: 2005-06-23 19:54:56 
Offline

Joined: 2005-06-18 15:55:25
Posts: 24
Grin wrote:
ты лутше расскажи как ты сам определяешь что стрела отравлена? наличном опыте?;)
пойзонинг всегда удачный? а если есть не удача то есть ли какоето сообщение??? полюбому должна быть инфа...

если она отрвлена то просто меняет цвет с простого на зеленый, и на ней пишеться не просто arrow a зщшыщт arrow, пойзонит с физлами есть два варианта физла:
1 просто физланет
2 еще и себя отравит, при этом надписи разные


Top
   
 Post subject:
PostPosted: 2005-06-23 20:25:46 
Offline
Expert!
User avatar

Joined: 2004-10-15 22:38:04
Posts: 1396
Location: Moscow City.
Code:
uo.findtype("type","color","where")


Top
   
 Post subject:
PostPosted: 2005-06-24 19:02:10 
Offline

Joined: 2005-06-18 15:55:25
Posts: 24
Вообщем такая проблема, после выбора яда не находится стрела на полу и следовательно скрипт сбивает
пс суть такова: сначала находим в мешке стрелы, перетаскиваем на пол 1 стрелу, юзаем скил пойзон прицелом показываем на бутылку яда, потом прицелом показываем на стрелу, в случае удачного пойзона перекладываем запойзоненную стрелу из бекпака в мешок на полу. Далее смотрим скоко осталось бутылок пойзона, если меньше 4 то начинаем варить их до тех пор пока их не станет 4. Далее смотри не уменьшилось ли у нас хп если нет то все начинаем заново

Code:
sub Poison() 
    var strela = '0x0F3F'
    var stupka = '0x4D914CF3'
    var NS = '0x0F88'
    var binti = '0x0E21'
    var blbinti = '0x0E20'
    var butpus = '0x0F0E'
    var butjad = '0x0F0A'
    var sklad = '0x525AED3F'
    var sklad1 = '0x4D1E3814'
    var ms1 = 'Select a poison potion'
    UO.Exec('set finddistance 2')
   while UO.SkillVal( 'Poisoning' ) < 1000
       CheckLag()
      UO.FindType( 'strela', '0x0044', 'sklad' )         ;ищем стрелу в сумке     
       uo.moveitem ( 'finditem', '1', 'ground')
       UO.print('Nawli strelu i kinuli na pol')
      wait(1000)
      UO.FindType('butjad')                ;ищем бутылку яда       
      UO.print('Nawli Jad')
           UO.DeleteJournal()
           CheckLag()
        repeat
                  UO.FindType('0x0F0A', '0x0000', 'backpack' )
                  wait(100)
                  UO.useskill('Poisoning', 'finditem')       ;начинаем пойзонить (для этого сначала надо заюзать скил пойзон, потом укзаать на бутылку яда
                    repeat                             ; а потом указать что будем пойзонить
                     wait(100)
#################################################################
# В этом месте почему не начинается пойзонить стрелу
#                   until UO.InJournal('Select an item.')
                  uo.waittargetground( 'finditem' )
                  UO.FindType('strela', '0x0044', 'ground' )
                  wait(100)
                ;  uo.waittargetground( 'finditem' )
                  UO.print('poisonim strelu')
                 repeat
                    wait(100)
                 until UO.Count(strela)==1       ; пойзоним до тех пор пока в бек паке не окаджется хотя бы одна стрела запойзоненная
               until UO.Count(strela)==1 
           CheckLag()
           UO.FindType( 'strela', '0x0044', 'backpack' )
           UO.MoveItem( 'finditem', '0', 'sklad1' )         ; перекладываем запойзоненую стрелу в сумку со стрелами
           wait(1000)
        while UO.Count(butjad) < 4            ;смотри кол-во яда в бекпаке, если меньше 4 то варим
               UO.FindType( 'NS', '-1', 'sklad' )
               UO.WaitTargetType(NS)
               UO.Usetype('stupka')
               wait(200)
               uo.automenu('Select a potion to make','Greater_Poison')
                 repeat
                  wait(100)
                 until UO.Count(butjad) == 4           ; до тех пор пока кол-во яда не будет равно 4
             wend
          CheckLag()
         if UO.Life < 80 then                        ; смотрим на хиты, если <80 проверяем не кончились ли бинты
     If UO.Count( binti ) < 20 Then
            UO.Findtype( 'blbinti' )
            If UO.FindCount() > 0 Then
               UO.MoveItem( 'finditem', '0', 'Sklad' )
               wait(1000)
               CheckLag()
            Endif
            UO.Findtype( 'binti', '-1', 'Sklad' )
            If UO.FindCount() > 0 Then
               UO.Grab( '100', 'finditem' )
               wait(1000)
               CheckLag()
            Endif
     Endif
    While UO.Life < 100
       UO.Bandageself()
              repeat
                wait(100)
              until UO.InJournal('You have cured your patient completely') and  UO.InJournal('You place a bloody bandage in your backpack')
            CheckLag()
         Wend
   Endif
      wend
endsub
   
Sub CheckLag()
   UO.DeleteJournal()
   UO.Click( 'backpack' )
   repeat
      wait(100)
   until UO.InJournal( 'backpack' )
endsub


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

All times are UTC+02:00


Who is online

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