Скрипт на реколы

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
SVG
Posts: 73
Joined: 2004-04-15 14:50:06
Location: Moscow

Скрипт на реколы

Post by SVG »

Вот участок кода скрипта на написание реколов. Сначала использую скилл Инскрипт, потом тарнетом на пустые бланки(bs), затем на спелбуку(sb), далее выподает крафтовое меню.

UO.waitmenu("Select a circle to inscribe","Circle 4spells","Select a spell to inscribe","Recall")
uo.useskill( "Inscription" )
uo.waittargettype (bs)
uo.waittargetobject(sb)

Кто может объяснить почему он плохо работает. То пишет то не пишет, а иногда воще вылетает.
Я где то рядом... 8)
Yoko
Site Admin
Posts: 1964
Joined: 2004-04-03 16:49:38
Contact:

Post by Yoko »

комманды waittarget* не посылают на сервер прицел, а устанавливают ловушку для следующего прицела. При задании их подряд новая отменяет предыдущую. См. так же хелп http://yoko.netroof.net/help
Порядок команд в результате тоже другой. Сперва ставится ловушка, только потом запускается то что вызывает прицел.

UO.waitmenu("Select a circle to inscribe","Circle 4spells","Select a spell to inscribe","Recall")
uo.waittargetobject("_"+bs,sb)
uo.useskill( "Inscription" )
SVG
Posts: 73
Joined: 2004-04-15 14:50:06
Location: Moscow

Post by SVG »

Спасибо за разъяснения. Все работает. Я совсем забыл, что тут есть преобразование типов, поэтому и не использовал эту команду.
Я где то рядом... 8)
SVG
Posts: 73
Joined: 2004-04-15 14:50:06
Location: Moscow

Post by SVG »

Вот рабочий скрипт на написание реколов.

Code: Select all

sub main()

var bs="0x0E34"         #<--- тип пустых бланков
var rs="0x1F4C"         #<--- тип реколов
var sb="0x55489D6A" #<--- сериал спелбуки
var time

while uo.count(bs)
 uo.print( "Blank scrolls "+str(uo.count(bs)) )
 uo.print( "Recall scrolls "+str(uo.count(rs)) )
 uo.deletejournal()
 uo.waitmenu("Select a circle to inscribe","Circle 4spells","Select a spell to inscribe","Recall")
 uo.waittargetobject("_"+bs,sb)
 uo.useskill( "Inscription" )
 time=uo.timer()
 repeat
  wait(500)
 until uo.injournal("You dont have enough mana to continue") || (uo.timer()-time)>600
 while UO.Mana<UO.INT
  UO.DeleteJournal()
  UO.UseSkill('Meditation')
  if not UO.InJournal('You are unable to concentrate') then
    wait(10000)
  endif
 wend
wend
endsub
Я где то рядом... 8)
Post Reply