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

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Kashita
Posts: 22
Joined: 2004-12-30 13:18:54

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

Post by Kashita »

у меня на шарде (шард доминарий), при касте поисона на себя, он себя отравляет, и как мне сделать чтоб при жизне меньше 50, он лечился...
и потом заново продолжал
Last edited by Kashita on 2005-05-01 22:07:24, edited 1 time in total.
Kashita
Posts: 22
Joined: 2004-12-30 13:18:54

Post 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", пишет ее прям в окошке УО
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

UO.Exec("waittargetobject 0x00023D13") - это что? проверь серийник и необходимость этой строки.
Beyonder
Expert!
Posts: 388
Joined: 2005-04-23 10:19:43
Contact:

Post 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
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

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

Code: Select all

      UO.WaitTargetObject('self')
      UO.Usetype("0x0E21") #Bandages
UO.bandageself() - м? :roll:
Beyonder
Expert!
Posts: 388
Joined: 2005-04-23 10:19:43
Contact:

Post by Beyonder »

У bandageself-а бывают странные глюки если в рюкзаке много цветных кучек бинтов. Он тогда не находит ни одну из кучек.
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Beyonder wrote:У bandageself-а бывают странные глюки если в рюкзаке много цветных кучек бинтов. Он тогда не находит ни одну из кучек.
не без этого ;) лечится - открытием/закрытием бакпака или перезакидыванием оных в пак.
а предложенный вариант таки не выдаёт таких артефактов вообще?
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

На этом шарде магию качать "Ин Лором" нужно!
Beyonder
Expert!
Posts: 388
Joined: 2005-04-23 10:19:43
Contact:

Post 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')

название спела на любое какое хочешь и будет тебе счастье :).
Sfagnum
Expert!
Posts: 1284
Joined: 2004-07-04 00:14:58
Contact:

Post by Sfagnum »

Beyonder wrote:2 Сфагнум:
Помоему не выдает. Тут вообще-то упрощенный вариант, я так вообще-то у себя сделал так:

Code: Select all

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

Так точно не сбиваеться.
век живи - век учись :lol:
Destruction
Junior Expert
Posts: 3221
Joined: 2004-06-24 22:08:56

Post by Destruction »

DIKIY wrote:На этом шарде магию качать "Ин Лором" нужно!


Ты не прав, он не магию качает, а хилинг, не надо тут писать не по теме, тем более если сам играть толком на оминарии еще не научился.
YokoInjection CodeSweeper
Function not found?
Possession of mathematics at the level of art - a gift that is only available for election.
Sorry for my clumsy English.
Telegram: @tatikom
DIKIY
Posts: 53
Joined: 2004-10-07 15:42:12
Location: Москва
Contact:

Post by DIKIY »

Destruction wrote:
DIKIY wrote:На этом шарде магию качать "Ин Лором" нужно!


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


:roll:
Post Reply