Director: keyPressed

Di: swan | 26/09/2020 17:02:48
Ciao, ho inserito questo codice ma ho un problema:
on exitFrame me
if (keypressed("ciao") then go to frame 219
end
Il problema è che salta al frame 219 appena digito "c" e non "ciao". Qualcuno mi può aiutare? Grazie!

Risposte


Realizzare la verifica di una stringa di testo. Se la verifica è soddisfatta esegue un comando.

Key in italiano significa tasto, quindi è logico pensare che il Keypressed sia studiato per verificare se un determinato tasto viene premuto. Non è quindi lo strumento che devi utilizzare per verificare una stringa di testo.
O almeno non in questo modo.
Potresti risolvere verificando una stringa di un Text Member, quindi occorrono un Text member editabile e un IF.
Il seguente codice di esempio puoi associarlo come Movie Script o come Frame Script, a seconda delle esigenze:
if member("Password").text= "001design.it" then
go to frame 219
member("Password").text=""
end if
-- Password è il nome del Text member del Cast.
-- member("Password").text="" serve per cancellare il contenuto del Text Member.
La prima cosa che ti occorre però è un Text Member editabile.
Scegli lo strumento Text dai Tools di Director e disegnalo sullo Stage. Per renderlo editabile vai al Property Inspector tenendo selezionato il Text Member e poi nella sezione Text scegli la voce del menu: Editable.
Ricordati di rinominare il Text member con il nome da te scelto, in questo caso: Password.
Come sempre esistono anche altre soluzioni possibili al problema.

Di: Pablito | 26/09/2020 17:02:48


Ti ringrazio per la risposta, ma il mio problema consiste nel non utilizzare un Text Member, infatti dovrebbe essere una funzione più o meno nascosta all'interno del movie.

Di: swan | 26/09/2020 17:02:48


Ciao ivan, ti consiglio di usare una lista.
Le liste risolvono sempre tutti i problemi.
Fammi sapere se ci riesci.
Ciao ciao da Francesco.

Di: francesco | 26/09/2020 17:02:48


Una lista? Ok, devo capire cosa sono però!
Ti farò sapere! Grazie.

Di: swan | 26/09/2020 17:02:48