Page 1 of 1

Таргеты

Posted: 2006-02-14 09:09:53
by termit
Люди добрые подскажите можно ли так сделать, что пока прицел после каста некинулся по указаной цели ,неначинал кастовать снова..
То есть пример ,если я ставлю через wait то при лагах сервака пишет avtotarget canceled,то есть прицел еще некинул ,а уже пытаеться второй раз кастануть...
Подскажите можно ли как то сделать чтоб прицел дожидался своей цели??

Posted: 2006-02-14 09:14:05
by Val
наверное тебе нада что-то типа


Code: Select all

if uo.Waiting() then
 ждем-с
else
 действуем
end if

Posted: 2006-02-14 09:27:32
by Savage

Code: Select all

while UO.Targeting()
wait(200)
wend

Posted: 2006-02-14 10:04:34
by GrayLord
если сервер, как-либо, отображает "словесно" каст заклинания, то, скорее всего, удобнее через журнал ожидать окончания каста.

Posted: 2006-02-14 13:30:38
by Savage
Смотря что челу нужно. Может он биндом юзает свиток или каст а таргет кидает руками...

Posted: 2006-02-14 13:41:07
by Destruction
Обычно, всякие сферы по окончанию каста отнимают ману, на утопии ману отнимают дважды, уследить легко.

Posted: 2006-02-14 15:15:49
by termit
Вот у меня такой цикл

Code: Select all

repeat
uo.waittargetobject('0x00000000')
uo.cast('Energy Bolt')
wait(5000)
UNTIL uo.gethp('0x00000000') < 200

Вот надо вместо wait сделать так чтоб он не по задержке работал ,а пока таргет некинет...


to Destruction: Мана забираеться один раз

Posted: 2006-02-14 18:44:59
by GrayLord
тогда, см варианты ожидания, приведеные выше, или вот такое, если мана отнимается не перед кастом, а после него:

Code: Select all

var cnt
var min = 30 # ставим минимальное количество маны, необходимое для каста
if uo.mana >= min
repeat
uo.waittargetobject('0x00000000')
uo.cast('Energy Bolt')
cnt = uo.mana
repeat
wait(100)
until cnt <> uo.mana or uo.mana < min
UNTIL uo.gethp('0x00000000') < 200
endif

Posted: 2006-02-14 20:26:32
by termit
Спаибо огромное :)