annuncio

Comprimi
Ancora nessun annuncio.

[EASYUO] The Zoo Keeper (Moonglow Royal Zoo Cooperative Collection)

Comprimi
X
 
  • Filtro
  • Ora
  • Visualizza
Elimina tutto
nuovi messaggi

  • [EASYUO] The Zoo Keeper (Moonglow Royal Zoo Cooperative Collection)

    Cosa fa questo script?
    In breve fa tutto, o quasi tutto, quello che faresti te per completare la quest cooperativa dello zoo di moonglow: Cerca, tama e consegna Polar Bears, White Wolfs e Kirin/Unicorns.

    Requisiti minimi del mio PG?
    Dovendo trasportare pet non bondati è necessario che sia un Mago-Tamer, deve essere in grado di aprire e dispellare gates ("dispel field").
    Skill minime necessarie:
    Animal Taming 50.0
    Animal Lore 33.0
    Magery 86.0

    Istruzioni per l'uso:
    Prima di far partire lo script dovete stallare ogni fellower e aver messo nel vostro backpack (non nel runebook, sfuse nel backpack) 4 rune:
    - 1 runa per lo zoo di moonglow (markata entro 15 tiles dall box di consegna)
    - 3 rune per gli spawn dei pet: polar, wolf e kirin/unicorn
    NB: le rune possono essere markate anche tutte e tre in spawn di un solo tipo di animale.

    ***NOTA IMPORTANTE***
    Macrare away con questo script è VIETATO dal regolamento di UoDreams ---> DOVETE STARE DAVANTI AL MONITOR!!
    Questo script potrebbe interferire con il gioco di altri player ---> DOVETE STARE DAVANTI AL MONITOR!!
    Spesso e volentieri si potrebbe bloccare ---> dovrete stare davanti al monitor pronti a farlo ripartire.

    Per dubbi e domande chiedete pure, buon macraggio.

    Click, copia & incolla: Zoo Keeper

    codice:
    ;=======================================================================
    ; Script Name: Zoo Keeper
    ; Author:  Khaliizi
    ; Version: 1.0
    ; Client Tested with: 7.0.16.3
    ; EUO version tested with: 1.5 (build 214)
    ; Shard OSI / FS: FS
    ; Revision Date: 26/09/2013
    ; Public Release: 27/09/2013
    ; Global Variables Used: no
    ; Purpose:  Zoo Community Collection - Polar Bear, White Wolf and
    ;           Ki-Rin (or Unicorns) will be tamed and collected.
    ;=======================================================================
    Ultima modifica di Khaliizi; 01-09-2014, 16:03.
    sigpic

  • #2
    codice:
    ;=======================================================================
    ; Script Name: Zoo Keeper
    ; Author:  Khaliizi
    ; Version: 1.0
    ; Client Tested with: 7.0.16.3
    ; EUO version tested with: 1.5 (build 214)
    ; Shard OSI / FS: FS
    ; Revision Date: 26/09/2013
    ; Public Release: 27/09/2013
    ; Global Variables Used: no
    ; Purpose:  Zoo Community Collection - Polar Bear, White Wolf and
    ;           Ki-Rin (or Unicorns) will be tamed and collected.
    ;=======================================================================
    ; User's Handbook:
    ;        Put in your backpack 4 runes marked with
    ;        - a zoo spot (at 4-5 tiles from the collection box)
    ;        - three animals spots (for polars, wolfs and kirin/uni).
    ;        Start the script and follow intructions.
    ;
    ;        NB: it doesn't matter what the script says, in case you marked
    ;            three runes on wolfs, if he finds a polar he will tame it
    ;            even if it says "i'm looking for wolfs" <--- the big liar!
    ;=======================================================================
    ;=======================================================================
    
    gosub initall
    while 1 <> 0
    {
     if %KU && ! %flushing
      gosub move KirinUnicorn
     if %PB && ! %flushing
      gosub move PolarBear
     if %WW && ! %flushing
      gosub move WhiteWolf
     if %flushing
      gosub flush
     sleep 1000
    }
    
    sub initall
    set %points 0
    set %flushing #false
    set %zerofellows 0
    set %KU #true
    set %WW #true
    set %PB #true
    set %list #false
    set %polarbear VF       ;50 - 33
    set %whitewolf _ZD_GE   ;80 - 63
    set %Kirin _SH          ;110 - 93
    set %unicorn _SC        ;110 - 93
    gosub getlist
    gosub fellows
    set %zerofellows #FOLLOWERS
    set %jrnl #jindex
    return
    
    sub getlist
    gosub savechecker
    chooseskill anim
    set %AnTam #skill
    chooseskill anil
    set %AnLore #skill
    chooseskill mage
    set %Magery #skill
    if ( %AnTam < 500 ) || ( %AnLore < 330 ) || ( %Magery < 860 )
    {
     set %Antam %antam / 10
     set %anlore %anlore / 10
     set %magery %magery / 10
     display ok I cannot use this script!
      + I have some lack in one or more skill.
      + $I have (I need):
      + $$ #spc #spc #spc Animal Taming %Antam (50)
      + $ #spc #spc #spc  Animal Lore %anlore (33)
      + $ #spc #spc #spc  Magery %magery (86)
      + $$(your script will be halted)
     halt
    }
    if ( %AnTam > 499 ) && ( %AnLore > 329 )
    {
     gosub getrunes PolarBear
     if #RESULT
      set %list %polarbear
     else
      set %PB #false
    }
    if ( %AnTam > 799 ) && ( %AnLore > 629 )
    {
     gosub getrunes WhiteWolf
     if #RESULT
      set %list %list , %whitewolf
     else
      set %WW #false
    }
    if ( %AnTam > 1099 ) && ( %AnLore > 929 )
    {
     gosub getrunes KirinUnicorn
     if #RESULT
     {
      if #sex = 1
       set %list %list , %unicorn
      else
       set %list %list , %kirin
     }
     else
      set %KU #false
    }
    if %list = 0
    {
     display ok Seriously, how can I tame even only a pet
     + $if you don't give me their locations?
     + $$(your script will be halted)
     halt
    }
    gosub getrunes Zoo
    return
    
    sub getrunes
    gosub savechecker
    event SysMessage Target %1 rune
    event SysMessage (press ESC to cancel)
    set #targCurs 1
    targLoop1:
    if #targCurs = 1
    {
     wait 3
     goto targLoop1
    }
    set %LTARGETID #LTARGETID
    set #LTARGETID 0
    finditem %LTARGETID C_ , #BACKPACKID
    if #FINDTYPE = QWL
     set %rune . %1 %LTARGETID
    else
    {
     if %1 = Zoo
     {
      display ok I can't do that... give me a Zoo rune!
      + $(script halted)
      halt
     }
     else
     {
      event sysmessage As you wish, I won't look for %1
      return #false
     }
    }
    return #true
    
    sub fellows
    if #FOLLOWERS > 0
    {
     display yesnocancel it's better if I don't have any follower with me,
     + $should I pause the script and let you to stall it/them?
     + $$(with 'NO' it'll check for any old collectable pet and it'll GIVE IT AWAY)
     + $('CANCEL' will halt the script)
     if #DISPRES = yes
     {
      display ok The script is now in pause,
      + $start it again when ready
      pause
     }
     if #DISPRES = no
      gosub flush
     if #DISPRES = cancel
      halt
    }
    return
    
    ;****************************************************************************************************
    ;***********sub save*********************************************************************************
    ;****************************************************************************************************
    sub savechecker
    while #jindex > %jrnl
    {
     set %jrnl %jrnl + 1
     scanjournal %jrnl
     if The_world_will_save_in in #journal || WORLD_IS_SAVING in #journal || CLEANING in #journal
     {
      event sysmessage Saving!!!
      gosub saveDetected
     }
    }
    set %jrnl #jindex
    return
    
    sub saveDetected
    set %******* #SCNT
    set %jrnl #jindex
    ReLoop:
    while #jindex > %jrnl
    {
     set %jrnl %jrnl + 1
     scanjournal %jrnl
     if WORLD_SAVE_COMPLETE in #journal || Resources_cleaned in #journal
     {
      event sysmessage Done!!!
      return
     }
    }
    wait 1
    if #SCNT > ( %******* + 60 )
    {
     event sysmessage offrun
     return
    }
    goto ReLoop
    return
    
    ;****************************************************************************************************
    ;***********end sub save*****************************************************************************
    ;****************************************************************************************************
    
    sub move
    gosub savechecker
    if %1 = KirinUnicorn
    {
     if #FOLLOWERS > 3
     {
      set %flushing #true
      return
     }
    }
    if %1 = PolarBear || %1 = WhiteWolf
    {
     if #FOLLOWERS > 4
     {
      set %flushing #true
      return
     }
    }
    set %gatecheck #true
    set %rune %rune . %1
    finditem %rune C_ , #BACKPACKID
    if #FINDCNT > 0
    {
     event sysmessage Check Move: gate for %1
     set #LTARGETID #FINDID
     set #LTARGETKIND 1
     set %posX #CHARPOSX
     set %posY #CHARPOSY
     if #FOLLOWERS > %zerofellows
     {
      while %gatecheck
      {
       event macro 15 51
       target 3s
       event macro 22
       wait 2s
       finditem OTF G_0
       if #FINDCNT > 0
       {
        set #LOBJECTID #FINDID
        event macro 17
        set %gatecheck #false
       }
       wait 2s
      }
      while ( %posX = #CHARPOSX ) && ( %posY = #CHARPOSY )
      {
       if ( #CONTSIZE = 420_280 )
       {
        set %x #CONTPOSX + 25
        set %y #CONTPOSY + 260
        click %x %y
        wait 3
       }
       wait 1s
      }
      finditem OTF G_0
      if #FINDCNT > 0
      {
       set #LTARGETID #FINDID
       event macro 15 33
       target 3s
       event macro 22
       wait 2s
      }
     }
     else
     {
      while ( %posX = #CHARPOSX ) && ( %posY = #CHARPOSY )
      {
       event macro 15 31
       target 3s
       event macro 22
       wait 1s
      }
     }
    }
    else
    {
     event sysmessage No Rune for %1
     return
    }
    if %1 <> zoo
     gosub findpet
    return
    
    ;*****************************
    ;*****************************
    
    sub findpet
    gosub savechecker
    set %closestd 20
    set %closest N/A
    finditem %list G_20
    if #findcnt > 0
    {
     for #FINDINDEX 1 #FINDCNT
     {
      if #FINDREP = 2
       ignoreitem #FINDID
     }
    }
    finditem %list G_20
    if #FINDCNT > 0
    {
     if #FINDTYPE = SH || #FINDTYPE = SC
      set %checkFellows #FOLLOWERS + 2
     else
      set %checkFellows #FOLLOWERS + 1
     if %checkFellows > 5
     {
      set %flushing #true
      return
     }
     for #FINDINDEX 1 #FINDCNT
     {
      if #FINDREP = 1 || #FINDREP = 3
      {
       set %pet . #FINDINDEX #FINDID
       set %distpet . #FINDINDEX #FINDDIST
      }
     }
     for %n 1 #FINDCNT
     {
      if %distpet . %n < %closestd
      {
       set %closestd %distpet . %n
       set %closest %pet . %n
      }
     }
     finditem %closest G_20
     if #FINDCNT > 0
     {
      move #FINDX #FINDY 0 10s
      gosub taming ;#FINDTYPE
     }
     else
     {
      event sysmessage check find: pet lost
      gosub findpet
     }
    }
    else
    {
     event sysmessage check find: no pet
     return
    }
    gosub findpet
    return
    
    sub taming
    set %followers #FOLLOWERS
    set %JournIndex #JINDEX
    while %followers = #FOLLOWERS
    {
     gosub savechecker
     set #LTARGETID %closest
     set #LTARGETKIND 1
     event macro 13 35
     target 3s
     event macro 22
     gosub following %closest
     wait 1s
    }
    event macro 1 0 All Follow Me
    wait 1s
    return
    
    sub following
    while 1 <> 0
    {
     finditem %1 G_20
     if #FINDCNT = 0
      gosub findpet
     if #FINDDIST > 1
      move #FINDX #FINDY 0 10s
     while #JINDEX > %JournIndex
     {
      scanjournal %JournIndex
      if IT_SEEMS_TO_ACCEPT_ in #JOURNAL
      {
       set %JournIndex #JINDEX
       return
      }
      if YOU_FAIL_TO_TAME_ in #JOURNAL
      {
       set %JournIndex #JINDEX
       return
      }
      set %JournIndex %JournIndex + 1
     }
     return
    }
    return
    
    sub flush
    ignoreitem reset
    gosub move Zoo
    finditem VUVABND G_15
    if #FINDCNT = 1
     move 4538 1376 0 10s
    else
    {
     event sysmessage WAITING 30sec... THEN I'LL TRY TO GET TO THE ZOO
     wait 30s
     gosub move zoo
    }
    wait 3
    finditem %list G_15
    if #FINDCNT > 0
    {
     for #FINDINDEX 1 #FINDCNT
     {
      if #FINDREP = 2
       gosub transfer #FINDID #FINDTYPE
      else
       ignoreitem #FINDID
     }
    }
    else
    {
     event sysmessage FATAL ERROR: can't find any pet
     halt
    }
    set %flushing #false
    event sysmessage POINTS: %points
    return
    
    sub transfer
    if #CHARPOSX <> 4538 || #CHARPOSY <> 1376
     move 4538 1376 0 10s
    set #LTARGETID VUVABND
    set #LTARGETKIND 1
    exevent Popup %1 9
    target 3s
    event macro 22
    wait 1s
    while ( #CONTSIZE <> 270_120 )
     wait 1s
    if ( #CONTSIZE = 270_120 )
    {
     set %x #CONTPOSX + 30
     set %y #CONTPOSY + 100
     click %x %y
    }
    else
    {
     event sysmessage FATAL ERROR: transfer gump
     halt
    }
    if %2 = SC || %2 = SH
     set %points %points + 250
    if %2 = VF
     set %points %points + 45
    if %2 = ZD || %2 = GE
     set %points %points + 30
    sleep 1500
    return
    sigpic

    Commenta


    • #3
      Edito
      Visto che coi nuovi Gump non funziona c'è da apportare una modifica

      nella sub transfer al posto di:

      codice:
      exevent Popup %1 9
      mettete

      codice:
      exevent Popup %1
      wait 5
      set %clickx #contposx + 50
      set %clicky #contposy + 163
      click %clickx %clicky
      Ultima modifica di Aramon; 01-12-2014, 14:16.
      Discord: Fex#2112

      sigpic
      Zio Fex [TMG] Mago Negromante Arcanista Elfo Pazzo
      FeXTeR [TMG] Sworder Negromante Samurai Ammazzatutti
      Nevaria [TMG] Paladina Tamer Maga Arcanista
      ToDo LoCo [TMG] Carpenter Bowyer Fabbro Tailor Worker Criminale
      Ghiro [TMG] Tinker Cook Golem Collector
      Mogur [TMG] Tamer Disco Spellweaver
      AnnibalSmith [TMG] Thief

      Commenta

      Sto operando...
      X