Yoko

All sides of Injection
It is currently 2024-04-16 06:02:38

All times are UTC+02:00




Post new topic  Reply to topic  [ 14 posts ] 
Author Message
PostPosted: 2009-09-11 20:50:48 
Offline
User avatar

Joined: 2008-10-29 17:27:20
Posts: 75
по какой системе работает команда UO.waiting() И можно ли менять её тайминг?


Top
   
PostPosted: 2009-09-11 20:56:13 
Offline
Expert!
User avatar

Joined: 2006-02-07 08:51:40
Posts: 1348
Location: г. Старый Оскол
Yoko Help wrote:
Описание: Waiting •

Синтакс: number uo.Waiting()
Тема: Команды скриптов Ключевые слова: uoscript, system, waitsystem, targeting

Определяет, установлена ли ловушка прицела одной из команд wait*, например waittargetobject, или например cast 'Flame Strike' laststatus


Top
   
 Post subject:
PostPosted: 2009-09-11 21:01:49 
Offline
User avatar

Joined: 2008-10-29 17:27:20
Posts: 75
ок, это понял..
проблема в том, что при этой фунции, зажимая кнопку, часто всплывает такой баг, что ничего невозможно инжей скастить, пока не сделаешь ,grab, вот и надо както избавится от этого бага -)


Top
   
 Post subject:
PostPosted: 2009-09-11 21:05:23 
Offline
Expert!
User avatar

Joined: 2006-02-07 08:51:40
Posts: 1348
Location: г. Старый Оскол
volting wrote:
ок, это понял..
проблема в том, что при этой фунции, зажимая кнопку, часто всплывает такой баг, что ничего невозможно инжей скастить, пока не сделаешь ,grab, вот и надо както избавится от этого бага -)

А подробнее?


Top
   
 Post subject:
PostPosted: 2009-09-11 21:09:14 
Offline
User avatar

Joined: 2008-10-29 17:27:20
Posts: 75
Kynep wrote:
volting wrote:
ок, это понял..
проблема в том, что при этой фунции, зажимая кнопку, часто всплывает такой баг, что ничего невозможно инжей скастить, пока не сделаешь ,grab, вот и надо както избавится от этого бага -)

А подробнее?

допустим скрипт на мини-хил..
sub Heheal()
if not UO.waiting() then
UO.Exec("cast Heal self")
end if
if uo.injournal("cliloc# 0xA3A1") then
UO.Exec("cast Heal self")
uo.deletejournal()
end if
end sub

Допустим он забинден у меня на F я зажимаю F чтобы хилится и тут то оно всё и всплывает, в определённый момент ничего невозможно скастить пока не кинуть таргет ,grab'ом или чемнить еще...


Top
   
PostPosted: 2010-05-18 21:30:41 
Offline
User avatar

Joined: 2008-10-29 17:27:20
Posts: 75
Проблема еще актуальна, всё также хочу знать, как определяется, сколько будет инжа ждать прицела от клиента, командой uo.waiting?


Top
   
PostPosted: 2010-05-18 21:59:26 
Offline
User avatar

Joined: 2006-11-06 21:45:23
Posts: 137
Code:
if UO.Waiting() then
   UO.CancelTarget()
endif

Синтакс: ,canceltarget
none uo.canceltarget()
В случае, если инициировано ожидание прицела одной из команд waittarget*, прерывает его и посылает ожидающей функции нулевое значение.
Узнать инициировано ли ожидание можно с помощью Waiting


Top
   
PostPosted: 2010-05-18 23:23:26 
Offline
User avatar

Joined: 2008-10-29 17:27:20
Posts: 75
GAUHAR wrote:
Code:
if UO.Waiting() then
   UO.CancelTarget()
endif

Синтакс: ,canceltarget
none uo.canceltarget()
В случае, если инициировано ожидание прицела одной из команд waittarget*, прерывает его и посылает ожидающей функции нулевое значение.
Узнать инициировано ли ожидание можно с помощью Waiting

Так просто системный флуд, Targeting cancelled..

Заметил, что UO.Waiting работает только при 2\6 фк\фкр.. суть в том, что на сервере стоит на каст дополнительная задержка поверх 2\6 500мс, и UO.Waiting просто остонавлиавает любой каст после первого же зажатия.


Top
   
PostPosted: 2010-05-19 10:38:10 
Offline
Expert!
User avatar

Joined: 2005-04-23 10:19:43
Posts: 388
Чего-то ты со скриптом перемудрил... Как я понял, ты хочешь чтобы зажав кнопку оно делало только 1 хил, а не 20.
В таком случае что-то вроде такого:

Code:
Sub castSpellWaiting(spell,target,maxCastTime)
    var lastCastEnds = val(UO.GetGlobal("lastCastEnds"))

    if (UO.Waiting() == false) OR (lastCastEnds == 0) OR (UO.Timer() > lastCastEnds) then
        UO.SetGlobal("lastCastEnds",UO.Timer()+maxCastTime/100)
        UO.Cast(spell,target)
        return true
    else
        return false
    endif
endsub

sub castHealSelf()
    castSpellWaiting('Heal','self',10000) //Сколдует на себя хил, максимальная длительность каста - 10 секунд. Когда пройдёт 10 секунд, либо закончится каст - разрешит снова колдовать хил
endsub


Top
   
PostPosted: 2010-05-19 11:47:06 
Offline
Junior Expert
User avatar

Joined: 2004-06-24 22:08:56
Posts: 3220
Beyonder wrote:
Чего-то ты со скриптом перемудрил... Как я понял, ты хочешь чтобы зажав кнопку оно делало только 1 хил, а не 20.
В таком случае что-то вроде такого:

Code:
...

А не интереснее определять конец каста по отжиранию маны + сообщению fizzles ?

_________________
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.
Skype: d119060


Top
   
PostPosted: 2010-05-19 12:04:56 
Offline
Expert!
User avatar

Joined: 2005-04-23 10:19:43
Posts: 388
Ну, дык, напиши свой вариант, а человек сравнит какой лучше работает 8)


Top
   
PostPosted: 2010-05-19 23:20:28 
Offline
User avatar

Joined: 2008-10-29 17:27:20
Posts: 75
А реально сделать, чтобы пока вэйтинг, он вообще запрещал каст и накладывание таргета, я сделал поменьше 10000 задержку, какбы всё норм, но если я перестаю кастить и кастю другой спел, он неприменно кидается автоматом на меня по Self который запомнился с хила..


Top
   
PostPosted: 2010-05-20 08:41:39 
Offline
Expert!
User avatar

Joined: 2005-04-23 10:19:43
Posts: 388
Попробуй так:

Code:
Sub castSpellWaiting(spell,target,maxCastTime)
    var lastCastEnds = val(UO.GetGlobal("lastCastEnds"))

    if (UO.Waiting() == false) OR (lastCastEnds == 0) OR (UO.Timer() > lastCastEnds) then
        if (UO.Waiting() == true) then
            UO.CancelTarget()
        endif
        UO.SetGlobal("lastCastEnds",UO.Timer()+maxCastTime/100)
        UO.Cast(spell,target)
        return true
    else
        return false
    endif
endsub

sub castHealSelf()
    castSpellWaiting('Heal','self',10000) //Сколдует на себя хил, максимальная длительность каста - 10 секунд. Когда пройдёт 10 секунд, либо закончится каст - разрешит снова колдовать хил
endsub


Top
   
PostPosted: 2010-05-20 09:24:49 
Offline
User avatar

Joined: 2008-10-29 17:27:20
Posts: 75
2Beyonder Да, кастит уже более менее отлично. Но проблема с таргетом осталась, если отпускаю раньше чем скастит, таргет остается подвешенным под клиентом, тоесть самого прицела нет, но инжа ждет так сказать, и чтобы я не скастил следующее, оно неприменно полетит в меня, будь то позетивный спел или негативный =)


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 14 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 19 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited