Page 1 of 1

Небольшая просьба.

Posted: 2006-07-19 06:13:58
by OxoT_nik
Вот у меня есть скрипт на арчери допустим. Чар стреляет в растамленного дракона, когда у него (дракона) остается определенное кол-во НР, чар начинает хилить его. Как отхелил - опять начинает стрелять в дракона.

Мне нужно вставить в скрипт такую вот часть:
Через, например, 2 часа чар тамит растамленного дракона, пишет all drop, собирает стрелы (выпавшие из дракона) и дальше продолжает вышеупомянутые действия. И чтобы это зациклилось и повторялось каждые 2 часа.

Помогите пожалста написать такое вот дополнение к скрипту.

Posted: 2006-07-19 07:26:48
by Scripts Writer
Выложи свой скрипт. Телепаты в отпуске.

Posted: 2006-07-19 12:49:22
by OxoT_nik

Code: Select all

sub Archery() 
var Bow='0x13B1'

UO.Exec('addobject Dragon')
while UO.Targeting()
  wait(10)
wend

UO.Exec('addobject WashBasin')
while UO.Targeting()
  wait(10)
wend

while not uo.Dead() 
  UO.Equipt('Lhand',Bow)
  uo.WarMode(true)
  uo.Attack('Dragon') 
  while uo.GetHp('Dragon') > uo.GetMaxHp('Dragon') / 3 
    wait(100) 
    if uo.life < 80 then
      UO.FindType('0x0E21',-1,'backpack')
      if UO.FindCount() then
        uo.bandageself() 
        wait(3000) 
      else
        UO.FindType('0x0E20',-1,'backpack')
        if UO.FindCount() then
          UO.WaitTargetObject('WashBasin')
          UO.UseObject('finditem')
          wait(500)
        else
          UO.Msg('No more bandages =(')
        endif
      endif
    end if 
  wend 
  uo.WarMode(false) 
  while uo.GetHp('Dragon') < uo.GetMaxHp('Dragon')  
    UO.FindType('0x0E21',-1,'backpack')
    if UO.FindCount() then
      uo.WaitTargetObject('Dragon')
      uo.UseObject('finditem')
      wait(3000)
      if uo.life < 180 then 
        uo.bandageself() 
        wait(3000) 
      end if 
    else
      UO.FindType('0x0E20',-1,'backpack')
      if UO.FindCount() then
        UO.WaitTargetObject('WashBasin')
        UO.UseObject('finditem')
        wait(500)
      else
        UO.Msg('No more bandages =(')
      endif
    endif
  wend 
wend 
end sub

Posted: 2006-07-19 14:19:23
by Leo
Не тестил.

Code: Select all

sub Archery() 
var Bow='0x13B1' 
var Timer=UO.Timer()
var WaitTime = 60*60*1000

UO.Exec('addobject Dragon') 
while UO.Targeting() 
  wait(10) 
wend 

UO.Exec('addobject WashBasin') 
while UO.Targeting() 
  wait(10) 
wend 

while not uo.Dead() 
  UO.Equipt('Lhand',Bow) 
  uo.WarMode(true) 
  uo.Attack('Dragon') 
  while uo.GetHp('Dragon') > uo.GetMaxHp('Dragon') / 3 
    wait(100) 
    if uo.life < 80 then 
      UO.FindType('0x0E21',-1,'backpack') 
      if UO.FindCount() then 
        uo.bandageself() 
        wait(3000) 
      else 
        UO.FindType('0x0E20',-1,'backpack') 
        if UO.FindCount() then 
          UO.WaitTargetObject('WashBasin') 
          UO.UseObject('finditem') 
          wait(500) 
        else 
          UO.Msg('No more bandages =(') 
        endif 
      endif 
    end if 
  wend 
   if UO.Timer()>(Timer+60000) then
   Taming()
   Timer=UO.Timer() 
   endif 
  uo.WarMode(false) 
  while uo.GetHp('Dragon') < uo.GetMaxHp('Dragon')  
    UO.FindType('0x0E21',-1,'backpack') 
    if UO.FindCount() then 
      uo.WaitTargetObject('Dragon') 
      uo.UseObject('finditem') 
      wait(3000) 
      if uo.life < 180 then 
        uo.bandageself() 
        wait(3000) 
      end if 
    else 
      UO.FindType('0x0E20',-1,'backpack') 
      if UO.FindCount() then 
        UO.WaitTargetObject('WashBasin') 
        UO.UseObject('finditem') 
        wait(500) 
      else 
        UO.Msg('No more bandages =(') 
      endif 
    endif 
  wend 
wend 
end sub

sub Taming()
   repeat
   UO.WarMode(0)
   UO.WarMode(0)
   UO.DeleteJournal() 
   UO.WaitTargetObject('Animal')  
   UO.UseType('0x13F9') 
      repeat 
         wait(100) 
      until UO.InJournal('fail') or UO.InJournal('It seems') or UO.InJournal('see the creature')
   until Uo.InJournal('It seems')
   UO.Sayu('all drop all')
   wait(1000)
   UO.Findtype('0x0F3F','-1','ground')
   If UO.FindCount() Then 
      UO.Grab('all','finditem') 
         wait(1000) 
      CheckLag() 
   Endif 
endsub

sub CheckLag() 
uo.DeleteJournal() 
uo.Click('backpack') 
repeat 
wait(50) 
until UO.InJournal('backpack') 
end sub

Posted: 2006-07-19 16:18:26
by OxoT_nik
Не работает.

Posted: 2006-07-19 17:15:05
by Nmy
OxoT_nik wrote:Не работает.
что именно ? телепаты в отпуске.

Posted: 2006-07-19 21:56:40
by OxoT_nik
NMY wrote:
OxoT_nik wrote:Не работает.
что именно ? телепаты в отпуске.
Не работает то, что я просил дописать! А именно не тамит, не дропает и не собирает стрелы. Как стрелял просто, так и стреляет.

Posted: 2006-07-19 22:44:41
by Nmy
если в скрипте нету ошыбок то проверь тьипы вещей ...

вобщето узнать у дракона хп наверно нереально ... может я ошыбаюсь, но это не тоже самое что узнать хп у себя ...

Posted: 2006-07-20 00:12:29
by OxoT_nik
NMY wrote:если в скрипте нету ошыбок то проверь тьипы вещей ...

вобщето узнать у дракона хп наверно нереально ... может я ошыбаюсь, но это не тоже самое что узнать хп у себя ...
Для чего узнавать НР дракона? :roll:

Posted: 2006-07-20 14:29:00
by Scripts Writer
NMY wrote:если в скрипте нету ошыбок то проверь тьипы вещей ...

вобщето узнать у дракона хп наверно нереально ... может я ошыбаюсь, но это не тоже самое что узнать хп у себя ...
ХП дракона подрузамеваются как некая переменная, -для вычисления GetMaxHP/3 , она не требует численного значения. Инжекту достаточно по статусу хп, определить её ~ значение.

А вот то что с таймером возможны проблемы-это я уже могу заподозрить.
Выреж таймер, и сразу после цикла на проверку жизней дракона, вставь его подхел, добор стрел и таминг. Если автору нужно опр. время таминга драка то достаточно зделать следующее:

Code: Select all

while not uo.Dead()
  while uo.GetHp('Dragon') ...
     ...
  wend
  taming = taming + 5000
  if taming > 60000 then
    ...
  end if
wend

Posted: 2006-07-21 21:52:47
by OxoT_nik
Зачем вам нужно НР драка узнать то?
Скрипт под ДрВ нужен.. Нахрена такой геморой себе создавать?

Posted: 2006-07-22 15:30:33
by Scripts Writer
OxoT_nik wrote:Зачем вам нужно НР драка узнать то?
Скрипт под ДрВ нужен.. Нахрена такой геморой себе создавать?
Ну раз тебе такой геморой не нужен, то топ клоуз. Ищи в поиске. Там всё есть.

Posted: 2006-07-22 15:53:07
by Leo
You Must Die wrote:
Ну раз тебе такой геморой не нужен, то топ клоуз. Ищи в поиске. Там всё есть.
Побольше терпения и человеколюбия =))))