Page 1 of 1
Ну я не понимаю как :( Помогите пожалуйста
Posted: 2007-06-21 19:24:34
by CrafterOk
Ребята мне нужена ваша помощь + маленький скриптик на одевание топора после того, как дровосек рекольнулся на место рубки дерева... Т.к. мой скрипт на ламборджекинг был пределан из скрипта на майнинг (при копании не обязательно чтобы кирка находилась в руке, а вот на рубку нужно обязательно вооружиться топором). Вот что я нашел, но он почему-то не очень корректно работает (если топор одет, то он его снимает и больше не одевает после чего скрипт автоматически удаляеться из запущенных скриптов) :
sub WaitForChange()
wait(3000)
uo.sayu(",unequip Lhand")
wait(1000)
uo.sayu(",equipt Lhand axes")
wait(1000)
uo.Usetype('axes')
wait(1500)
end sub
Заранее благодарен всем, кто оказал свою помощь ! Спасибо !
Posted: 2007-06-21 19:37:52
by Ururu
Code: Select all
VAR axe = '0x9999'
...
...
UO.FindType(axe,'-1','2')
If UO.FindCount() Then
UO.UseObject('finditem')
Wait(500)
Else
UO.Print("The axe is not found")
End If
У тебя наверняка также, просто увеличь паузу после его юзания.
Posted: 2007-06-21 19:43:00
by CrafterOk
Спасибо большое, но что-то не пойму к чему его прикрепить?
Вот мой скрипт:
sub main()
repeat
start()
until UO.Dead()
end sub
Sub start()
check()
dom()
uo.cast('Recall',0x400372A6) #1
wait(2000)
mine(0,1379,1709,20)
wait(500)
check()
dom()
uo.cast('Recall',0x400372A8) #2
wait(2000)
mine(0,1487,1694,16)
wait(500)
check()
dom()
uo.cast('Recall',0x400372AC) # 3
wait(2000)
mine(3286,1548,1785,11)
wait(500)
check()
dom()
uo.cast('Recall',0x400372A7) # 4
wait(2000)
mine(3280,1577,1760,15)
wait(500)
check()
dom()
uo.cast('Recall',0x400372A5) # 5
wait(2000)
mine(3283,1572,1683,10)
wait(500)
check()
dom()
uo.cast('Recall',0x400372A1) #6
wait(2000)
mine(3288,1556,1572,20)
wait(500)
end sub
Sub mine(t,x,y,z)
uo.deletejournal()
repeat
wait(1000)
uo.waittargettile(str(t),str(x),str(y),str(z))
uo.usetype('0x0F43') # тип топора
until uo.injournal("cliloc# 0xAD00") or uo.injournal("cliloc# 0xA20D") or uo.injournal("cliloc# 0xA2DE") or uo.injournal("cliloc# 0x6B31")
uo.Canceltarget()
end sub
sub dom()
uo.cast('Recall',0x400FCBDD) # ID рунбуки дома ("Sklad")
wait(2000)
repeat
UO.findtype('0x1BDD','-1','my') # тут тип бревна
wait(600)
if uo.injournal("cliloc# 0xA2DE") then
uo.deletejournal()
uo.cast('Recall',0x400FCBDD) # ID рунбуки "Sklad" (складывает дерево)
wait(2000)
goto a
else
a:
UO.useobject('finditem')
until uo.findcount() == 0
wait(500)
end if
repeat
UO.findtype('0x1BD7','-1','2') # тип досок
uo.moveitem('finditem','0','0x4000D614') # ID ящика в который складывать доски
wait(700)
until uo.findcount() == 0
while UO.Count(0x0F43)< 3 # кол-во топоров при котором он добирает новые кирки из ящика
uo.findtype('0x0F43','-1','0x4000D613') # ID ящика в котором лежат топоры
UO.moveitem('finditem','0','0x400884FB') # Id бэкпака
wait (700)
wend
end sub
sub check()
while Uo.Mana <10
if UO.Mana <10 then
uo.Canceltarget()
UO.UseSkill("Meditation")
wait(7000)
end if
wend
end sub
sub Solve()
var index = 0
while Right(uo.LastGump('command', 7+2*index), 1) <> '2'
index = index+1
wend
return index
end sub
sub antimacro()
while not uo.Dead()
if uo.LastGump('replyed') == 0 then
if uo.LastGump('text', 2) == 'Я тута!' then
uo.LClick(uo.LastGump('x')+20, uo.LastGump('y')+72+40*Solve())
wait(1000)
end if
end if
wait(100)
wend
end sub
sub recconection()
var ReconnectTime, RFlag
ReconnectTime = '0'
RFlag = 1
Repeat
While (UO.ObjAtLayer('Bpack') == '')
if RFlag Then
ReconnectTime = MakeTime()
RFlag = 0
endif
Wait(20000) # WorldSave Protection
UO.Say('') #пароль на персонажа
Wait(3000)
UO.Say('') #пароль на персонажа
Wait(3000)
UO.Say('') #пароль на персонажа
Wait(3000)
UO.LDblClick(357,164) #места кликов в меню
UO.LClick(616,459) #места кликов в меню
Wait(3000)
WEnd
Wait(8000)
if (RFlag == 0) and (ReconnectTime <> '0') Then
UO.Exec('terminate main')
UO.Exec('exec main')
UO.TextOpen()
UO.TextPrint('Disconnected & Reconnected @ '+ReconnectTime)
RFlag = 1
ReconnectTime = '0'
endif
Until false
end sub
sub MakeTime()
VAR D, T, Ret, i
Ret = STR(UO.Time())
T = ""
For i = 0 To Len(Ret)
T = Ret[Len(Ret)-i] + T
If (I == 2) OR (I == 4) Then
T = ":" + T
EndIf
Next
Ret = STR(UO.Date())
D = ""
For i = 0 To Len(Ret)
D = Ret[Len(Ret)-i] + D
If (I == 2) OR (I == 4) Then
D = "." + D
EndIf
Next
Ret = T + " @ " + D
RETURN Ret
end sub
Posted: 2007-06-21 21:21:49
by Ururu
он у тебя и так юзает топор
попробуй искать его и юзать по финд итем
поиск впиши в mine(t,x,y,z)
Posted: 2007-06-23 00:15:48
by CrafterOk
Ururu wrote:он у тебя и так юзает топор
попробуй искать его и юзать по финд итем
поиск впиши в mine(t,x,y,z)
Помогите пожалуйста исправить...
Sub mine(t,x,y,z)
uo.deletejournal()
repeat
wait(1000)
uo.waittargettile(str(t),str(x),str(y),str(z))
uo.sayu(",equipt Lhand 0x0f43")
uo.usetype('0x0F43') # тип топора
until uo.injournal("cliloc# 0xAD00") or uo.injournal("cliloc# 0xA20D") or uo.injournal("cliloc# 0xA2DE") or uo.injournal("cliloc# 0x6B31")
end sub
Я вот тут чтото накрутил и чар когда прилетает на место рубки дерава одевает топор рубанет 1 раз снимает топор потом снова одевает рубонет снова и так доходит до того что дерево заканчиваеться и чар стоит втыкает не летит в дом чтобы сложить бревна и лететь к другому дереву. Очень прошу о Вашей помощи т.к. я можно сказать полный двоешник в написании скриптов
Спасибо !
Posted: 2007-06-23 00:39:06
by Mihail
а клилоки 100% все правильно стоят? судя по симптомам очень похоже что дело как раз в них
Posted: 2007-06-23 09:25:06
by CrafterOk
Mihail wrote:а клилоки 100% все правильно стоят? судя по симптомам очень похоже что дело как раз в них
Хмм..., а как это можно проверить?