Вчера скинули интересный скрипт. В скриптах не силен, но насколько я понял, это скрипт, не дающий кастовать, пока не прошел предыдущий каст.
sub CheckFizzle()
var LastMana = UO.Mana
REPEAT
If UO.Mana < LastMana Then
If UO.InJournal("fizzle") Then
UO.CharPrint('0x0026',"*FIZZLE*")
DeleteJournal("fizzle")
LastMana = UO.Mana
Else
UO.CharPrint('0x0107',"*PASSED*")
LastMana = UO.Mana
End If
Else
If UO.Mana > LastMana Then
LastMana = UO.Mana
End If
End If
wait(150)
Until 1<>1
end sub
Как я понял, сначала он проверяет на физл, дальше
UO.CharPrint('0x0107',"*PASSED*") не понятно.
После проверяет: если мана отнялась, значит каст прошел.
UO.CharPrint('0x0107',"*PASSED*") выдает ошибку
Подскажете, что тут не так? )
Не кастует, пока не пройдет предыдущий каст
Moderators: Murderator+, Murderator
Re: Не кастует, пока не пройдет предыдущий каст
Этот скрипт всего навсего говорит игроку когда предыдущий каст прошёл. Тоесть ты его запускаешь на заднем фоне и любуешся надписями *fizzle* и *passed*.
Если ты хочешь то что описал в сабже, то скрипт намного проще:
Таймаут - сколько миллисекунд максимум можно ждать (чтобы скрипт не завис если вдруг что-то глюкнет).
Если при физле не уменьшается мана - то нужно еще скрипт слегка переделать.
Если ты хочешь то что описал в сабже, то скрипт намного проще:
Code: Select all
Sub waitForCast(timeout)
var timeStep = 100
var lastMana = UO.Mana
var timeLeft = timeout
while (lastMana >= UO.Mana) AND (timeLeft > 0)
lastMana = UO.Mana
timeLeft = timeLeft - timeStep
Wait(timeStep)
wend
endsub
Таймаут - сколько миллисекунд максимум можно ждать (чтобы скрипт не завис если вдруг что-то глюкнет).
Если при физле не уменьшается мана - то нужно еще скрипт слегка переделать.
Re: Не кастует, пока не пройдет предыдущий каст
Очень благодарен, сегодня проверю.
Не понятно, для чего нужен первый скрипт? ) Для тех, кто без звука играет видимо.
Не понятно, для чего нужен первый скрипт? ) Для тех, кто без звука играет видимо.
Re: Не кастует, пока не пройдет предыдущий каст
invalid number of arguments - waitforcast 

Re: Не кастует, пока не пройдет предыдущий каст
А ты его что, через меню инжекта запускаешь?
Запускать его надо из скрипта, примерно так:
Запускать его надо из скрипта, примерно так:
Code: Select all
...
UO.WaitTargetObject('Enemy')
UO.Cast('Magic Arrow')
WaitForCast(10000)
Re: Не кастует, пока не пройдет предыдущий каст
Еще как =)) скинул вместе с остальными скриптами =)))