Page 1 of 1

Хелпаните с реколом в готов скрипте.

Posted: 2005-06-09 03:55:18
by Qualis Eram
Привет

Не допонял чего то я? Вот тут лежит полностью этот скрипт: http://yoko.netroof.net/forum/viewtopic ... 1185#11185

Вот в нем есть система реклов и там всего 7 рун........а надо чтобы было больше!

Code: Select all

Sub Maning() 
var Mine=1 
UO.print('!!!SELECT YOU PICKAXE!!!') 
UO.exec('addobject Shovel') 
while UO.targeting() 
wait(100) 
wend 

wait(1000) 
UO.print('!!!SELECT YOU RUNE TO HOME!!!') 
UO.exec('addobject Home') 
while UO.targeting() 
wait(100) 
wend 

wait(1000) 
UO.print('SELECT YOU RUNE TO MINE (1)') 
UO.exec('addobject Mine1') 
while UO.targeting() 
wait(100) 
wend 
#
#
#
#
#
wait(1000) 
UO.print('SELECT YOU RUNE TO MINE (7)') 
UO.exec('addobject Mine7') 
while UO.targeting() 
wait(100) 
wend 

If Reconnect==1 Then 
UO.Exec('Exec Reconnect') 
EndIf 
#
#
#
#
#
#
################### 
### Рекол домой ### 
################### 
Sub ToRecall() 
RecallToHome() 
ToHide() 
DropOre() 
CheckReg() 
If Food==1 Then 
ToEat() 
EndIf 
If Status==1 Then 
InfoOre() 
EndIf 
BackToMine() 
End sub 
######################################################## 
### Система реколов по рунам (с проверкой на прыжки) ### 
######################################################## 
Sub JumpToRune() 
var x=0 
var mx, my 
mx = UO.GetX("self") 
my = UO.GetY("self") 
dim runes[7] 
runes[1]='Mine1' 
runes[2]='Mine2' 
runes[3]='Mine3' 
runes[4]='Mine4' 
runes[5]='Mine5' 
runes[6]='Mine6' 
runes[7]='Mine7' 
RecallMana() 
If rune==maxjamp Then 
rune=1 
EndIf 
UO.Print("Go to Mine: "+str(rune)) 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
If UO.getx()==mx and UO.gety()==my Then 
REPEAT 
x=x+1 
RecallMana() 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
Until UO.getx()<>mx and UO.gety()<>my or (x==2) or UO.Dead() 
EndIf 
CheckMark() 
rune=rune+1 
End sub 

Sub BackToMine() 
var x=0 
var mx, my 
mx = UO.GetX("self") 
my = UO.GetY("self") 
dim runes[7] 
runes[1]='Mine1' 
runes[2]='Mine2' 
runes[3]='Mine3' 
runes[4]='Mine4' 
runes[5]='Mine5' 
runes[6]='Mine6' 
runes[7]='Mine7' 
If rune==1 Then 
rune=2 
EndIf 
rune=rune-1 
RecallMana() 
UO.Print("Go back to Mine: "+str(rune)) 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
If UO.getx()==mx and UO.gety()==my Then 
REPEAT 
x=x+1 
RecallMana() 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
Until UO.getx()<>mx and UO.gety()<>my or (x==2) or UO.Dead() 
EndIf 
CheckMark() 
rune=rune+1 
End sub 

Sub CheckMark() 
dim runes[7] 
runes[1]='Mine1' 
runes[2]='Mine2' 
runes[3]='Mine3' 
runes[4]='Mine4' 
runes[5]='Mine5' 
runes[6]='Mine6' 
runes[7]='Mine7' 
If UO.InJournal('The recall rune is starting to fade') Then 
UO.print("Mark Rune: "+str(rune)) 
REPEAT 
UO.DeleteJournal() 
MarkMana() 
UO.Cast('Mark',runes[rune]) 
wait(5000) 
Until NOT UO.InJournal('The spell fizzles') or UO.Dead() 
UO.DeleteJournal() 
EndIf 
End sub 
####################################################### 
### Реколимся домой по рунам (с проверкой на прыжки) ## 
####################################################### 
Sub RecallToHome() 
var x=0 
var mx, my 
mx = UO.GetX("self") 
my = UO.GetY("self") 
REPEAT 
x=x+1 
RecallMana() 
UO.Print('Go to Home') 
UO.Cast('Recall','Home') 
wait(5000) 
Until UO.getx()<>mx and UO.gety()<>my or (x==3) or UO.Dead() 
If UO.InJournal('The recall rune is starting to fade') Then 
UO.print("Mark Rune") 
REPEAT 
UO.DeleteJournal() 
MarkMana() 
UO.Cast('Mark','Home') 
wait(5000) 
Until NOT UO.InJournal('The spell fizzles') or UO.Dead() 
UO.DeleteJournal() 
EndIf 
End sub 
Это изначально так в скрипте

Code: Select all

Sub Maning() 
var Mine=1 
#
#
#
wait(500) 
UO.print(('SELECT YOU RUNE TO MINE (1)') 
UO.exec('addobject Mine1') 
while UO.targeting() 
wait(100) 
wend 
#
#
#
wait(500) 
UO.print(('SELECT YOU RUNE TO MINE (15)') 
UO.exec('addobject Mine15') 
while UO.targeting() 
wait(100) 
wend 
#
#
#
######################################################## 
### Система реколов по рунам (с проверкой на прыжки) ### 
######################################################## 
Sub JumpToRune() 
var x=0 
var mx, my 
mx = UO.GetX("self") 
my = UO.GetY("self") 
dim runes[15] 
runes[1]='Mine1' 
runes[2]='Mine2' 
runes[3]='Mine3' 
runes[4]='Mine4' 
runes[5]='Mine5' 
runes[6]='Mine6' 
runes[7]='Mine7' 
runes[8]='Mine8' 
runes[9]='Mine9' 
runes[10]='Mine10' 
runes[11]='Mine11' 
runes[12]='Mine12' 
runes[13]='Mine13' 
runes[14]='Mine14'
runes[15]='Mine15'
RecallMana() 
If rune==maxjamp Then 
rune=1 
EndIf 
UO.Print("Go to Mine: "+str(rune)) 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
If UO.getx()==mx and UO.gety()==my Then 
REPEAT 
x=x+1 
RecallMana() 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
Until UO.getx()<>mx and UO.gety()<>my or (x==2) or UO.Dead() 
EndIf 
CheckMark() 
rune=rune+1 
End sub 

Sub BackToMine() 
var x=0 
var mx, my 
mx = UO.GetX("self") 
my = UO.GetY("self") 
dim runes[15] 
runes[1]='Mine1' 
runes[2]='Mine2' 
runes[3]='Mine3' 
runes[4]='Mine4' 
runes[5]='Mine5' 
runes[6]='Mine6' 
runes[7]='Mine7' 
runes[8]='Mine8' 
runes[9]='Mine9' 
runes[10]='Mine10' 
runes[11]='Mine11' 
runes[12]='Mine12' 
runes[13]='Mine13' 
runes[14]='Mine14'
runes[15]='Mine15'
If rune==1 Then 
rune=2 
EndIf 
rune=rune-1 
RecallMana() 
UO.Print("Go back to Mine: "+str(rune)) 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
If UO.getx()==mx and UO.gety()==my Then 
REPEAT 
x=x+1 
RecallMana() 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
Until UO.getx()<>mx and UO.gety()<>my or (x==2) or UO.Dead() 
EndIf 
CheckMark() 
rune=rune+1 
End sub 

Sub CheckMark() 
dim runes[15] 
runes[1]='Mine1' 
runes[2]='Mine2' 
runes[3]='Mine3' 
runes[4]='Mine4' 
runes[5]='Mine5' 
runes[6]='Mine6' 
runes[7]='Mine7' 
runes[8]='Mine8' 
runes[9]='Mine9' 
runes[10]='Mine10' 
runes[11]='Mine11' 
runes[12]='Mine12' 
runes[13]='Mine13' 
runes[14]='Mine14'
runes[15]='Mine15'
If UO.InJournal('The recall rune is starting to fade') Then 
UO.print("Mark Rune: "+str(rune)) 
REPEAT 
UO.DeleteJournal() 
MarkMana() 
UO.Cast('Mark',runes[rune]) 
wait(5000) 
Until NOT UO.InJournal('The spell fizzles') or UO.Dead() 
UO.DeleteJournal() 
EndIf 
End sub 
####################################################### 
### Реколимся домой по рунам (с проверкой на прыжки) ## 
####################################################### 
Sub RecallToHome() 
var x=0 
var mx, my 
mx = UO.GetX("self") 
my = UO.GetY("self") 
REPEAT 
x=x+1 
RecallMana() 
UO.Print('Go to Home') 
UO.Cast('Recall','Home') 
wait(5000) 
Until UO.getx()<>mx and UO.gety()<>my or (x==3) or UO.Dead() 
If UO.InJournal('The recall rune is starting to fade') Then 
UO.print("Mark Rune") 
REPEAT 
UO.DeleteJournal() 
MarkMana() 
UO.Cast('Mark','Home') 
wait(5000) 
Until NOT UO.InJournal('The spell fizzles') or UO.Dead() 
UO.DeleteJournal() 
EndIf 
End sub 
Вот я сделал так и почему-то доходит до 7 руны и а потом опять на первую делает Рекол! Хелпаните парни плиз?

Posted: 2005-06-09 07:01:07
by Solaire
У тебя наверное maxjamp семи равно, а не 15.

Posted: 2005-06-09 07:39:01
by Qualis Eram
Solaire wrote:У тебя наверное maxjamp семи равно, а не 15.

Code: Select all

##########################
Var OreQty=525		## Ìàêñèìàëüíûé âåñ ïðè êîòîðîì ×àð áóäåò äåëàòü Recall
##########################
Var maxjamp=8 			## [!] Íå èçìåíÿòü 
Var rune=1    			## [!] Íå èçìåíÿòü  
Вот тут в самом начале нашел супер теперь вопрос почему написано 8 а хотя рун то 7 в скрипте изначально (может из-за того что еще один джам по руне это рекол домой на выгруз руды?)? по аналогии если у меня рун 15 то мне надо будет ставить maxjump=16 а вот эту фигню не трогать Var rune=1? И как сделать в этот скрипт проверку на лаги?

Posted: 2005-06-09 10:17:58
by Solaire
Qualis Eram wrote:
Solaire wrote:У тебя наверное maxjamp семи равно, а не 15.

Code: Select all

##########################
Var OreQty=525		## Ìàêñèìàëüíûé âåñ ïðè êîòîðîì ×àð áóäåò äåëàòü Recall
##########################
Var maxjamp=8 			## [!] Íå èçìåíÿòü 
Var rune=1    			## [!] Íå èçìåíÿòü  
Вот тут в самом начале нашел супер теперь вопрос почему написано 8 а хотя рун то 7 в скрипте изначально (может из-за того что еще один джам по руне это рекол домой на выгруз руды?)? по аналогии если у меня рун 15 то мне надо будет ставить maxjump=16 а вот эту фигню не трогать Var rune=1? И как сделать в этот скрипт проверку на лаги?
maxjamp и должен быть на 1 больше, так как у тебя в скрипте после рекола стоит rune=rune+1. Так что делай 16. Var rune=1 не трогай. Функция CheckLag() есть почти в каждом скрипте на этом форуме. Возьми ее из какого-нибудь и повставляй в свой скрипт в проблемные места.)

Posted: 2005-06-10 07:54:58
by Qualis Eram
Хелпаните еще чуток:

Code: Select all

Sub Maning() 
var Mine=1 
# 
# 
# 
wait(500) 
UO.print(('SELECT YOU RUNE TO MINE (1)') 
UO.exec('addobject Mine1') 
while UO.targeting() 
wait(100) 
wend 
# 
# 
# 
wait(500) 
UO.print(('SELECT YOU RUNE TO MINE (15)') 
UO.exec('addobject Mine15') 
while UO.targeting() 
wait(100) 
wend 
# 
# 
# 
######################################################## 
### Система реколов по рунам (с проверкой на прыжки) ### 
######################################################## 
Sub JumpToRune() 
var x=0 
var mx, my 
mx = UO.GetX("self") 
my = UO.GetY("self") 
dim runes[15] 
runes[1]='Mine1' 
runes[2]='Mine2' 
runes[3]='Mine3' 
runes[4]='Mine4' 
runes[5]='Mine5' 
runes[6]='Mine6' 
runes[7]='Mine7' 
runes[8]='Mine8' 
runes[9]='Mine9' 
runes[10]='Mine10' 
runes[11]='Mine11' 
runes[12]='Mine12' 
runes[13]='Mine13' 
runes[14]='Mine14' 
runes[15]='Mine15' 
RecallMana() 
If rune==maxjamp Then 
rune=1 
EndIf 
UO.Print("Go to Mine: "+str(rune)) 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
If UO.getx()==mx and UO.gety()==my Then 
REPEAT 
x=x+1 
RecallMana() 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
Until UO.getx()<>mx and UO.gety()<>my or (x==2) or UO.Dead() 
EndIf 
CheckMark() 
rune=rune+1 
End sub 

Sub BackToMine() 
var x=0 
var mx, my 
mx = UO.GetX("self") 
my = UO.GetY("self") 
dim runes[15] 
runes[1]='Mine1' 
runes[2]='Mine2' 
runes[3]='Mine3' 
runes[4]='Mine4' 
runes[5]='Mine5' 
runes[6]='Mine6' 
runes[7]='Mine7' 
runes[8]='Mine8' 
runes[9]='Mine9' 
runes[10]='Mine10' 
runes[11]='Mine11' 
runes[12]='Mine12' 
runes[13]='Mine13' 
runes[14]='Mine14' 
runes[15]='Mine15' 
If rune==1 Then 
rune=2 
EndIf 
rune=rune-1 
RecallMana() 
UO.Print("Go back to Mine: "+str(rune)) 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
If UO.getx()==mx and UO.gety()==my Then 
REPEAT 
x=x+1 
RecallMana() 
UO.Cast('Recall',runes[rune]) 
Wait(5000) 
Until UO.getx()<>mx and UO.gety()<>my or (x==2) or UO.Dead() 
EndIf 
CheckMark() 
rune=rune+1 
End sub 

Sub CheckMark() 
dim runes[15] 
runes[1]='Mine1' 
runes[2]='Mine2' 
runes[3]='Mine3' 
runes[4]='Mine4' 
runes[5]='Mine5' 
runes[6]='Mine6' 
runes[7]='Mine7' 
runes[8]='Mine8' 
runes[9]='Mine9' 
runes[10]='Mine10' 
runes[11]='Mine11' 
runes[12]='Mine12' 
runes[13]='Mine13' 
runes[14]='Mine14' 
runes[15]='Mine15' 
If UO.InJournal('The recall rune is starting to fade') Then 
UO.print("Mark Rune: "+str(rune)) 
REPEAT 
UO.DeleteJournal() 
MarkMana() 
UO.Cast('Mark',runes[rune]) 
wait(5000) 
Until NOT UO.InJournal('The spell fizzles') or UO.Dead() 
UO.DeleteJournal() 
EndIf 
End sub 
####################################################### 
### Реколимся домой по рунам (с проверкой на прыжки) ## 
####################################################### 
Sub RecallToHome() 
var x=0 
var mx, my 
mx = UO.GetX("self") 
my = UO.GetY("self") 
REPEAT 
x=x+1 
RecallMana() 
UO.Print('Go to Home') 
UO.Cast('Recall','Home') 
wait(5000) 
Until UO.getx()<>mx and UO.gety()<>my or (x==3) or UO.Dead() 
If UO.InJournal('The recall rune is starting to fade') Then 
UO.print("Mark Rune") 
REPEAT 
UO.DeleteJournal() 
MarkMana() 
UO.Cast('Mark','Home') 
wait(5000) 
Until NOT UO.InJournal('The spell fizzles') or UO.Dead() 
UO.DeleteJournal() 
EndIf 
End sub 
Вот макрос прошу вас сделайте так чтобы он реколился по руне к банку (типо руна домой) писал банк и реколился по руне в банке как раз на дроп руды.......Заранее благодарен