Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: QUIZ in Flash

  1. #1

    QUIZ in Flash

    Ciao a tutti raga,

    eccomi ancora quì a ropervi le palline...

    Sto facendo un fla con un form per i quiz, di quelli con il campo input in cui inserire la risposta, un campo invisibile in cui compare la variabile associata alla risposta, che viene confrontata con il contenuto del campo input e se la risposta è corretta, si viene inviati al frame successivo con la domanda seguente.

    Mi rendo però conto che mi mancano 2 eventi importanti.
    Il primo è il counter che mi segni le risposte corrette da quelle sbagliate (in modo da poter determinare una classifica finale, magari da mettersi nell'ultimo frame).

    Il secondo e un timer che assegni un tempo per ogni risposta al termine del quale, se non viene data, la si considera come sbagliata, e si viene immessi al frame (con la domanda) successivo.

    E' complicato?

    RAY
    L'ignorante dice... Il colto confuta... Il saggio riflette.

  2. #2
    Aiutino??!!
    L'ignorante dice... Il colto confuta... Il saggio riflette.

  3. #3
    Utente di HTML.it L'avatar di ilpiubello
    Registrato dal
    May 2000
    Messaggi
    2,685
    Allora, per creare una lista delle risposte giuste, ti convience crearti un array vuoto e poi, vai ad inserire di volta in volta un elemento.
    Se tu fai il controllo sull'esattezza della risposta, basta solo che inserisci nella parte relativa alla condizione, la riga con l'aggiunta dell'elemento.
    E' un po' difficile dirti di più...

    Comunque:

    codice:
    // crei l'array vuoto
    risposte_esatte=new Array();
    codice:
    // condizione
    if(risposta=="ok"){
    // variabile di incremento aggiornata con la lunghezza dell'array
    numero=risposte_esatte.length+1;
    // indica quale risposta è giusta
    risposta_attuale="risposta numero";
    // aggiungi la risposta giusta come elemento della matrice
    risposte_esatte.push(risposta);
    // verifichi la risposta e la lunghezza dell'array
    trace(risposta+ - +risposte_esatte.length);
    }
    Questo in linea generale ma, devi comunque adattarlo alla tua esigenza.

    Per il tempo... ci penso!
    FaX

  4. #4
    Grazie più bello!


    Ci provo subito!


    RAY
    L'ignorante dice... Il colto confuta... Il saggio riflette.

  5. #5
    ...Dubbio!


    Poiché i
    L'ignorante dice... Il colto confuta... Il saggio riflette.

  6. #6
    ops....


    Dicevo...

    Dubbio!

    Ho fattro così (non metterti a ridere!)

    sulla _root nel frame in cui iniziano le domande ho messo:

    risposte_esatte=new Array();


    Nel pulsante che effettua la comparazione del campo domanda (amountOwed) con il campo risposta (amountPaid) ho apportato questa modifica, cercando di applicare il tuo suggerimento:

    on (press, keyPress "<Enter>") {
    amountPaid = Number(paid.text);
    amountOwed = Number(owed.text);
    if (amountPaid == amountOwed) {
    numero = risposte_esatte.length+1;
    risposta_attuale = "risposta_numero";
    risposte_esatte.push(risposta);
    trace(risposta+ - +risposte_esatte.length);
    } else if (isNaN(amountPaid)) {
    message.text = " Non stai inserendo un carattere numerico.";
    } else if (amountPaid < amountOwed) {
    difference = amountOwed - amountPaid;
    message.text = "L'America verra' scoperta "+difference+" anni dopo. ASINO!.";
    } else if (amountPaid>amountOwed) {
    difference = amountPaid - amountOwed;
    message.text = "L'America fu scoperta "+difference+" anni prima. ASINO!.";
    } else {
    vai._visible = 1;
    message.text = "RISPOSTA ESATTA!.";
    }
    }
    on (release) {
    message.text = "";
    }



    Con la modifica accade adesso che quando provo il filmato (CTRL+INVIO) e rispondo correttamente, si apre un pannello OUTPUT che mi segna -1, -2, -3, ecc.. ecc.. (Ci siamo quasi ma sbaglio qualcosa).

    Vorrei che il risultato delle risposte esatte venisse visualizzato in un campo di testo dinamico sempre presente nella schermata. Che istanza gli devo assegnare per visualizzare il risultato degli Array?


    RAY
    L'ignorante dice... Il colto confuta... Il saggio riflette.

  7. #7
    Utente di HTML.it L'avatar di ilpiubello
    Registrato dal
    May 2000
    Messaggi
    2,685
    Devi passare la variabile con la lunghezza dell'array con un enterFrame:

    onClipEvent(enterFrame){
    campo_testo=array.length;
    }

    Comunque, ripensandoci, tu potresti fare tutto anche senza array ma semplicemente incrementando una variabile.
    L'array, ti può essere utile se vuoi sapere anche quali risposte sono esatte.
    FaX

  8. #8
    No, no... devo poter dividere le risposte giuste da quelle sbagliate e incrementare solo il numero delle risposte giuste.

    :-)



    RAY
    L'ignorante dice... Il colto confuta... Il saggio riflette.

  9. #9
    Utente di HTML.it L'avatar di ilpiubello
    Registrato dal
    May 2000
    Messaggi
    2,685
    Comunque, va bene anche quello che ti ho dato... ma se vuoi semplificare basta che elimini l'array e che, al suo posto, inizializzi la variabile numero=0;

    poi, la incrementi nell'if:
    numero++;

    e nel campo testo, sempre con l'enterFrame scrivi il valore di numero.
    FaX

  10. #10
    Ti ringrazio molto per il tuo aiuto...

    sto cercando di adattarlo per le conoscenze di AS che ho...

    Però rimango spiazzato quando mi dici di usare l'evento enterFrame, perchè sullo stage ho solo 1 campo di testo input, uno dinamico (che ho fatto per l'array, e 3 pulsanti.... come vedi non ho nemmeno un clip...


    come gli assicio l'evento enterFrame?
    L'ignorante dice... Il colto confuta... Il saggio riflette.

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.