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
Спасибо!