Page 1 of 1

Помогите с рутиной, плз.

Posted: 2005-08-20 12:20:49
by NumbuS
А есть скрипт для перекладки вещей, типа: укажите что перекладываем. откуда, куда и он бы все вещи одного типа, например, из бэкпака в указаный мешок перекладывал?
Если кто может помочь, буду очень благодарен.

Posted: 2005-08-20 12:22:28
by flake

Code: Select all

,massmove [delay] [quantity]

Например

Code: Select all

,massmove 600 10


Затем сам перекидываешь 1 предмет нужного типа в нужный контейнер
и инжа продолжит сама.

Posted: 2005-08-20 20:34:17
by NumbuS
flake wrote:

Code: Select all

,massmove [delay] [quantity]

Например

Code: Select all

,massmove 600 10


Затем сам перекидываешь 1 предмет нужного типа в нужный контейнер
и инжа продолжит сама.


Спасибо огромное! Очень признателен!

Posted: 2005-08-21 00:45:35
by NumbuS
:idea: А теперь задачка потруднее: насколько реально написать скрипт под прокачку SwordsmanShip'а, Tactics, Parrying? Как человек незнающий скриптов я могу только предположить алгоритм действий:

Скрипт должен быть расчитан на два чара "пасивного" и "активного", разница между ними только в том, что один постоянно стоит на месте, а другой отходит.

1) Условия: если хп<20 то Остановить батл
если хп врага<20 то Остановить батл
если свое хп и хп врага=max то Продолжить батл
2) Антураж: у каждого чара свой сундук с ГХ или бинтами, которыми
он лечится
3) Ну и чтоб ели раз в 30 минут

---------

Реально ли такое?
Если кто справиться с задачкой - слава и почет повелителю скриптов.
Заранее спасибо.

Posted: 2005-08-21 07:49:11
by Nort777
есть уже такой скрипт, када мало хп, активный чар отходит и лечит обоих, вот скипт:

Code: Select all

sub fight() 

while 1
gotoxy(875,2016,0) #куда подходить к противнику
UO.usetype("0x1B76") # тип щита
uo.usetype("0x0EC2") # тип оружия
UO.waittargettype ("0x1008")
UO.usetype("0x0E20")
UO.Exec("attack 0x0014D2D3") #ид 2 чара
Repeat
wait (500)
if uo.injournal("destroyed")then
UO.usetype("0x0EC2") #тип оружия
uo.deletejournal()
endif
Until ((UO.GetHP("0x001FB024") <75)or (UO.GetHP("0x0014D2D3") <100)) #
#ид 1 и 2 чаров
repeat
UO.Exec("warmode 0") # выключаем вар
UO.Press(35)
UO.Press(35)
gotoxy(875,2017,0) # координаты куда отходить лечить
UO.DeleteJournal()
Repeat
UO.Usetype("0x0E21") #Bandages
UO.Exec("waittargetobject 0x0014D2D3") # ид 2 чара
wait(3500)
Until (UO.InJournal("need you"))
UO.DeleteJournal()
Repeat
Healing()
wait(3500)
CheckLag()
Until (UO.InJournal("need healing"))
wend
end sub

sub gotoxy(x,y,prec)
var ld=0,ldc=0
var dx,dy
var mx,my
var ox,oy,mk,k
#uo.print(">")
#uo.track("1",str(x),str(y))
start:
mx=UO.GetX()
my=UO.GetY()
dx=mx-x
if dx<0 then
dx=0-dx
endif
dy=my-y
if dy<0 then
dy=0-dy
endif
if dy>dx then
dx=dy
end if
if dx<=prec then
return
end if
if not ldc then
uo.print(STR(dx))
end if
if dx<3 then
mk=70
else
mk=15
end if
ox=mx
oy=my
for k=1 to mk
mx=UO.GetX()
my=UO.GetY()
if mx<>ox or my<>oy then
goto sdidapl
end if
wait(10)
next
sdidapl:
mx=UO.GetX()
my=UO.GetY()
dx=mx-x
if dx<0 then
dx=0-dx
endif
dy=my-y
if dy<0 then
dy=0-dy
endif
if dy>dx then
dx=dy
end if
if dx<=prec then
return
end if
if ld==dx then
ldc=ldc+1
if ldc>100 then
uo.print("Can not reach location!")
return
end if
else
ld=dx
end if
if mx==x then
if my==y then
return
endif
if my>y then
#UO.Print("UR")
UO.Press(33)
goto start
endif
#UO.Print("DL")
UO.Press(35)
goto start
end if
if mx<x then
if my>y then
#UO.Print("R")
UO.Press(39)
goto start
endif
if my==y then
#UO.Print("DR")
UO.Press(34)
goto start
endif
#UO.Print("D")
UO.Press(40)
goto start
end if
if my<y then
#UO.Print("L")
UO.Press(37)
goto start
endif
if my==y then
#UO.Print("LU")
UO.Press(35)
goto start
endif
#UO.Print("U")
UO.Press(3)
goto start
end sub

sub Healing()
UO.SetArm('CWeapon')
UO.Exec("bandageself")
wait(500)
UO.Arm('CWeapon')

sub CheckLag()
UO.Click('backpack')
repeat
wait(500)
until UO.InJournal('backpack')
end sub

[Не забываем про теги. Leo]

Posted: 2005-08-22 22:47:01
by NumbuS
Спасибо!