Page 1 of 1
Скрипт на Тайминг
Posted: 2004-11-08 01:29:44
by CANNABIS
Вот скрипт который я нашел тут на форуме,но как то долго все эти ID вписывать и определять их

Можно но ли сделать ,чтоб чар таймил все вокруг,ну чтоб тип один задать и не парится
sub main()
VAR i
DIM horse[30]
horse[1] = "0x010BDD17"
horse[2] = "0x010FE66F"
horse[3] = "0x010B909E"
horse[4] = "0x011184E5"
horse[5] = "0x002109E3"
horse[6] = "0x010C5AD6"
horse[7] = "0x0140A1AE"
horse[8] = "0x0000131C"
horse[9] = "0x010BAFA3"
horse[10] = "0x014103A6"
horse[11] = "0x0108DDF8"
horse[12] = "0x010C1574"
horse[13] = "0x010B37C1"
horse[14] = "0x012AA268"
horse[15] = "0x010B5CB6"
horse[16] = "0x001FB001"
horse[17] = "0x011A5EE5"
horse[18] = "0x010E9879"
horse[19] = "0x00FA9A53"
horse[20] = "0x00E09C15"
horse[21] = "0x00E12FB0"
horse[22] = "0x00F94A6B"
horse[23] = "0x009B90EE"
horse[24] = "0x00E00754"
horse[25] = "0x009AED9F"
horse[26] = "0x00893C7E"
horse[27] = "0x00896934"
horse[28] = "0x00E16772"
horse[29] = "0x009AE536"
horse[30] = "0x00F9DDCB"
While not UO.Dead()
For i = 1 to 30
UO.DeleteJournal()
While not UO.InJournal("It seems to accept you as master") and not UO.InJournal("is already tame")
UO.DeleteJournal()
Wait(1000)
UO.Useskill("Animal Taming", horse[i])
While not UO.InJournal("It seems to accept you as master") and not UO.InJournal("You fail to tame the creature") and not UO.InJournal("is already tame")
Wait(500)
Wend
Wend
Next
UO.WaitTargetTile('0',Str(UO.GetX(horse[1])),Str(UO.GetY(horse[1])),Str(UO.GetZ(horse[1])))
UO.Cast('Paralyze Field') # Колдовать
Wait(1000*60*5) # Ждать 5 минут
wend
End sub
Posted: 2004-11-08 08:07:25
by AGRS
UO.Useskill("Animal Taming", horse[i])
-->
UO.Useskill("Animal Taming", "~0x0000") , где 0x0000 - тип лошади.
Это если у тебя одна лошадь, но не известен ее серийник. Если много лошадок, поищи пример работы с UO.FindType. Два примера точно были совсем недавно. Один от Йоко и один от меня.
Posted: 2004-11-08 21:45:11
by CANNABIS
AGRS wrote:UO.Useskill("Animal Taming", horse[i])
-->
UO.Useskill("Animal Taming", "~0x0000") , где 0x0000 - тип лошади.
Это если у тебя одна лошадь, но не известен ее серийник. Если много лошадок, поищи пример работы с UO.FindType. Два примера точно были совсем недавно. Один от Йоко и один от меня.
Я нашел тот топ где есть UO.FindType,что то я понял

но что именно подправлять я не понял,ну не шарю я так в скриптах ) подскажите че надо поменять
Posted: 2004-11-12 16:55:49
by Revenant
Code: Select all
########################################
# Revenant / Antares / Animal Taming
########################################
# В загончик площадью один тайл загоняется туча живности
# все равно какой, любых видов и расцветок, лишь бы тамилась.
# Для корректной работы желательно больше 50 шт.
# Отпускаете ее и ждете пока забудет вас (на Антаресе - 5 мин)
# Заползаете в этот же загончик.
# Единственный раз запускается процедура saver() при которой
# скрипт заносит ID всех тварей в файл count.dat
# после этого смело запускаете процедуру main() и идете
# досматривать фильм по телеку
# Да, и еще, галочка в TWI отнюдь не помешает для первого запуска.
var f=file("C:\count.dat")
var i, ii
var food='0x0C6D' ; еда, по умолчанию лук
sub saver()
dim a[50]
var ser, nam
var s=0
var exit=0
uo.ignorereset()
uo.set('finddistance','3')
i=0
repeat
repeat
uo.findtype('-1','-1','ground')
if not UO.FindCount() then
exit=1
endif
uo.ignore("finditem")
wait(100)
until uo.IsNPC("finditem") and uo.getserial("finditem")<>uo.getserial("self") or not UO.FindCount()
if not exit then
i=i+1
ser = uo.getserial("finditem")
ii=i
a[i]=ser
uo.Print('ser = '+ a[i])
uo.Print(uo.GetName(ser))
endif
wait(100)
until i==50 or exit==1
uo.Print('Open file')
f.open()
f.create()
uo.Print('elements = '+ str(ii))
s=safe call f.writeln(ii)
for i=1 to ii
s=safe call f.writeln(a[i])
next
f.close()
uo.Print('All IP saved')
end sub
sub main()
dim b[50]
var count=0
VAR LastTimer, start
f.open()
ii=safe call f.ReadNumber()
uo.Print('ii='+str(ii))
for i=1 to ii
b[i]=safe call f.ReadString()
next
f.close()
uo.DeleteJournal()
while not uo.Dead()
uo.DeleteJournal()
start = UO.Timer()
for i=1 to ii
uo.Print(str(i))
repeat
UO.DeleteJournal()
uo.WaitTargetObject(b[i])
UO.Useskill('Animal Taming')
LastTimer=UO.Timer()
repeat
wait(1000)
until UO.InJournal('You fail') OR UO.InJournal('It seems') OR UO.InJournal('You can not see')OR UO.InJournal('away') OR UO.InJournal('remember') OR UO.InJournal('cancelled')OR UO.InJournal('already')OR UO.InJournal('target')OR UO.Timer()>LastTimer+400
until Uo.InJournal('It seems') OR UO.InJournal('remember') OR UO.InJournal('cancelled')OR UO.InJournal('already')OR UO.InJournal('target')
uo.Say('All release')
next
eat()
wend
end sub
sub eat()
UO.DeleteJournal()
repeat
if UO.Count(food)>0 then
UO.UseType(food)
wait(500)
else
return
end if
Until UO.InJournal("stuffed!") OR UO.InJournal("think")
end sub
Posted: 2004-11-24 01:01:26
by CANNABIS
Спасибо за скрипт вроде все пашет

но мне такому ламеру в инже,не удается кое что исправить.Вот мне надо чтоб,когда чар затаймит все животных сразу кастанул парализ филду под них,вместо all release.Народ помогите плиз ну не получается у меня
sub main()
dim b[50]
var count=0
VAR LastTimer, start
f.open()
ii=safe call f.ReadNumber()
uo.Print('ii='+str(ii))
for i=1 to ii
b[i]=safe call f.ReadString()
next
f.close()
uo.DeleteJournal()
while not uo.Dead()
uo.DeleteJournal()
start = UO.Timer()
for i=1 to ii
uo.Print(str(i))
repeat
UO.DeleteJournal()
uo.WaitTargetObject(b[i])
UO.Useskill('Animal Taming')
LastTimer=UO.Timer()
repeat
wait(1000)
until UO.InJournal('You fail') OR UO.InJournal('It seems') OR UO.InJournal('You can not see')OR UO.InJournal('away') OR UO.InJournal('remember') OR UO.InJournal('cancelled')OR UO.InJournal('already')OR UO.InJournal('target')OR UO.Timer()>LastTimer+400
until Uo.InJournal('It seems') OR UO.InJournal('remember') OR UO.InJournal('cancelled')OR UO.InJournal('already')OR UO.InJournal('target')
uo.Say('All release')
next
eat()
wend
end sub
Posted: 2004-11-24 10:32:32
by Revenant
Code: Select all
sub main()
dim b[50]
var count=0
VAR LastTimer, start
f.open()
ii=safe call f.ReadNumber()
uo.Print('ii='+str(ii))
for i=1 to ii
b[i]=safe call f.ReadString()
next
f.close()
uo.DeleteJournal()
while not uo.Dead()
uo.DeleteJournal()
start = UO.Timer()
for i=1 to ii
uo.Print(str(i))
repeat
UO.DeleteJournal()
uo.WaitTargetObject(b[i])
UO.Useskill('Animal Taming')
LastTimer=UO.Timer()
repeat
wait(1000)
until UO.InJournal('You fail') OR UO.InJournal('It seems') OR UO.InJournal('You can not see')OR UO.InJournal('away') OR UO.InJournal('remember') OR UO.InJournal('cancelled')OR UO.InJournal('already')OR UO.InJournal('target')OR UO.Timer()>LastTimer+400
until Uo.InJournal('It seems') OR UO.InJournal('remember') OR UO.InJournal('cancelled')OR UO.InJournal('already')OR UO.InJournal('target')
next
UO.cast('Paralyze Field',b[ii])
wend
end sub
Posted: 2004-11-26 02:30:28
by CANNABIS
Вот теперь другая проблема стала возникать

в первой части скрипта sub saver.Короче запускаю этот сэйвер,проходит какое то время и выскакивает ошибка 'Runtime error',а в УО пишет ivalid object :finditem.Короче вообще непонятка.Подскажите плиз в чем загвоздка то.
var f=file("C:\count.dat")
var i, ii
var food='0x097B'
sub saver()
dim a[11]
var ser, nam
var s=0
var exit=0
uo.ignorereset()
uo.set('finddistance','3')
i=0
repeat
repeat
uo.findtype('-1','-1','ground')
if not UO.FindCount() then
exit=1
endif
uo.ignore("finditem")
wait(100)
until uo.IsNPC("finditem") and uo.getserial("finditem")<>uo.getserial("self") or not UO.FindCount()
if not exit then
i=i+1
ser = uo.getserial("finditem")
ii=i
a[i]=ser
uo.Print('ser = '+ a[i])
uo.Print(uo.GetName(ser))
endif
wait(100)
until i==11 or exit==1
uo.Print('Open file')
f.open()
f.create()
uo.Print('elements = '+ str(ii))
s=safe call f.writeln(ii)
for i=1 to ii
s=safe call f.writeln(a[i])
next
f.close()
uo.Print('All IP saved')
end sub
Posted: 2004-11-26 15:07:17
by Revenant
должна быть включена track word item , просто галочку поставить недостаточно, нужно перезайти