Page 1 of 1

помогите доделать скрипт на магери

Posted: 2005-05-01 16:43:22
by Kashita
у меня на шарде (шард доминарий), при касте поисона на себя, он себя отравляет, и как мне сделать чтоб при жизне меньше 50, он лечился...
и потом заново продолжал

Posted: 2005-05-01 21:57:04
by Kashita
ну вот чего то сделал,

Code: Select all

 sub magery() 
VAR LastTimer
while NOT UO.Dead()
UO.DeleteJournal()
CheckLag()
while UO.Mana>=10
UO.Cast ('Poison', 'Self')
wait(3000)
wend
while UO.Mana<UO.Int
LastTimer=UO.Timer()
UO.UseSkill('Meditation')
repeat
wait(100)
until UO.InJournal("You are") OR UO.InJournal("You lose") OR UO.Timer()>LastTimer+200
UO.DeleteJournal()
CheckHeal() 
wait(2000)
wend
wend
uo.useskill ("Spirit Speak")
wait(4000)
end sub

sub CheckLag()
UO.DeleteJournal()
UO.Click('backpack')

repeat
wait(500)
until UO.InJournal('backpack')
end sub

 
sub CheckHeal()
if UO.Life<55 then
UO.Say('guards')
Repeat
uo.Exec('warmode 0')
UO.Usetype("0x0E21") #Bandages
UO.Exec("waittargetobject 0x00023D13")  # àéäè ÷àðà
wait(3500)
Until (UO.InJournal("need healing"))
end if
end sub


подскажите что тут не правильно, и какие ошибки...

П.С. выдает ошибку "invalid serial index", пишет ее прям в окошке УО

Posted: 2005-05-02 07:44:33
by Sfagnum
UO.Exec("waittargetobject 0x00023D13") - это что? проверь серийник и необходимость этой строки.

Posted: 2005-05-02 08:09:50
by Beyonder
Помоему это прицел на себя. И стоит он не перед а после использования бинтов. И зачем-то еще и выставлен серийник на себя.
Вот модифицированный вариант этой функции.
Сразу скажу что журнал и его проверку я не терплю и сделал все проверки через количество бинтов, силу и жизни.

Code: Select all

sub CheckHeal()
  var BCount; //Количество бинтов в начале
  if UO.Life<55 then
    UO.Say('guards')
    uo.WarMode(0)
    Repeat
      UO.WaitTargetObject('self')
      UO.Usetype("0x0E21") #Bandages
      BCount=UO.Count('0x0E21') #Сколько было бинтов
      repeat
        wait(100)
      until UO.Count(0x0E21)<>BCount #Пока бинтов не станет меньше
    Until UO.Life==UO.Str #Пока не вылечимся
  end if
end sub

Posted: 2005-05-02 10:08:08
by Sfagnum
Beyonder wrote:Помоему это прицел на себя. И стоит он не перед а после использования бинтов. И зачем-то еще и выставлен серийник на себя.
хз... я чашку уже помыл... так что гадать не начем ;)
Beyonder wrote:

Code: Select all

      UO.WaitTargetObject('self')
      UO.Usetype("0x0E21") #Bandages
UO.bandageself() - м? :roll:

Posted: 2005-05-03 11:00:13
by Beyonder
У bandageself-а бывают странные глюки если в рюкзаке много цветных кучек бинтов. Он тогда не находит ни одну из кучек.

Posted: 2005-05-03 11:20:33
by Sfagnum
Beyonder wrote:У bandageself-а бывают странные глюки если в рюкзаке много цветных кучек бинтов. Он тогда не находит ни одну из кучек.
не без этого ;) лечится - открытием/закрытием бакпака или перезакидыванием оных в пак.
а предложенный вариант таки не выдаёт таких артефактов вообще?

Posted: 2005-05-03 13:55:47
by DIKIY
На этом шарде магию качать "Ин Лором" нужно!

Posted: 2005-05-04 12:04:32
by Beyonder
2 Сфагнум:
Помоему не выдает. Тут вообще-то упрощенный вариант, я так вообще-то у себя сделал так:

Code: Select all

UO.FindType('bandage',-1,'self')
UO.WaitTargetObject('self')
UO.UseObject('finditem')

Так точно не сбиваеться.
2 Дикий:
Поменяй в строчке:

Code: Select all

UO.Cast ('Poison', 'Self')

название спела на любое какое хочешь и будет тебе счастье :).

Posted: 2005-05-04 14:15:56
by Sfagnum
Beyonder wrote:2 Сфагнум:
Помоему не выдает. Тут вообще-то упрощенный вариант, я так вообще-то у себя сделал так:

Code: Select all

UO.FindType('bandage',-1,'self')
UO.WaitTargetObject('self')
UO.UseObject('finditem')

Так точно не сбиваеться.
век живи - век учись :lol:

Posted: 2005-05-04 15:20:32
by Destruction
DIKIY wrote:На этом шарде магию качать "Ин Лором" нужно!


Ты не прав, он не магию качает, а хилинг, не надо тут писать не по теме, тем более если сам играть толком на оминарии еще не научился.

Posted: 2005-05-05 10:22:37
by DIKIY
Destruction wrote:
DIKIY wrote:На этом шарде магию качать "Ин Лором" нужно!


Ты не прав, он не магию качает, а хилинг, не надо тут писать не по теме, тем более если сам играть толком на оминарии еще не научился.


:roll: