#1. Ñóíäóê.
#2. Â ñóíäóêå ëîãè(âñå êàêèå âû ðåøèëè ïîòðàòèòü)
#3. Â ñóíäóêå 2 Backpack'a.
#3.1  1-îì Backpack'å ìåøêè(Bag èëè Belt pouch), â íèõ áóäóò ñêëàäûâàòüñÿ ïîñîõè/óäî÷êè.
#3.2 2-îé Backpack ïóñòîé, â íåãî áóäóò ñêëàäûâàòüñÿ ìåøêè(âçÿòûå èç 1-ãî Backpack'a)
# çàïîëíåíûå ïîñîõàìè/óäî÷êàìè.
#4. Ëþáîé èíñòðóìåíò äëÿ ïëîòíè÷íîé ðàáîòû.  ÷àñòíîñòè:
# a dovetail saw - '0x1028'
# a smoothing plane - '0x1032'
# a jointing plane - '0x1030'
# an inshave - '0x10E6'
# a froe - '0x10E5'
# a scorp - '0x10E7'
# ...
# Âñå òèïû ïðèâûäåíû äëÿ èíñòðóìåíòîâ òàêîãî - / íàïðàâëåíèÿ.
# Çíà÷åíèå "LogColor='0x0000'" ìåíÿòü íå íóæíî, èç ñóíäóêà áåðóòüñÿ ïåðâûìè ïðîñòûå ëîãè(åñëè åñòü),
# åñëè íåò, òî ëþáûå äðóãèå, áåðóòüñÿ äî òåõ ïîêà èõ íå îñòàåòüñÿ 4. Ïîñëå ñëåäþùèé òèï ëîãîâ.
# Ïîýòîìó â ñóíäóê êëàñòü òîëüêî ëîãè äëÿ ïðîêà÷êè !
#
# Äëÿ ðàáîòû ñêðèïòà ÍÓÆÍÎ ÒÎËÜÊÎ çàìåíèòü çíà÷åíèÿ !!! sub Carp()
#=====================
VAR BagSer #| Ýòè çíà÷åíèÿ ìåíÿòü íå íóæíî.
Var LogColor='0x0000' #|
Var fiz=0,ud=0,sum=254#|
Var ProductOL='0x0000'#|
Var LogType='0x1BDD' #|
#=====================
#Èçìåíèòå çíà÷åíèå íà ID ñóíäóêà(ñ ëîãàìè è 2-ìÿ Backpack'aìè)
Var MainBox='0x4050019E'
#Èçìåíèòå çíà÷åíèå íà ID Backpack'a(ñ ïóñòûìè ìåøêàìè)
Var BoxEB='0x404ECE5F'
#Èçìåíèòå çíà÷åíèå íà ID Backpack'a(äëÿ ìåøêîâ ñ óäî÷êàìè/ïîñîõàìè)
Var BoxFB='0x404ECE5D'
#Èçìåíèòå çíà÷åíèå íà Type ìåøêîâ. (bag - '0x0E76', Belt pouch - '0x09B0')
Var BagType='0x0E76'
#Èçìåíèòå çíà÷åíèå íà Type èíñòðóìåíòà äëÿ ïëîòíè÷íîé ðàáîòû. Ñì. îïèñàíèå.
Var CarpentrTool='0x10E5'
UO.Useobject(MainBox)
Wait(500)
UO.Useobject(BoxEB)
Wait(500)
UO.Useobject(BoxFB)
Wait(500)
UO.Exec("set finddistance 0")
UO.FindType(BagType,-1,1)
If UO.FindCount('finditem')<1 then
UO.FindType(BoxEB,-1,MainBox)
UO.FindType(BagType,-1,BoxEB)
BagSer=UO.GetSerial('finditem')
UO.Grab('1',BagSer)
Wait(500)
UO.Moveitem(BagSer,'1','ground')
Wait(500)
UO.Useobject(BagSer)
else
BagSer=UO.GetSerial('finditem')
UO.Useobject(BagSer)
Endif
Repeat
While NOT UO.Hidden()
UO.UseSkill('Hiding')
Wait(3000)
Wend
UO.FindType(LogType,-1,2)
LogColor=UO.GetColor('finditem')
If UO.GetQuantity('finditem')<5 then
UO.FindType(LogType,LogColor,MainBox)
If UO.GetQuantity('finditem')<5 then
UO.FindType(LogType,-1,MainBox)
UO.Grab('5','finditem')
wait(500)
Endif
UO.Grab('5','finditem')
wait(500)
Endif
If (UO.SkillVal("Carpentry",1) > 683) then
UO.WaitMenu('Carpentry','Weapons & Tools','Weapons & Tools','fishing pole')
ProductOL='0x0DBF'
Endif
UO.DeleteJournal()
UO.UseType(CarpentrTool)
Repeat
Wait(100)
Until (UO.InJournal("You put") or UO.InJournal("You fail"))
If UO.InJournal("You put") then
ud=ud+1
else
fiz=fiz+1
Endif
UO.FindType(ProductOL,-1,2)
While UO.FindCount() > 0
UO.MoveItem('finditem','1',BagSer)
Wait(500)
UO.FindType(ProductOL,-1,2)
Wend
UO.FindType(ProductOL,-1,BagSer)
UO.Print("Â òåêóùåé ñóìêå "+STR(UO.FindCount('finditem'))+" øò.")
UO.Print("Ðóêà äðîãíóëà "+STR(fiz)+" ðàç. Ñäåëàíî "+STR(ud)+" øò.")
UO.Print("Ïðîöåíò äðîæàíèÿ ðóêè: "+MID((STR(fiz/(fiz+ud)*100)),0,2)+"%")
If UO.FindCount('finditem') > sum then
UO.Moveitem(BagSer,'1',BoxFB)
Wait(500)
UO.FindType(BoxEB,-1,MainBox)
UO.FindType(BagType,-1,BoxEB)
BagSer=UO.GetSerial('finditem')
UO.Grab('1',BagSer)
Wait(500)
UO.MoveItem(BagSer,'1','ground')
Wait(500)
Endif
Until ((UO.SkillVal("Carpentry",1) > 9999) or (UO.Dead()))
repeat
End sub