Page 3 of 4

Posted: 2005-02-27 17:54:06
by Gromiz
наверно в первую??

Posted: 2005-02-27 18:15:44
by Gromiz
я заменил эти
("no ore here")
("in rock")

на эти
"There is nothing here to mine for."
"You can't use the %s where it is."

но скрипт не пашет ((

Posted: 2005-02-27 18:34:58
by Gromiz
этот скрипт ваще не пашет -((

http://yoko.netroof.net/forum/viewtopic.php?p=5445

Posted: 2005-02-28 11:27:45
by Gromiz
мда..как-то скритпы на лумбер и мининг пофоксили...=((

видимо скрипты сделать нельзя...(если никто не пишет)
:x попал...................

Posted: 2005-02-28 18:49:43
by I'm
Gromiz wrote:мда..как-то скритпы на лумбер и мининг пофоксили...=((

видимо скрипты сделать нельзя...(если никто не пишет)
:x попал...................

Можно ибо я рою.
Ты сам напишеш если немного подумаеш.

Posted: 2005-02-28 21:25:17
by The Cheater
там писать то нечего ...

Code: Select all

sub mining() 
var rut = '****' #тип кирки
var mx, my, mz, i, j
var ismining, ixx, isheavy
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
UO.DeleteJournal()
for i = mx-2 to mx+2
for j = my -2 to my+2
UO.Print("Now Mining In: "+str(mx-i)+" "+str(my-j))
ismining =1
while not UO.InJournal("no ore here") and not UO.InJournal("location") and not UO.InJournal("far away") and not UO.InJournal("in rock") and ismining
UO.DeleteJournal()
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Usetype(rut)
if UO.Weight>250 then
#recolldomoi()
Return
endif
ixx = 0
ismining=1
while not UO.InJournal("You put") and not UO.InJournal("location") and not UO.InJournal("no ore") and not UO.InJournal("but fail") and not UO.InJournal("far away") and not UO.InJournal("in rock") and ixx <= 100
wait (1000)
ixx = ixx + 1
wend
if not ismining then
uo.print("Not mining here")
endif
wend
UO.DeleteJournal()
next
next
goto allstop
#recolldomoi()
allstop:
uo.print("*** Script ended ***")
end sub

если бы я неварил мне былобы легче залезть на станичку и поизучать это нетакто сложно как кажетса на первый взгляд некакой высшей матеметики никаких те замарочек ничего этого здесь нету

Posted: 2005-03-01 12:38:51
by Gromiz
ооо работает...

я так понял размер копки задается здесь::

Code: Select all

for i = mx-2 to mx+2 
for j = my -2 to my+2

Posted: 2005-03-01 14:07:39
by Gromiz
а тут он обкапывает 2 клетки вокруг себя..!!да?

а если чтоб он копал и копал..??
типа обкопал пошел дальше...просто надо указать вместо 2 клеток 20??

Posted: 2005-03-01 14:47:56
by Gromiz
воо скрипт пашет !!!!!!!!!!!!!

там есть проверка на элементалей и пк..так вот

на моем шарде элементали появляюся сразу после того как копнули..и он сразу начинает атачить...само-собой при телепорте появляются физлы....

вопрос как этого избежать(типа смыться живым скорее)??

Posted: 2005-03-01 16:11:36
by BETEPAH
Нету там проверки на ПК....А по поводу увеличения с 2-20 то нет .....это увеличивает на сколько клеток от себя он будет пытатся копать. А для переходов тебе нуно вставлять туда ходилку или просто каждый раз после удачной выкопки переход делать простым нажатием на кнопочку- стрелочку.

Posted: 2005-03-01 16:16:20
by Gromiz
BETEPAH wrote:Нету там проверки на ПК....А по поводу увеличения с 2-20 то нет .....это увеличивает на сколько клеток от себя он будет пытатся копать. А для переходов тебе нуно вставлять туда ходилку или просто каждый раз после удачной выкопки переход делать простым нажатием на кнопочку- стрелочку.


я использовал твой скрипт
http://yoko.netroof.net/forum/viewtopic.php?p=5445#5445

на нем все есть -)) понятно жаль что нельзя..а ходилку типо можно псле скрипта вставить или надо в него??

и еще 1 вопросик когда я копаю и выходит такое сообщение:

Code: Select all

You loosen some rocks but fail to find any useable ore

то чар телепкается домой ..как-будто кто-то подошел??
и в скрипт я вставил чтобы чар телепкался от всех(мож это влияеет?)

Posted: 2005-03-01 16:26:54
by BETEPAH
Вставить можно но возни много. А про месагу ...да из за нее ....она серая и выскакивает в журнале.

Posted: 2005-03-01 16:30:03
by Gromiz
BETEPAH wrote:Вставить можно но возни много. А про месагу ...да из за нее ....она серая и выскакивает в журнале.


хорошо спасибо!

Posted: 2005-03-01 17:39:09
by The Cheater
дай нубу палец он те руку откусит если в игнор вовремя непослать )))
эх жалею я шо суицид от вас ушол, строгоча вам надо хорошего блин!

Posted: 2005-03-01 19:10:35
by Gromiz
так как элементали появляются сразу и нет шансов отреколится...млж можно сделать чтобы чар при выкопке элема отходил на несколько шагов в сторону и реколился??



P.S. и можете ли вы помочь с этим??

Posted: 2005-03-02 11:47:11
by BETEPAH
да легко......

Вот тебе модуль Реакции на Эля по журналу.

Code: Select all


if uo.injournal("heavy") then
WalkN(6028,1243'')
wait(500)
Save()
end if



вот тебе сам модуль рекола.

Code: Select all

sub  
var mx, my
reccal:
uo.deletejournal()
if uo.waiting() then
uo.canceltarget()
endif
mx = UO.GetX("self")
my = UO.GetY("self")
UO.DeleteJournal()
uo.waittargetobject('runeHome') ; домой
wait(500)
uo.cast('Recall')
wait(4500)
if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then
goto reccal
endif
wait(2000)
if uo.injournal("fade")then
uo.waittargetobject('runeHome') ; домой
wait(500)
uo.cast('Mark')
wait(4500)
uo.deletejournal()
endif
end sub


вот тебе ходилка.

Code: Select all


sub WalkN(x,y,Target)
VAR i,StepSucess
VAR dx,dy,Exit=0
While Exit<>1   
If Target<>"" Then
dx=UO.GetX(Target)-UO.GetX()
dy=UO.GetY(Target)-UO.GetY()
If UO.GetDistance(Target)<2 Then
Exit=1
Endif
Else
dx=x-UO.GetX()
dy=y-UO.GetY()
UO.Print('Left '+STR(dx)+' steps to target. ')
If dx==0 AND dy==0 Then
Exit=1
Endif
Endif
If dx<>0 AND dy<>0 Then
If dx>0 AND dy>0 Then
StepSucess=Go(3,40,300) 
If StepSucess==-1 Then
StepSucess=Go(7,38,300) 
StepSucess=Go(1,39,300) 
If StepSucess==-1 Then
StepSucess=Go(5,37,300) 
Endif
Endif
Endif
If dx>0 AND dy<0 Then
StepSucess=Go(1,39,300) 
If StepSucess==-1 Then
StepSucess=Go(5,37,300) 
StepSucess=Go(3,40,300) 
If StepSucess==-1 Then
StepSucess=Go(7,38,300) 
Endif
Endif
Endif
If dx<0 AND dy>0 Then
StepSucess=Go(5,37,300) 
If StepSucess==-1 Then
StepSucess=Go(1,39,300) 
StepSucess=Go(7,38,300) 
If StepSucess==-1 Then
StepSucess=Go(3,40,300) 
Endif
Endif
Endif
If dx<0 AND dy<0 Then
StepSucess=Go(7,38,300) 
If StepSucess==-1 Then
StepSucess=Go(3,40,300) 
StepSucess=Go(5,37,300) 
If StepSucess==-1 Then
StepSucess=Go(1,39,300) 
Endif
Endif
Endif
Endif
If dx<>0 AND dy==0 Then
If dx>0 Then
StepSucess=Go(2,34,300) 
If StepSucess==-1 Then
StepSucess=Go(3,40,300) 
If StepSucess==-1 Then
StepSucess=Go(1,39,300) 
Endif
StepSucess=Go(2,34,300) 
Endif
Endif
If dx<0 Then
StepSucess=Go(6,36,300) 
If StepSucess==-1 Then
StepSucess=Go(7,38,300) 
If StepSucess==-1 Then
StepSucess=Go(5,37,300) 
Endif
StepSucess=Go(6,36,300) 
Endif
Endif
Endif
If dx==0 AND dy<>0 Then
If dy>0 Then
StepSucess=Go(4,35,300) 
If StepSucess==-1 Then
StepSucess=Go(3,40,300) 
If StepSucess==-1 Then
StepSucess=Go(5,37,300)
Endif
StepSucess=Go(4,35,300)
Endif
Endif
If dy<0 Then
StepSucess=Go(0,33,300)
If StepSucess==-1 Then
StepSucess=Go(1,39,300)
If StepSucess==-1 Then
StepSucess=Go(7,38,300)
Endif
StepSucess=Go(0,33,300)
Endif
Endif
Endif
Wend
end sub

sub Go(dir,key,walkwait)
VAR x,y, OldDir
x=UO.GetX()
y=UO.GetY()
OldDir=UO.GetDir()
If UO.GetDir()<>dir Then
UO.Press(key)
wait(walkwait)
If UO.GetDir()<>dir Then
Endif
Endif
UO.Press(key)
wait(walkwait)
if x==UO.GetX() AND y==UO.GetY() Then
Endif
If x==UO.GetX() AND y==UO.GetY() AND OldDir<>UO.GetDir() Then
UO.Press(key)
wait(walkwait)
Endif
If x==UO.GetX() AND y==UO.GetY() Then
Endif
If x==UO.GetX() AND y==UO.GetY() Then
UO.Print("Stuck. Try move else!")
return -1
Else
return 1
Endif
end sub

Posted: 2005-03-02 13:35:15
by Gromiz
аааа караул...что-то не выходит все эти модули(спасибо)..запихнуть в скрипт ..уже скоко парюсь никак не выхидт...постоянно ошибки вызывает помогите?...

вот я их запихиваю сюда

Code: Select all

sub mining() 
var mx, my, mz, i, j, jor, ser, noto
Uo.exec("set norbcheck 1"); для рекола
uo.exec("set norbcalc 1"); тоже

uo.print('!!Выбери Лопату!! ')
uo.exec('addobject Shovel')
while uo.targeting()
wait(100)
wend
 
uo.print('!!Выбери Руну ДОМОЙ !! ')
uo.exec('addobject runeHome')
while uo.targeting()
wait(100)
wend

uo.print('!!Выбери Руну В ПЕЩЕРУ !! ')
uo.exec('addobject runeCave')
while uo.targeting()
wait(100)
wend

na4alo:
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
UO.DeleteJournal()
for i = mx-2 to mx+2
for j = my-2 to my+2
while not UO.Hidden()
UO.Warmode("0")
uo.print("Прячемся...")
UO.UseSkill("Hiding")
wait(4000)
wend
UO.Print("Копаем в координатах: "+str(mx-i)+" "+str(my-j))
while not UO.InJournal("There is nothing") and not UO.InJournal("location") and not UO.InJournal("far away")  and not UO.InJournal("Iron Ore") and not UO.InJournal("Copper") and not UO.InJournal("Rusty Ore") and not UO.InJournal("You can't use the %s where it is") and not UO.InJournal("Try mining elsewhere")
UO.DeleteJournal()
if uo.waiting() then
uo.canceltarget()
endif
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Useobject("Shovel")
while not UO.InJournal("You put") and not UO.InJournal("heavy") and not UO.InJournal("location") and not UO.InJournal("There is nothing") and not UO.InJournal("but fail") and not UO.InJournal("far away") and not UO.InJournal("You can't use the %s where it is") and not UO.InJournal("Try mining elsewhere")
wait (500)
if uo.injournal("heavy") or uo.dead() then
pwav()                   
Pause()
endif
for jor = 0 to 9   
ser = uo.journalserial(jor)
noto = uo.getnotoriety(ser)
if noto <> 1 and noto <> 0 and not uo.injournal("elemental") then  ;чтоб он сматывался только от пк то:(if noto <> 1 and noto <> 0 and not uo.injournal("elemental") then ) а это чтоб от всех (if noto <> 0 and not uo.injournal("elemental") then )
if uo.waiting() then
uo.canceltarget()
endif
Save()
pwavw()
wait(180000) ; время в секундах при ожидании пока уйдет ПК
loot()
wait(3000)
goto reccal
endif
next   
wend
if uo.weight > 600 then  ; Максимальный вес при котором домой с рудой
goto end
endif
wend
UO.DeleteJournal()
next
next
goto na4alo
end:
if uo.waiting() then
uo.canceltarget()
endif
uo.waittargetobject('runeHome') ; домой
wait(500)
uo.cast('Recall')
wait(3000)
loot()
wait(3000)
reccal:
uo.deletejournal()
if uo.waiting() then
uo.canceltarget()
endif
uo.waittargetobject('runeCave') ; в шахту
wait(500)
uo.cast('Recall')
mx = UO.GetX("self")
my = UO.GetY("self")
wait(10000)
if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then
goto reccal
endif
goto na4alo
end sub


sub loot()    ; перекладка руды в сундук
if uo.waiting() then
uo.canceltarget()
endif
VAR a,Exit
VAR UnloadCont='0x40187609' ; АЙДИ сундука для руды 
DIM Ore[5]
Ore[0]=0x19B9
Ore[1]=0x19B8
Ore[2]=0x19BA 
Ore[3]=0x1BEC

UO.SetReceivingContainer(UnloadCont)
wait(500)
For a=0 to 3
Exit=0
repeat
UO.FindType(Ore[a])
if UO.GetQuantity('finditem')>0 then
UO.Grab('0','finditem')
wait(1500)
Else
Exit=1
endif
until Exit==1
Next
UO.UnSetReceivingContainer()
end sub

sub Save() ; Реколл от ПК при их появлении (в паке рунка в безопасное место и реги)
var mx, my
reccal:
uo.deletejournal()
if uo.waiting() then
uo.canceltarget()
endif
mx = UO.GetX("self")
my = UO.GetY("self")
UO.DeleteJournal()
uo.waittargetobject('runeHome') ; домой
wait(500)
uo.cast('Recall')
wait(4000)
if not UO.GetX("self") <> mx and not UO.GetY("self") <> my then
goto reccal
endif
end sub

sub pwav() ; звук при выкапывании ЭЛЕМЕНТАЛА
uo.playwav("D:\Gamezz\ULTIMA ONLINE\Inject\SOUND\alert.wav")
endsub

sub pwavw(); звук при появлении ПК
uo.playwav("D:\Gamezz\ULTIMA ONLINE\Inject\SOUND\alert.wav")
endsub

sub Pause() ; Пауза скрипта если выкопали Элема (продолжить сказав GO )
UO.DeleteJournal()
REPEAT
WAIT(3000)
UO.Print("!!!СКРИПТ НА ПАУЗЕ!!!!")
UNTIL UO.InJournal('GO')
UO.Print("!!!СКРИПТ ПРОДОЛЖЕН!!!!")
endif
end sub

Posted: 2005-03-02 14:11:32
by BETEPAH
Мду...насмешил _)

Code: Select all

if uo.injournal("heavy") or uo.dead() then 
pwav()                   
Pause()
endif


Это проверка на Эля у тебя в скрипте........замени на то что я тебе дал. И потом добавь в скрипт просто ходилку .

Posted: 2005-03-02 14:37:25
by Gromiz
ааммм...модуль рекола уже не надо добавлять...ведь он уже есть??

и ходилка она относится к отходу от элементаля?

Posted: 2005-03-02 15:44:55
by BETEPAH
Да ходилка к отходу... и рекол те не нужен