Yoko

All sides of Injection
It is currently 2025-10-17 03:50:40

All times are UTC+02:00




Post new topic  Reply to topic  [ 3 posts ] 
Author Message
PostPosted: 2009-04-16 15:31:58 
Offline
User avatar

Joined: 2009-03-26 19:20:44
Posts: 10
Code:
sub main()
var zona = 6;
var m, i, a, tX, tY, tr = 1
tX = UO.GetX('self')
tY = UO.GetY('self')
for i=1 to zona
if tr then
m = - 5
else
m = 5
endif
for a=1 to zona
tY = tY + m
GotoXY(tX,tY)
Lumder()
next
tX = tX - 5
if tr then
tr = 0
else
tr = 1
endif
next
end sub

sub Lumder()
var X, Y, MaxRange = 3, MaxVes = 620, k = 0
for Y = -MaxRange to MaxRange
for X = -MaxRange to MaxRange
if Tree(UO.GetX()+X, UO.GetY()+Y) then
   repeat
UO.Set('quiet','0')
UO.DeleteJournal()
    UO.Warmode(0)
         wait(100)
    UO.WaitTargetTile(Tree(UO.GetX()+X, UO.GetY()+Y), UO.GetX()+X, UO.GetY()+Y, UO.GetZ())
;********************************
; Auto Tools
    if UO.Count(0x0F43) || UO.Count(0x0F44) then
     if UO.Count(0x0F43) then
      UO.UseType(0x0F43); <-- Топор
     else
      UO.UseType(0x0F44); <-- Топор
    endif
    else
UO.Set('quiet','0')
    UO.Print('ГДЕ ТОПОР БЛЯ?')
     return
    endif
;********************************
k=k+1
      repeat
         wait(100)
      until UO.InJournal("0xA20D|0xA2DE|0xA2E7|0xA308|0xA309|0xA30D|0xA311|0xA312|Вы положили|nothing|You put|Вы ударили по дереву|You hack at the tree|Тут нечего рубить|no logs|Вы не можете до этого достать|You can|reach this|Дерево слишком далеко|That is too far away|do much|Это кажется свободным для вашего удара|It appears immune to your blow|атакует")
UO.Set('quiet','0')
   if k>10 then ; проверка на филзы. Увеличить для вырубки фаировпри 30 скилла
    UO.Print('Что-то крепкое попалось!!!')
      return
   endif 
   If UO.Weight > MaxVes Then
    UO.Print('Перегруз!')
     return 0
   endif
   If UO.Life < Uo.Str/10 then
    UO.Print('А мы умираем!')
    return 0
   endif
   until UO.InJournal("0xA20D|0xA2DE|0xA2E7|0xA308|0xA309|0xA30D|Тут нечего рубить|nothing|no logs|You can|Вы не можете до этого достать|Дерево слишком далеко|too far away|свободным для вашего удара")
endif
   next
     next
return 0
end sub

Sub Tree(X,Y)
   var i
DIM  R[34]
R[1] = 3274;
R[2] = 3275;
R[3] = 3276;
R[4] = 3277;
R[5] = 3280;
R[6] = 3283;
R[7] = 3286;
R[8] = 3288;
R[9] = 3290;
R[10] = 3293;
R[11] = 3296;
R[12] = 3299;
R[13] = 3302;
R[14] = 3320;
R[15] = 3323;
R[16] = 3326;
R[17] = 3329;
R[18] = 3393;
R[19] = 3394;
R[20] = 3395;
R[21] = 3396;
R[22] = 3415;
R[23] = 3416;
R[24] = 3417;
R[25] = 3418;
R[26] = 3419;
R[27] = 3438;
R[28] = 3439;
R[29] = 3440;
R[30] = 3441;
R[31] = 3442;
R[32] = 3460;
R[33] = 3461;
R[34] = 3462;
   for i = 1 to 34
      if uo.privategettile( x, y, -1, R[i], R[i]) then
         return R[i]
      endif
   next
   return false
end sub
##############################################

sub GotoXY(x,y)
var myX,myY,lastX=0,lastY=0,i,halt=0,z,r=0
for i=1 to 60

myX=UO.GetX();
myY=UO.GetY();
if LastX==myX and LastY==myY then
halt=halt+1
else
halt=0
end if
if halt>=10 then
if UO.GetDir()==1 then
for z=0 to 8
UO.Press(40)
next
end if
if UO.GetDir()==3 then
for z=0 to 8
UO.Press(37)
next
end if
if UO.GetDir()==5 then
for z=0 to 8
UO.Press(38)
next
end if
if UO.GetDir()==7 then
for z=0 to 8
UO.Press(39)
next
end if
halt=15
end if
if Numb(x-myX)<=1 and Numb(y-myY)<=2 then
return 1
end if
if x<=myX then
if y<=myY then
for z=0 to 3
UO.Press(38)
next
else
for z=0 to 3
UO.Press(37)
next
end if
else
if y<=myY then
for z=0 to 3
UO.Press(39)
next
else
for z=0 to 3
UO.Press(40)
next
end if
end if
lastX=myX
lastY=myY
wait(200)
next
return 0
end sub

sub Numb(num)
if num>=0 then
return num
else
return num*(-1)
end if
end sub

##### СТЕРЕТЬ ЖУРНАЛ #####
Sub DeleteJournal(msg)
While UO.InJournal(msg)
     UO.SetJournalLine(UO.InJournal(msg) - 1,'')
wend
endsub


Всё вроде ничего, чар ходит, рубит, ничего для этого не надо, только топор! Но возник вопрос, как можно изменить этот скрипт, чтоб вместо рубки, он ходил и искал камешки и копал!?

Вопрос: Что нужно изменить, где и как? Что бы чар сам ходил и копал?
Строки из журнала заменить могу, вместо топора кирку то же :) а вот дальше тёмный лес! Признателен за помощь и полезную инфу в плане этого скрипта!

_________________
"Если ты мне не поможешь, то я умру сегодня вечером, а я не хочу умирать сегодня…"


Top
   
 Post subject:
PostPosted: 2009-04-20 09:15:34 
Offline
User avatar

Joined: 2009-03-26 19:20:44
Posts: 10
Может я не туда написал? Или не так что-то объясняю??

_________________
"Если ты мне не поможешь, то я умру сегодня вечером, а я не хочу умирать сегодня…"


Top
   
 Post subject:
PostPosted: 2009-04-20 10:24:01 
Offline
Expert!
User avatar

Joined: 2004-04-04 11:13:54
Posts: 1205
Location: Балаково, Саратовская обл.
С кочками будет сложнее, их не такая плотность как деревьев. Прийдётся скрипт сильно переделывать.

Попробуй измени массив на значения инфотайла с кочек.
Если не ошибаюсь, зону надо будет увеличить.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 3 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited