Yoko

All sides of Injection
It is currently 2025-10-15 00:05:53

All times are UTC+02:00




Post new topic  Reply to topic  [ 12 posts ] 
Author Message
PostPosted: 2011-01-24 14:26:05 
Offline

Joined: 2009-01-06 21:20:02
Posts: 16
Уважаемые скриптеры.. Помогите с доработкой скрипта на автохил..
Сам скрипт-

Code:
sub AutoHeal()
  while uo.life>0
    if uo.life<=uo.str-50 then
      UO.SetArm('CWeapon')
      UO.Exec("bandageself")
      wait(400)
      UO.Arm('CWeapon')
      wait(3000)
    endif
  wend
end sub


Помогите вставить в этот автохил проверку на пойзон.. Тоесть Если мне нанесли дамаг он начинает хилится , если вдруг меня пойзонули то лечение бинтами он останавливает и кастует на себя Куре до, и потом опять продолжает хилится..
Наверно такое невозможно , но думаю дай попробую спросить.. :lol:


Top
   
PostPosted: 2011-01-24 16:44:40 
Offline

Joined: 2009-01-06 21:20:02
Posts: 16
Забыл сказать , если необходимо до готов за энную сумму получить данный скрипт (WMR) :wink:
Несочтите за мажорство , просто реально нужен скрипт ...
Шард ДРВ :roll:


Top
   
PostPosted: 2011-01-24 20:12:35 
Offline
User avatar

Joined: 2010-04-07 14:43:26
Posts: 62
http://yoko.com.ua/help/help.php?lang=rus&a=item&item=Poisoned
http://yoko.com.ua/help/help.php?lang=rus&a=item&item=cast


Top
   
PostPosted: 2011-01-24 21:37:47 
Offline

Joined: 2009-01-06 21:20:02
Posts: 16
Не понял , к чему ты это написал?


Top
   
PostPosted: 2011-01-24 22:55:58 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
OmenSab wrote:
Не понял , к чему ты это написал?

if uo.Poisoned('self') then ...

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


Top
   
PostPosted: 2011-01-25 09:02:10 
Offline

Joined: 2009-01-06 21:20:02
Posts: 16
Мда.. вот если б в этом еще понимать бы :(


Top
   
PostPosted: 2011-01-25 09:24:28 
Offline
User avatar

Joined: 2009-05-28 09:58:28
Posts: 2802
Location: Иваново
Тогда вам сюда. :wink:

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


Top
   
PostPosted: 2011-01-25 09:50:13 
Offline

Joined: 2009-01-06 21:20:02
Posts: 16
sub AutoHeal()
while not uo.Dead()
if uo.life<=uo.str-50 then
repeat
UO.SetArm('CWeapon')
UO.Exec("bandageself")
wait(400)
UO.Arm('CWeapon')
uo.deletejournal()
until uo.InJournal("You put") or uo.InJournal("You apply")
wait(3000)
if uo.Poisoned('self') then
UO.Cast("Cure","self")
wait(3000)
endif
wend
end sub
Проверьте пожалуста.. Как говорится первый блин 8)


Top
   
PostPosted: 2011-01-25 12:22:11 
Offline
User avatar

Joined: 2010-04-07 14:43:26
Posts: 62
OmenSab пожалуйста пользуйся Codesweeper для табуляции строк и тегами [cоde][/cоde] при редактировании мессага.

OmenSab wrote:
если вдруг меня пойзонули то лечение бинтами он останавливает и кастует на себя Куре до, и потом опять продолжает хилится

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

Code:
sub AutoHeal()
  WHILE not uo.Dead()
    If uo.life <= (uo.str-50) then
     
      repeat
        while uo.Poisoned('self') ; условие цикла проверяет отравлен ли и если да то лечит.
          UO.Cast("Cure","self")
          wait(3000)
        wend
       
        UO.SetArm('CWeapon')
        uo.disarm() ; если надо разоружиться чтоб юзать бинты
        UO.Exec("bandageself")
        wait(400)
        UO.Arm('CWeapon')
      until uo.life >= (uo.str-50) ; так надёжнее чем с журналом и журнал не надо будет
                                   ; удалять - вдруг понадобится. Значение подставь нужное.

    Endif
    wait(3000)
  WEND
end sub


Top
   
PostPosted: 2011-01-25 12:38:26 
Offline

Joined: 2009-01-06 21:20:02
Posts: 16
Большущее спасибо! Все разьяснил 8) При возможности попробую скрипт :wink:


Top
   
PostPosted: 2011-01-25 12:51:36 
Offline
User avatar

Joined: 2010-04-07 14:43:26
Posts: 62
Code:
        UO.SetArm('CWeapon')
        uo.disarm() ; если надо разоружиться чтоб юзать бинты
        UO.Exec("bandageself")
        wait(400)
        UO.Arm('CWeapon')

вот этот блок сам по себе кривоват - перс будет постоянно шуршать: разоружился-вооружился, но я не знаю может быть тебе так нужно, в каких условиях это всё использоваться будет. Можно разоружение и вооружение вынести из цикла лечения, т.е. запомнил набор оружия, разоружился, пролечился (проверил на яд), вооружился:

Code:
sub AutoHeal()
  WHILE not uo.Dead()

    If uo.life <= (uo.str-50) then
        UO.SetArm('CWeapon')
        uo.disarm() ; если надо разоружиться чтоб юзать бинты
     
      Repeat ; цикл лечения
        while uo.Poisoned('self') ; условие цикла проверяет отравлен ли и если да то лечит.
          UO.Cast("Cure","self")
          wait(3000)
        wend       
        UO.Exec("bandageself")
        wait(400)
      Until uo.life >= (uo.str-50) ; так надёжнее чем с журналом и журнал не надо будет
                                   ; удалять - вдруг понадобится. Значение подставь нужное.

      UO.Arm('CWeapon')
    Endif

    wait(3000)
  WEND
end sub


Top
   
PostPosted: 2011-01-25 12:55:12 
Offline

Joined: 2009-01-06 21:20:02
Posts: 16
Я думаю пока буду первым вариантом пользоватся , т.к в бою лучше пускай шуршит..
Если будут возникать проблемы тогда , да уберу из цикла.


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 3 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