Page 1 of 1

AutoCure

Posted: 2013-09-08 15:00:12
by John Bosoy
Подскажите что не так в скрипте, почему не работает?

sub AUTO_Cure()
while not uo.dead()
If uo.Poisoned() > 0 Then
If uo.Count('0x0F07') > 0 Then
uo.unequip('Rhand','0x401A4B7C')
wait(700)
repeat
If uo.Count('0x0F07') < 1 Then
goto a
EndIf
uo.usetype(0x0F07)
wait(700)
until uo.Poisoned() < 1
a:
uo.equip('Rhand','0x401A4B7C')
wait(700)
Else
Wait(40)
EndIf
EndIf
wend
end sub

Re: AutoCure

Posted: 2013-09-08 15:29:31
by RL_ka
Код нужно оформлять вот так, тогда у людей будет намного больше желания помогать тебе

Code: Select all

sub AUTO_Cure()
   while not uo.dead()
      If uo.Poisoned() > 0 Then
         If uo.Count('0x0F07') > 0 Then
            uo.unequip('Rhand','0x401A4B7C')
            wait(700)
            repeat
               If uo.Count('0x0F07') < 1 Then
                  goto a
               EndIf
               uo.usetype(0x0F07)
               wait(700)
            until uo.Poisoned() < 1
            a:
            uo.equip('Rhand','0x401A4B7C')
            wait(700)
         Else
            Wait(40)
         EndIf
      EndIf
   wend
end sub

Re: AutoCure

Posted: 2013-09-08 15:35:37
by John Bosoy
RL_ka wrote:Код нужно оформлять вот так, тогда у людей будет намного больше желания помогать тебе

Code: Select all

sub AUTO_Cure()
   while not uo.dead()
      If uo.Poisoned() > 0 Then
         If uo.Count('0x0F07') > 0 Then
            uo.unequip('Rhand','0x401A4B7C')
            wait(700)
            repeat
               If uo.Count('0x0F07') < 1 Then
                  goto a
               EndIf
               uo.usetype(0x0F07)
               wait(700)
            until uo.Poisoned() < 1
            a:
            uo.equip('Rhand','0x401A4B7C')
            wait(700)
         Else
            Wait(40)
         EndIf
      EndIf
   wend
end sub

Буду знать!)

Re: AutoCure

Posted: 2013-09-09 12:30:27
by John Bosoy
Помогите пожалуйста.

Re: AutoCure

Posted: 2013-09-09 12:54:42
by Mirage
А что не так?
Паузы не хватает в цикле да не понятно для чего скачек на a: сделан.

Code: Select all

sub AUTO_Cure()
   while not uo.dead()
      If uo.Poisoned() and uo.Count('0x0F07') Then
         uo.unequip('Rhand','0x401A4B7C')
         wait(700)
         while uo.Poisoned() or uo.Count('0x0F07')
            uo.usetype(0x0F07)
            wait(700)
         wend
         uo.equip('Rhand','0x401A4B7C')
         wait(700)
      EndIf
      Wait(100)
   wend
end sub

Разумеется это будет работать если тип бутылки и ID оружия указаны верно.

Re: AutoCure

Posted: 2013-09-09 21:35:01
by John Bosoy

Code: Select all

sub drink_cure()
   while not uo.dead()
      While UO.Poisoned()
         If uo.Count('0x0F07') > 0 Then
            uo.unequip('Lhand',0x40106d68)
            wait(600)
            uo.usetype(0x0f07)
            wait(600)
            uo.equip('Lhand',0x40106d68)
            wait(600)
         Else
            Wait(40)
         EndIf
      wend
   wend
end sub


Code: Select all

sub drink_cure()
   while not uo.dead()
      If UO.Poisoned() and uo.Count('0x0F07') > 0 Then       
            uo.unequip('Lhand',0x40106d68)
            wait(600)
            uo.usetype(0x0f07)
            wait(600)
            uo.equip('Lhand',0x40106d68)
            wait(600)
         Else
            Wait(40)
      EndIf
   wend
end sub


не работают оба...

Re: AutoCure

Posted: 2013-09-09 23:22:28
by Mirage
Бида.
А мой у меня работает. Если все правильно прописать.

PS ну так ты опять у себя одни и теже ошибки допускаешь. Зачем спрашивать если не слушаешь что говорят?

Напиши на бумаге по русски последовательно действия которые ты хочешь чтобы скрипт делал и посмотри что ты ваяешь. Зачем цикл в цикле? Почему нет паузы если условия не выполняются? В общем в уроки в уроки...