Скрипты

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Скрипты

Post by -=Morf=- »

У кого нить есть скрипты под инжект на шарде The Myst ? Мне нужно ток в ньюби крафт руме 2 скриптика, на то чтобы рубил все деревья , и чтобы обкапывал все камни с рудой :oops: :oops:
slonopotam
Posts: 270
Joined: 2006-08-05 14:09:06
Contact:

Post by slonopotam »

Небыл на этом шарде. Там копнул раз и ждешь пока все не выроет?
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

нееее там не так, там такие камни стоят, в каждом камне копается только 1 вида руда. 1 раз жмеш 1 раз и копает )потом как кончается руда в камне он исчезает и появляется через опредленноое время
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

лучше зайди на шард посмотри в ньюби крафт руме, через тел.стоун. Просто так сложно объяснить
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

и ещебы сюда бы скинуть переплавку руды для Миста =) по 1 штучке чтобы плавил все и в бек пак скидывал :roll:
slonopotam
Posts: 270
Joined: 2006-08-05 14:09:06
Contact:

Post by slonopotam »

Переплавка везде одинакова, просто подставить нужно свой тип руды. Насчет зайти, эт никак, при регистрации ошибка. Так что х.з. что там за камни.
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

я конешно в скриптах ваще ниче не понимаю, а как добавить в скрипт вот этот, чтобы 2 раза чар жал на плавилку и кликал на 1 руду ?




Code: Select all

##################################################################### 
; Training of Mining, ver 1.03, (c) Edred
sub Smelt()
VAR Ruda1 = '0x19B9'            ; Тип руды
VAR Ruda2 = '0x19B8'            ; Тип руды - 3 шт.
VAR Ruda3 = '0x19BA'            ; Тип руды - 2 шт.
VAR Ruda4 = '0x19B7'            ; Тип руды - 1 шт.
VAR Ing1 = '0x1BEF'               ; Тип ингов металлов
VAR Ing2 = '0x1BF2'               ; Тип ингов строймата
VAR MaxVes = 500               ; Максимальный вес пака
repeat   
   UO.Findtype( Ruda1, -1, 1 )      ; Ищем руду на земле
   If UO.Findcount() == 0 Then
      UO.Findtype( Ruda2, -1, 1 )
      If UO.Findcount() == 0 Then
         UO.Findtype( Ruda3, -1, 1 )
         If UO.Findcount() == 0 Then
            UO.Findtype( Ruda4, -1, 1 )
            If UO.Findcount() == 0 Then
               UO.Print( "No more ore for smelt..." )
               Return
            Endif
         Endif
      Endif
   Endif
   UO.Exec( "moveitem finditem 1" )   ; Тащим 1 в пак
   Wait( 50 )
   UO.Useobject( 'finditem' )      ; переплавляем
   Wait( 50 )
   If UO.Weight > MaxVes Then
      ; Максимальный вес пака превышен - разгружаемся
      UO.Findtype( Ing1, -1, -1 )
      If UO.Findcount() > 0 Then
         UO.Drophere( 'finditem' )
         Wait( 50 )
      Endif
      UO.Findtype( Ing2, -1, -1 )
      If UO.Findcount() > 0 Then
         UO.Drophere( 'finditem' )
         Wait( 50 )
      Endif
   Endif
until NOT Uo.CountGround( Ruda1 ) AND NOT UO.CountGround( Ruda2 ) AND NOT UO.CountGround( Ruda3 ) AND NOT UO.CountGround( Ruda4 )
UO.Print( "No more ore for smelt..." )
endsub


:roll: :oops:

NMY: используй [cоde][/code] !
slonopotam
Posts: 270
Joined: 2006-08-05 14:09:06
Contact:

Post by slonopotam »

Рядом топик в котором это обсуждалось
viewtopic.php?t=8613
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

чото не пойму причем тут другой топик? мне нужно просто знать чо добавить надо чтобы при переплавке чар кликал на плавилку и таргетом на руду...
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

а еще забыл сказать, можно ли еще скриптик на мининг и ламб такой, чтобы сперва собирал кооридинаты где копать ( где рубить ) а потом шел по этим координатам и копал ( рубил ) ???
slonopotam
Posts: 270
Joined: 2006-08-05 14:09:06
Contact:

Post by slonopotam »

Ссылка на другой топ именно потому что тебе нужно. И 80% выложенных здесь скриптов на люмберинг именно таких какие нужны тебе.
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

не ну ламбер это ок, сойдет, а вот мининг я не видел чтобы он копал только по заданным координатам)
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

а блин тут еще и траблы с ламбером..... как бы инжект не воспринимает такова типа деревья, они прописаны в статиках где то... короч не собирает он координаты :roll:
slonopotam
Posts: 270
Joined: 2006-08-05 14:09:06
Contact:

Post by slonopotam »

Это делается в ручную. Ходишь тыкаеш в деревья, все это пишется в файл. И потом из этого файла рубит.
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

еслиб былобы так все просто... он не считывает такого вида деревья.... и не пишет их в файл с координатами я уже попробывал
slonopotam
Posts: 270
Joined: 2006-08-05 14:09:06
Contact:

Post by slonopotam »

Вот с этим скриптом не нужно ничего марчить. Чар просто ходит по лесу и рубит все что попало.


Code: Select all

sub main()
; + EDIT +++++++++++++++++++++++++++++++++++++++++++++++
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)
 Lamber()
next
tX = tX - 5
if tr then
 tr = 0
else
 tr = 1
endif
next
endsub

sub Lamber()
; + EDIT +++++++++++++++++++++++++++++++++++++++++++++++
var MaxFailCount = 10; fizzle
var MaxRange = 3   ; 3 tiles
var mDebug = false ;
; ++++++++++++++++++++++++++++++++++++++++++++++++++++++

var X, Y, Z, FailCount = 0, LTimer, Tiles
var mX, mY, mZ, TrWeight, TrT, TrW, adX, adY

; ** Debug ***********************
if mDebug then
UO.TextOpen()
UO.TextClear()
endif
; ********************************

mX = UO.GetX('self')
mY = UO.GetY('self')
mZ = UO.GetZ('self')
for Y = MaxRange - ( MaxRange * 2 ) to MaxRange
for X = MaxRange - ( MaxRange * 2 ) to MaxRange
 Tiles = F_HarvestTiles(mX+X, mY+Y)
 if Tiles then
  adX = mX+X
  adY = mY+Y
  repeat
   F_DelJournalMine();
   UO.Warmode(0)
   UO.WaitTargetTile(Tiles, mX+X, mY+Y, mZ)

; ********************************
   if UO.Count(0x0F49) then
    UO.UseType(0x0F49); <-- Axe
   else
    return 1
   endif
; ********************************

; ************ Triger ************
; ErrorExitTimer
   LTimer=UO.Timer()
   TrT = UO.Timer() > LTimer + 60; !!! 60/10 = 6 sec !!!
; MyWeight + Ore
   TrWeight = UO.Weight
   TrW = UO.Weight <> TrWeight
; ********************************

   repeat
    wait(100)
   until UO.InJournal("You put the|useable wood|You can|That is too far away|here to chop") || TrT || UO.Dead()

; ********* ON=@FailCount ********
   if TrW then
    FailCount = 0
   else
    FailCount = FailCount + 1
   endif
; ********************************

; ***** Debug Harvest Tiles ******
   if mDebug then
    if TrT then
     UO.TextPrint(Tiles); !Harvest
    else
;       UO.TextPrint(Tiles);  Harvest
    endif
   endif
; ********************************

  until UO.InJournal("here to chop|You can|That is too far away") || FailCount >= MaxFailCount || UO.Dead()
 endif
next
next
UO.Sound(61)
return 0
end sub

sub F_HarvestTiles(X,Y)
var i
if UO.PrivateGetTile(X, Y, -1, 3274, 3302) then
for i=3274 to 3302
 if UO.PrivateGetTile(X, Y, -1, i, i) then

; ***** Patch ********************************************
  if i==3278 || i==3279 || i==3281 || i==3282 then
   return 0
  endif
  if i==3284 || i==3285 || i==3287 || i==3289 then
   return 0
  endif
  if i==3291 || i==3292 || i==3294 || i==3295 then
   return 0
  endif
  if i==3297 || i==3298 || i==3300 || i==3301 then
   return 0
  endif
; ********************************************************

  return i
 end if
next
end if
return 0
end sub

sub F_DelJournalMine()
F_DeleteJournal("You put the")       ;
F_DeleteJournal("useable wood")      ;
F_DeleteJournal("That is too far away");
F_DeleteJournal("You can")           ;
F_DeleteJournal("here to chop")      ;
end sub

sub F_DeleteJournal( string1 )
var nom = UO.InJournal( string1 )
if nom > 0 then
UO.SetJournalLine( Nom - 1, "string replaced" )
F_DeleteJournal( string1 )
endif
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
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

а мининг по координатам чтобы копал можеш скинуть? Т.е также сперва координаты скидываю а потом он сам бегает к "целям" и копает и так по циклу
slonopotam
Posts: 270
Joined: 2006-08-05 14:09:06
Contact:

Post by slonopotam »

Координаты нужно самому в файл писать, а потом из него считывать.
-=Morf=-
Posts: 79
Joined: 2006-04-22 20:37:37

Post by -=Morf=- »

не ну бывают же скрипты типо как на ламб, тыкаеш чем нить и координаты сами пишутся, мнеб вот такой бы скриптик на мининг ))))
Post Reply