Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Caricare variabili da file TXT esterno ed utilizzarle in funzioni di actionscript 2.0

    Buonasera,
    è da poco che ho iniziato con il flash ed in particolar modo con gli actionscript pertanto mi scuso in anticipo se su alcune cose sarò un po' rigido ma voglio comprenderle bene.

    Seguendo questa guida sono riuscito a capire in parte come importare in flash variabili da un file TXT esterno ma non sono riuscito a capire come riutilizzarle.

    Io ho un filmato con 3 livelli:

    • Sfondo
    • Campi
    • ActionScript


    Il primo contiene lo sfondo del filmato quindi diciamo è vuoto, il secondo contiene i vari campi (input, movie clip vuote, ecc), l'ultimo contiene tutti i codici actionscript.

    Ora io vorrei caricare in un movieclip vuoto un immagine e per farlo utilizzo questa riga di codice:

    Codice PHP:
    movie_clip-vuota_uno.loadMovie("immagine1.jpg"); 
    Fin qui tutto bene, ora volendo prelevare dal file TXT l'immagine ho utilizzato questo codice:

    Codice PHP:
    System.useCodepage true;

    dati = new LoadVars();
    dati.path this;
    dati.onLoad = function(success)
    {
    if(
    success){
    this.path.theimg this.immagine;
    }}; 
    dati.load("flash_config.txt");

    movie_clip-vuota_uno.loadMovie(_root.theimg); 
    Ovviamente questo codice non mi funziona, pertanto richiedo a voi che siete più esperti un po' di aiuto in merito.

    Il file flash_config.txt è strutturato in questo preciso modo:

    codice:
    null=Flash Config - mia@mail.ext
    &immagine=nome_immagine.jpg
    &testo=testo uno
    &sponge=testo due
    Attendo un vostro aiuto, nel frattempo vi ringrazio.

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Ci sono due cose, la prima è che i dati esterni vengono caricati con loadvars in maniera asincrona e perciò possono essere usati solo all'interno della funzione che gestisce l'evento che sancisce il caricamento del file esterno (onLoad).
    La seconda cosa è che nei file esterni conviene chiudere ogni stringa con & perché altrimenti rimangono degli spazi.

    codice:
    &immagine=nome_immagine.jpg&testo=testo uno&sponge=testo due&
    Il codice AS:

    Codice PHP:
    System.useCodepage true

    dati = new LoadVars(); 
    dati.path this
    dati.onLoad = function(success

    if(
    success){ 
    this.path.theimg this.immagine;
    movie_clip-vuota_uno.loadMovie(_root.theimg); 
    }};  
    dati.load("flash_config.txt"); 
    PS. Quello non è AS2, comunque ti consiglio, se stai iniziando a studiare ora, di passare direttamente ad AS3.

  3. #3
    Non ho ancora provato perchè ora non ho tempo, proverò dopo. Ma non c'è modo di mantenere il file di TXT così come l'ho postato io?

    C'è modo di ovviare i problemi che causa quella struttura TXT?

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Potresti eliminare il carattere "spazio" passandolo per uno "split&join" prima di usarlo:

    System.useCodepage = true;

    codice:
    dati = new LoadVars();
    dati.path = this;  
    dati.onLoad = function(success)  
    {  
    if(success){  
    this.path.theimg = this.immagine.split(" ").join("");
    movie_clip-vuota_uno.loadMovie(_root.theimg);  
    }};   
    dati.load("flash_config.txt");
    Questa operazione serve a eliminare tutti i caratteri "spazio" dalla stringa che gli viene passata.

  5. #5
    Non so se il codice funziona o meno perchè nonostante i vari tentativi non sono riuscito a visualizzare risultati diversi, ho pensato fosse la cache ma nemmeno tramite alcuni "trucchetti" con PHP sono riusciti a risolvere questo problema e carica sempre le stesse immagini.

    Il mio nuovo codice è:

    Codice PHP:
    // Accetta Lettere Accentate
    System.useCodepage true;

    // Caricamento Dati
    dati = new LoadVars();
    dati.path this;
    dati.onLoad = function(success)
    {
    if(
    success){
    this.path.ia this.scudo_a.split(" ").join("");
    this.path.ib this.scudo_b.split(" ").join("");

    // Assegnazione Scudetti
    logoc_uno.loadMovie(_root.ia);
    logoc_due.loadMovie(_root.ib);
    }}; 
    dati.load("flashconfig.txt"); 
    Vorrei, come già capito, che caricasse l'immagine che il file TXT dice tramite variabile. E vorrei inoltre evitare la cache delle immagini. Io ho provato a cambiare nome, a riesportare mille volte il filmato e tutto ma non funziona. Ti prego mi daresti nuovamente una mano?

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    719
    Ma sei sicuro di non aver lasciato il codice precedente?
    Comunque prova questo:

    Codice PHP:

    this
    .createEmptyMovieClip("logoc_due"this.getNextHighestDepth());
    this.createEmptyMovieClip("logoc_due"this.getNextHighestDepth());

    loadVariables("flashconfig.txt"this);

    logoc_uno.loadMovie(_root.img1); 
    logoc_due.loadMovie(_root.img2); 
    E' molto semplice e credo che funzioni. Se usi nel file txt le virgolette (") per scrivere le variabili non dovresti avere problemi. Se c'è qualche errore usa i famosi split e join ma assegnandoli a le variabili e sostituendo gli spazi del txt con "+" o cose del genere. Se gli spazi sono tra variabile e variabile, pero, non so come aiutarti.

    Spero di essere stato utile, CIAO!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.