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

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