Page 1 of 2

Учусь писать скрипты .)

Posted: 2005-07-14 01:52:07
by Dron D.
Прочел 3 урока скриптинга написаных Edred'ом, вот что-то похожее на скрипт, но почему то не работает, вижу что юзает скрипт... поправьте и желательно обьясните что не правильно... учусь всё-таки +))

Code: Select all

sub AL()
var liama
liama='0x00DC'
repeat
 UO.waittargetobject('liama')
 UO.Useskill('Animal Lore')   
wait(4000)
until UO.Dead()
end sub

Posted: 2005-07-14 01:54:35
by flake
Ты приравниваешь переменную лиама к типу, а ловушку ставишь на обьект.
Либо укажи черийник этой самой диамы вместо типа, либо вместо ВеитТаргетОбжект юзай ВеитТаргетТайп.

Posted: 2005-07-14 01:58:30
by Dron D.
Понял. Исправляю. Проверяйте ,))
Целимся по таргет тайпу.

Code: Select all

sub AL() 
var liama
liama='0x00DC'
repeat
 UO.waittargettype(liama)  #Тут вот были ковычки, изза них не работало )
 UO.Useskill('Animal Lore')   
wait(4000)
until UO.Dead()
end sub



З.ы. Это не
диама, а лама.

Posted: 2005-07-14 06:56:17
by Destruction

Code: Select all

var liama 
liama='0x00DC'

Code: Select all

var liama = '0x00DC'

Зачем писать лишние строки?

Posted: 2005-07-14 22:34:10
by Dron D.
Пока учусь.
Просто так расписываю чтобы понятней было что и где каждая строка значит...

Posted: 2005-07-15 01:18:07
by Dron D.
Вот извращяюсь дальше:

Code: Select all

sub eat()
var safe='0x40042B20' #Id safe, where must be eat 4 animal
var eat='0x09D1' #Type eat 4 animal
var animal='0x00055D00' #id of animal
UO.UseObject(safe)
UO.FindType(eat,'0x0000',safe)
If Uo.FindCount() > 0 Then
Uo.MoveItem('finditem', '1', 'animal') # тут трабла
else
repeat
End If
end sub


Почему не двигает 1 айтем из стопки на животное? Пробывал прописывать вместо анимал айди, но все равно не двигает.
Причем если я указываю место назначения бекпак, то он перекидывает спокойно, а вот на животное кинуть не хочет...

заделал такое дело...

Posted: 2005-07-20 04:31:16
by Dron D.
пока на 3-х уроках по скриптингу сложно помогите, разьясните...
Открывает рунбуку, открывает сундук, при открытой рунбуке пытается тащить скролы, но таргет есессно сбивается и рунбука не речарджится... хотя в скрипте ( на мой взгляд ) порядок правильный:
(часть из скрипта на фишинг, должен речардижть рунбуку по которой только, что отрекалился)

Code: Select all

sub recharg(syndyk,kniga) 
uo.useobject(syndyk)
uo.findtype(recall,'-1',syndyk)
wait(3000)
uo.moveitem('finditem','9','backpack')
wait(3000)
uo.recall(kniga,'1')
endsub


А вот я просто расписал етот скрипт и у меня все работает:

Code: Select all

sub Recharg()
var syndyk='0x4006BD45' #Ид где рекалы
var rbook='0x4018BA23' #Ид рунбкуи для речарджа
var recall='0x1F4C' #Тайп рекалов
uo.useobject(syndyk)
uo.findtype(recall,'-1',syndyk)
wait(3000)
uo.moveitem('finditem','9','backpack')
wait(3000)
uo.recall(rbook,'1')
endsub


Но только не допираю, как сделать условие чтобы он речарджил последнюю рунбуку, как в оригинале скрипта, конечно можно сделать чтобы он речарджил все рунбуки, но всё же ?

Posted: 2005-07-20 08:30:20
by Dard
По крайней мере по указанному ID рунбуки он перезарядит только ее.
Я думал попробовать по типу перезарядить, но у спел бука такой же тип.
Думаю лучше будет перезаряжать все рунбуки через массив.

Posted: 2005-07-20 08:33:47
by Askaneli
Dard wrote:По крайней мере по указанному ID рунбуки он перезарядит только ее.
Я думал попробовать по типу перезарядить, но у спел бука такой же тип.
Думаю лучше будет перезаряжать все рунбуки через массив.

Цвет другой, да.

Posted: 2005-07-20 08:39:40
by Dard
Askaneli wrote:Цвет другой, да.
Точно, забыл про цвет :)

Posted: 2005-07-20 10:54:03
by Dard
Хмм... не пойму, он вторую перезаряжает, а первую не хочет

Code: Select all

sub Recharg() 
   var syndyk='0x40262699' 
   var recall='0x1F4C'
   var a
   DIM rbook[2]
   rbook[1]='0x40221AB2'
   rbook[2]='0x40210F47'
   for a=1 to 2
      uo.useobject(syndyk)
      uo.findtype(recall,'-1',syndyk)
      wait(3000)
      uo.moveitem('finditem','20','backpack')
      wait(3000)
      uo.recall(rbook[a],'1')
   next
endsub

Posted: 2005-07-20 12:49:54
by omi4
Dard wrote:Хмм... не пойму, он вторую перезаряжает, а первую не хочет

Code: Select all

sub Recharg() 
   var syndyk='0x40262699' 
   var recall='0x1F4C'
   var a
   DIM rbook[2]
   rbook[1]='0x40221AB2' ; проверь а точно он
   rbook[2]='0x40210F47'
   for a=1 to 2
      uo.useobject(syndyk)
      wait(3000) ; wait тут нужен
      uo.findtype(recall,'-1',syndyk)
      ; wait(3000) ; wait тут не нужен     
      uo.moveitem('finditem','20','backpack')
      wait(3000)
      uo.recall(rbook[a],'1')
      wait(3000) ; wait тут нужен
   next
endsub

Posted: 2005-07-20 13:05:14
by Dard
omi4 wrote:

Code: Select all

rbook[1]='0x40221AB2' ; проверь а точно он

Этот 100%, он почемуто не нажимает на перезарядку, а вторую все нормально.

Posted: 2005-07-20 13:13:41
by Dard
omi4 wrote:

Code: Select all

sub Recharg() 
   var syndyk='0x40262699' 
   var recall='0x1F4C'
   var a
   DIM rbook[2]
   rbook[1]='0x40221AB2' ; проверь а точно он
   rbook[2]='0x40210F47'
   for a=1 to 2
      uo.useobject(syndyk)
      wait(3000) ; wait тут нужен
      uo.findtype(recall,'-1',syndyk)
      ; wait(3000) ; wait тут не нужен     
      uo.moveitem('finditem','20','backpack')
      wait(3000)
      uo.recall(rbook[a],'1')
      wait(3000) ; wait тут нужен
   next
endsub

Работает, задержка была нужна после перезарядки
*на ошибках учатся, хоть и на своих :roll: *

Posted: 2005-07-20 14:15:22
by omi4
И это все?

Теперь оптимизируй задержки.
Убери открытие сундука при каждой книге
Сделай зарядку любого количества книг и
Взятие реколов за раз для них + обратно в сундук лишних

Posted: 2005-07-20 14:22:18
by Dard
omi4 wrote:Теперь оптимизируй задержки.
Убери открытие сундука при каждой книге
Сделай зарядку любого количества книг и
Взятие реколов за раз для них + обратно в сундук лишних

Угу, напильником пройтись и лаком покрыть. :)
Тогда конфетка будит :D

Posted: 2005-08-20 14:04:37
by Dron D.
Вот о5 я, такой гадёныш решил скритиком себе помочь.

Т.К. с дрв на фантэзи перешл, статы качаю, хочу автоматом чтоб скилы лочись.
на шарде The Fantazy есть команда прекрасная, которой можно фиксить любой стат, по отдельности. ".stats" - вызывается менюшка с 3 замками, типа лок стр, декс, инт... Вот хочу сделать чтобы при докачивании дексы они лочилась:

Но вместо этого скрипт просто не чего не делает ))

Code: Select all

sub fixmystat()
If Uo.DEX = 80 Then
   uo.msg('.stats') #вот почему то если через скрипт, то не открывается меню, а если бинд через хоткей, то откроется...
   wait(1000)
   uo.Lclick(322,334)
end sub


Posted: 2005-08-20 14:11:26
by Leo

Code: Select all

sub fixmystat() 
If Uo.DEX = 80 Then
   uo.msg('.stats') #вот почему то если через скрипт, то не открывается меню, а если бинд через хоткей, то откроется...
   wait(1000)
   uo.Lclick(322,334)
endif
end sub

Posted: 2005-08-20 18:47:21
by Dron D.
Не как не пойму что ему не нравится в строке If Uo.Dex=80

Posted: 2005-08-20 19:11:58
by Leo
UO.Dex() не определяет стамину.