Без вашей помощи не обойдусь.

Ask for help

Moderators: Murderator+, Murderator

Post Reply
Kallish
Posts: 11
Joined: 2012-08-09 16:07:37

Без вашей помощи не обойдусь.

Post by Kallish »

Играю на middle-earth.ru
Тут существуют книги не обычной магии, в игре их можно забиндить таким образом "f1 say .cast_название спела".
Соответственно инжект их не знает и не распознает как обычные спеллы книги магии.
В самой игре через чат можно делать так к примеру .cast Regeneration повляется таргет.
Бьюсь уже второй день как заставить инжект кидать на себя или на противника эти спеллы.

пример скрипта который инжект понимает

Code: Select all

sub paraliz()
maska();
uo.cast('Paralyze','last')
maska();
end sub

Примеры скриптов который инжект не понимает и я не знаю как разрешить эту диллему. Инжект не кидает таргет=(

Code: Select all

sub lowres()
maska();
uo.msg('.cast lowerresist', 'last')
maska();
end sub


в этом скрипте инжект пишет тупо Unknown spell name

Code: Select all

sub lowres()
maska();
uo.Cast('.cast lowerresist', 'last')
maska();
end sub


Решение:

Code: Select all

sub regen()
maska();
UO.msg('.cast Regeneration')
uo.exec("waittargetself")
maska();
end sub


Новая проблема:

Code: Select all

sub greath()
maska();
uo.msg('.cast GreatHarm')
uo.exec("waittargetlast")
maska();
end sub

Боевой спелл. В инжекте отключена галочка Target XYZ fix.
При кидании стрелки с указанием таргета в клиенте. Скрипт работает. Если использую таргет некст - скрипт не работает. Как это лечится?
можно каким то образом сделать бинд на таргет некс с запоминанем таргета для инжекта?
ZeroDX
Posts: 718
Joined: 2006-12-08 10:51:50
Location: Москва
Contact:

Re: Без вашей помощи не обойдусь.

Post by ZeroDX »

Попробуй так

Code: Select all

uo.waittargetobject('self')
UO.msg('.cast Regeneration')


если не прокатит, то попробуем через target
Kallish
Posts: 11
Joined: 2012-08-09 16:07:37

Re: Без вашей помощи не обойдусь.

Post by Kallish »

Решение:

Код:
sub regen()
maska();
UO.msg('.cast Regeneration')
uo.exec("waittargetself")
maska();
end sub

у меня вот это работает отлично)

Новая проблема:
Код:
sub greath()
maska();
uo.msg('.cast GreatHarm')
uo.exec("waittargetlast")
maska();
end sub

Боевой спелл. В инжекте отключена галочка Target XYZ fix.
При кидании стрелки с указанием таргета в клиенте. Скрипт работает. Если использую таргет некст - скрипт не работает. Как это лечится?
можно каким то образом сделать бинд на таргет некс с запоминанем таргета для инжекта?

Тут возникает ещё одна проблема - идет каст, в это время мне нужно использовать банку(грейт эксплоужен) и кинуть в цель, когда использую банку таргет уходит в некуда, банка даже не взрывается во мне, она просто исчезает каким-то чудным образом). Как бы это обойти так, что бы и каст читался и банку можно было кидать.
lasttile указывает взять последний использованый в клиенте - т.е. тот который указывается таргет некстом? или же он сработает как ласт статус в моем случае?!
Kallish
Posts: 11
Joined: 2012-08-09 16:07:37

Re: Без вашей помощи не обойдусь.

Post by Kallish »

Code: Select all

sub ress_char() 
   var jrnl, i, p_len = 5
   var phrase = "O"
   DIM players[6]
   
   players[0] = 'ID того кого реснуть';
   players[1] = 'ID того кого реснуть';   
   players[2] = 'ID того кого реснуть';
   players[3] = 'ID того кого реснуть';
   players[4] = 'ID того кого реснуть';

repeat
      jrnl = uo.inJournal(phrase);
      if jrnl then
         for i=0 to p_len-1
            if uo.journalserial(jrnl-1) == players[i] then
            obkast.do(uo.journalserial(jrnl-1))
endif
         next
         uo.setjournalline(jrnl-1, '')
      endif
      wait(200)
   until false
   uo.DeleteJournal()
end sub

Sub obkast.do(serial)
   uo.cast('Resurrection', serial)
   wait(500)
   uo.DeleteJournal()
end sub

Помогите переделать скрипт что бы воскрешал без серийника, а любого чара.
ZeroDX
Posts: 718
Joined: 2006-12-08 10:51:50
Location: Москва
Contact:

Re: Без вашей помощи не обойдусь.

Post by ZeroDX »

Code: Select all

sub ress_char() 
    var id_player, i, p_len = 5
    var phrase = "O"
    uo.DeleteJournal()
    repeat
        if uo.inJournal(phrase);
            id_player = uo.journalserial(uo.inJournal(phrase)-1)
            obkast(uo.journalserial(uo.inJournal(phrase)-1))
        endif
        wait(200)
    until false
end sub

Sub obkast(serial)
   uo.cast('Resurrection', serial)
   wait(500)
   uo.DeleteJournal()
end sub
Post Reply