[EasyUO - REQ] Come chiamare una rail

Comprimi
X
 
  • Ora
  • Visualizza
Elimina tutto
nuovi messaggi
  • Traif1502
    Friend Member
    • Sep 2005
    • 6226

    #1

    [EasyUO - REQ] Come chiamare una rail

    Salve a tutti, mi servirebbe un'informazioncina.. Se io ho una rail in un file di testo (creata con CEOAutoRailWriter 1.3a), come faccio a dire al mio script di seguire gli spot scritti in quella rail e ad ogni spot eseguire una determinata azione? Mi spiego meglio.. Facciamo caso che la mia rail sia:

    set %endspot 3
    set %X1 2039
    set %Y1 1316
    set %Z1 -84
    set %X2 2046
    set %Y2 1314
    set %Z2 -88
    set %X3 2053
    set %Y3 1321
    set %Z3 -90


    Come faccio a dire al mio script di far camminare il pg, di arrivare a 2039 1316 e fare una cosa, poi continuare a camminare e arrivato a 2046 1314 rifare quella cosa, poi ricamminare e arrivato a 2053 1321 rifare quella cosa? Grazie mille


    EDIT: ah anche un'altra cosa.. Se ad esempio io sto facendo uno script che raccolga reagenti a terra, come faccio a dire allo script che, oltre a fermarsi raggiunto ogni spot a controllare se ci sono i reagenti, una volta raccolto un reagente prima di ricominciare a camminare cerchi altri reagenti?
    Ultima modifica di Traif1502; 29-05-2008, 12:05.
    ICQ 716489911
    Discord Traif#4427

  • bob8x
    Senior Member
    • May 2004
    • 488

    #2
    Beh se la rail l'hai fatta col ceo rail writer allora dovresti usare il ceo rail runner, che volendo verifica alcune variabili mettendo in pausa la rail (mi viene in mente uber tamer che stoppava la rail appena trovava un animale da tamare) sinceramente di più non ti so dire dato che non l'ho mai usato...

    Altrimenti potresti gestire in maniera più grezza la strada da percorrere mettendo un event patchfind sulle coordinate del tile e poi un ciclo while che aspetti finchè non arriva su quelle coordinate...

    Oppure usare altre sub fatte da terzi per i movimenti :P

    Commenta

    • Traif1502
      Friend Member
      • Sep 2005
      • 6226

      #3
      Originariamente inviato da bob8x
      Beh se la rail l'hai fatta col ceo rail writer allora dovresti usare il ceo rail runner, che volendo verifica alcune variabili mettendo in pausa la rail (mi viene in mente uber tamer che stoppava la rail appena trovava un animale da tamare) sinceramente di più non ti so dire dato che non l'ho mai usato...

      Altrimenti potresti gestire in maniera più grezza la strada da percorrere mettendo un event patchfind sulle coordinate del tile e poi un ciclo while che aspetti finchè non arriva su quelle coordinate...

      Oppure usare altre sub fatte da terzi per i movimenti :P
      Però il Raziel Gathering usa queste rail e funziona senza il ceo runner.. Sbaglio?
      ICQ 716489911
      Discord Traif#4427

      Commenta

      • antonio.gl
        Super Member
        • Feb 2006
        • 1150

        #4
        codice:
        call rail.txt
        for %i 1 %endspot
        {
          set %xpos %x . %i
          set %ypos %y . %i
          event pathfind %x %y
          while #charposx <> %x || #charposy <> %y
            wait 1
          gosub eseguiAzione
        }
        
        sub eseguiAzione 
          msg Sto facendo qualcosa. $
        return
        ICQ 222293462


        Commenta

        • Traif1502
          Friend Member
          • Sep 2005
          • 6226

          #5
          codice:
          sub eseguiazione
          finditem %reags G_5
          if #findkind <> -1
          {
          exevent drag #findid #findstack
          wait 10
          exevent dropc #backpackid
          wait 20
          }
          return
          Come faccio a dirgli di cercare altri reagenti prima di "tornare"?
          ICQ 716489911
          Discord Traif#4427

          Commenta

          • morhua
            Super Member
            • Sep 2007
            • 1077

            #6
            codice:
            sub eseguiazione
            [COLOR="red"][B]Inizio:[/B][/COLOR]
            finditem %reags G_5
            if #findkind <> -1
            {
            exevent drag #findid #findstack
            wait 10
            exevent dropc #backpackid
            wait 20
            [COLOR="Red"][B]goto Inizio[/B][/COLOR]
            }
            return
            Non sono molto bravo a scriptare, ma credo che così dovrebbe andare. Naturalmente la variabile %reags deve contenere tutti i type dei reagenti che ti interessano.

            Vota per UODreams:
            uoshards.it joinuo.com gtop100.com gamesites200.com xtremetop100.com

            Commenta

            • Traif1502
              Friend Member
              • Sep 2005
              • 6226

              #7
              Originariamente inviato da morhua
              codice:
              sub eseguiazione
              [COLOR="red"][B]Inizio:[/B][/COLOR]
              finditem %reags G_5
              if #findkind <> -1
              {
              exevent drag #findid #findstack
              wait 10
              exevent dropc #backpackid
              wait 20
              [COLOR="Red"][B]goto Inizio[/B][/COLOR]
              }
              return
              Non sono molto bravo a scriptare, ma credo che così dovrebbe andare. Naturalmente la variabile %reags deve contenere tutti i type dei reagenti che ti interessano.
              ok è la stessa cosa che avevo pensato io.. grazie
              ICQ 716489911
              Discord Traif#4427

              Commenta

              • antonio.gl
                Super Member
                • Feb 2006
                • 1150

                #8
                E' perfetto, però 5 tiles sono troppi per raccogliere. Devi prima farlo avvicinare.
                ICQ 222293462


                Commenta

                • Traif1502
                  Friend Member
                  • Sep 2005
                  • 6226

                  #9
                  Si si ho già messo il finddist e il move, quello l'ho scritto solo come esempio ^^
                  Grazie mille
                  ICQ 716489911
                  Discord Traif#4427

                  Commenta

                  Sto operando...