Херь со скриптом...
Posted: 2006-02-19 15:47:44
Есть вот такой скрипт...
НО есть лажа......Он берет мешок и кидает его на пол...Делает всего одну удочку и скрипт вырубается..-((((
Помогите плиз...что не так???? Шард ДРВ....
Может скрипт выключается из-за того, что у мя 100 карпентра???
Code: Select all
#Для работы скрипта надо:
#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='0x4046E3DE'
#Измените значение на ID Backpack'a(с пустыми мешками)
Var BoxEB='0x4049042C '
#Измените значение на ID Backpack'a(для мешков с удочками/посохами)
Var BoxFB='0x404902B9 '
#Измените значение на Type мешков. (bag - '0x0E76', Belt pouch - '0x09B0')
Var BagType='0x0E76'
#Измените значение на Type инструмента для плотничной работы. См. описание.
Var CarpentrTool='0x1034 '
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'
else
UO.WaitMenu ('Carpentry','Weapons & Tools','Weapons & Tools','quarter staff')
ProductOL='0x0E89'
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) > 999) or (UO.Dead()))
End sub
НО есть лажа......Он берет мешок и кидает его на пол...Делает всего одну удочку и скрипт вырубается..-((((
Помогите плиз...что не так???? Шард ДРВ....
Может скрипт выключается из-за того, что у мя 100 карпентра???