Yoko
http://forum.yoko.com.ua/

Два вопроса.
http://forum.yoko.com.ua/viewtopic.php?f=3&t=14066
Page 1 of 1

Author:  UmniK [ 2008-10-16 12:43:27 ]
Post subject:  Два вопроса.

Добрый день. Вот наболело, накипело и т.д. помогите пожалуйста рабобраться.

Вопрос номер один: Чем отличаются между собой
UO.Life
UO.L
UO.H
и как мне поставить в скрипте проверку на наличие в бэкпаке банок рефреша???

Ну и вопрос номер два, посложней:

У меня есть скрипт на хил:

Code:
sub hilka() 
   While UO.Life > 0
      If UO.Life < 105Then
         UO.Bandageself()
           repeat
             If UO.InJournal("cliloc# 0x2CF7")Then
                 UO.Print ('MORTAL')
                   wait(2500)
                    UO.Bandageself()   
                       repeat 
                          wait(100)
                       until UO.InJournal("cliloc# 0xA4E9")or UO.InJournal("cliloc# 0xA4E8")or UO.InJournal("cliloc# 0x2CF8")or UO.InJournal("cliloc# 0xA4DB")or UO.InJournal("cliloc# 0x2D47") 
                    wait(100)
                  uo.usetype('0x0f0c')
              else
                wait(100)
              Endif
            until UO.InJournal("cliloc# 0xA4E9")or UO.InJournal("cliloc# 0xA4E8")or UO.InJournal("cliloc# 0x2CF8")or UO.InJournal("cliloc# 0x55C8")or UO.InJournal("cliloc# 0xA4DB")or UO.InJournal("cliloc# 0x2D47")
          uo.deletejournal("cliloc# 0xA4E9")
         wait(100)
      Else
         wait(50)
      Endif
   Wend
end sub



Скрипт по ПвП, в нем вот этот участок отвечает за отхил чара после получения аблки "мортал страйк"
Code:
 If UO.InJournal("cliloc# 0x2CF7")Then
                 UO.Print ('MORTAL')
                  wait(2500)  // ожидание перед наложением бинтов
                    UO.Bandageself()   
                       repeat 
                          wait(100)
                       until UO.InJournal("cliloc# 0xA4E9")or UO.InJournal("cliloc# 0xA4E8")or UO.InJournal("cliloc# 0x2CF8")or UO.InJournal("cliloc# 0xA4DB")or UO.InJournal("cliloc# 0x2D47") 
                    wait(100)
                  uo.usetype('0x0f0c')
              else
                wait(100)
              Endif


вот собственно строку wait(2500) мне надо заменить.
Code:
 UO.Print ('MORTAL')
 wait(2500)  // ожидание перед наложением бинтов
 UO.Bandageself()   


Необходимо что бы в этот момент время ожидания высчитывалось по формуле:
время ожидания=/6,5 секунд/-/11 - (Dexterity / 20)/
где дестери каждый раз разное.
Возможно ли такое реализовать?
Заранее спасибо :)

Author:  Jaraa [ 2008-10-16 14:41:10 ]
Post subject:  Re: Два вопроса.

UmniK wrote:
и как мне поставить в скрипте проверку на наличие в бэкпаке банок рефреша???


Code:
UO.FindType('0x0F0B','0x0000', 'my') ;type and color of potion
    if UO.FindCount()>0 then
            UO.UseObject('finditem')
      else
        wait(100)
    endif


UmniK wrote:
вот собственно строку wait(2500) мне надо заменить.
Code:
 UO.Print ('MORTAL')
 wait(2500)  // ожидание перед наложением бинтов
 UO.Bandageself()   


Необходимо что бы в этот момент время ожидания высчитывалось по формуле:
время ожидания=/6,5 секунд/-/11 - (Dexterity / 20)/
где дестери каждый раз разное.
Возможно ли такое реализовать?
Заранее спасибо :)


Вообще то в твоем скрипте строка wait(2500) ожидает когда пройдет мортал чтоб бинт лег как раз после того как пройдет. По твоей формуле при 120 дексы надо ждать -0,5 сек (то есть не ждать), а при 80 дексы 0,5 сек. Ниже 80 редко когда декс опускается можно этот вариант вообще не рассматривать. Поэтому ты можешь тупо уменьшеить время ожидания до 0,5 сек.
wait(500)

Author:  UmniK [ 2008-10-16 15:28:14 ]
Post subject:  Re: Два вопроса.

за стамину спасибо :)

Jaraa wrote:
время ожидания=/6,5 секунд/-/11 - (Dexterity / 20)/

Вообще то в твоем скрипте строка wait(2500) ожидает когда пройдет мортал чтоб бинт лег как раз после того как пройдет. По твоей формуле при 120 дексы надо ждать -0,5 сек (то есть не ждать), а при 80 дексы 0,5 сек. Ниже 80 редко когда декс опускается можно этот вариант вообще не рассматривать. Поэтому ты можешь тупо уменьшеить время ожидания до 0,5 сек.
wait(500)


ммм... время ожидания=6,5-(11-120/20)=6,5-(11-6)=6,5-5=1,5 секунды
при дексы 150
время ожидания=6,5-(11-150/20)=6,5-(11-7,5)=6,5-3,5=3 секунды.

вот именно в этот разбег в полторы секунды и спеваешь получить второй мортал :)

Author:  $!@m [ 2008-10-16 16:18:46 ]
Post subject: 

а в чем проблема написать в формуле UO.Dex?

Author:  UmniK [ 2008-10-16 16:44:49 ]
Post subject: 

$!@m wrote:
а в чем проблема написать в формуле UO.Dex?


Разве можно применять строку?
Wait(6500-((11-UO.Dex/20)*1000))

думаю инжа меня пошлеть :oops:

P.S. Невероятно, но факт, инжа схавала эту строчку :shock: :shock: :shock: :roll: . Всем спасибо :lol:

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/