Newsgroup: it.comp.appl.macromedia
Titolo: [FLA4] play inverso

sto realizzando un'interfaccia utente in flash per un sito
avevo avuto una bella idea per fare un menu interattivo, ma mi serve che
onMouseOver un MC si riproduce al contrario (naturalmente su un'altra zona
sensibile c'è un'azione che lo fa riprodurre in senso giusto)
avevo pensato a farne 2, e che quando doveva girare nel senso contrario si
nascondeva quello 'dritto' e con telltarget -> play girava quello inverso,
ma l'utente può spostare il mouse dall'area in qualunque momento, e mettiamo
il caso che il movie 'dritto' era al frame 7 quando l'utente ha tolto il
mouse, passando il mouse sull'area che fa andare il MC al contrario, quello
partirebbe dal frame 1, e mancherebbe quell'omogeneità
forse lo potrei fare con telltarget e goto previous (o next) frame, ma
mantenendo il mouse sopra l'area l'azione viene ripetuta piùvolte? e poi non
andrebbe velocissimo? (non si può inserire una pausa tra un'azione e
l'altra?
grazie in anticipo

Allora, potresti usare una cosa del genere... Inserisci uno stop su ogni
keyframe dell'animazione che vuoi controllare (nominiamola per comodità
"pippo").
Crei poi un piccolo MC di soli 2 Keyframe, sul primo inserisci
If (_level0:flag = 1)
      Begin Tell Target ("/pippo")
            Go to Previous Frame
            Play
      End Tell Target
Else
      Begin Tell Target ("/pippo")
            Go to Next Frame
            Play
      End Tell Target
End If
e sul secondo un Go to and Play (1).
(MC da controllare, MC che lo controlla e pulsante vanno sullo stesso
livello, in questo esempio).
Poi sul rollover del pulsante imposti la variabile flag ad 1 e sul rollout
la riporti a 0
On (Roll Over)
      Set Variable: "flag" = 1
End On
On (Roll Out)
      Set Variable: "flag" = 0
End On
Ora avresti il problema che l'animazione al contrario si fermerebbe al
ritorno sul suo primo keyframe. Per risolvere ciò devi creare un keyframe di
controllo anche all'interno del MC "pippo". Questo keyframe sarà il primo
(l'animazione partirà dal secondo) e conterrà
If (_level0:flag = 1)
      Go to and Stop ("fine")
Else
      Go to and Stop ("inizio")
End If
Stop
dove "inizio" è la label che assegnerai al secondo keyframe (dove appunto
parte il tutto) e "fine" quella che assegnerai al keyframe dove termina
l'animazione. Subito dopo questo ultimo keyframe, uno contenente un Go to
and Stop(1) per rendere fluido il loop del filmato.
http://www.digiartstudio.com/NG/reverse_frame/reverse.html
 e vedi con i tuoi
occhi il risultato.
Ciao e buon Natale,
-Cyber-

ehi, grazie Cyber! credevo che non mi rispondeva più nessuno....
però c'è un piccolo problema: non è proprio quello che volevo fare quello
che hai fatto tu...
quello che serviva a me è il MC (ad esempio l'oggetto 3d) che è fermo, e due
pulsanti, uno chiamato avanti e uno indietro, e al rollover fanno girare
l'oggetto 3d (il MC) nelò senso giusto o nel senso contrario
grazie lo stesso, e magari se riesci a trovarmi una soluzione mi mandi il
file FLA ???
ti ringrazio di nuovo
Begin Tell Target("/Federiko")
  Ciao Cyber!!!  8-))
End Tell Target

Il file sorgente non te lo mando, ti basta perdere 5 minuti sopra al codice
che ti ho postato per riadattarlo alla tua soluzione. Solo cosě poi sarai in
grado di muoverti da solo... :-)
La soluzione ce l'hai sotto gli occhi, pensaci un attimino...
Buone feste,
-Cyber-

ok, ci proverò....
per fare invece qualcosa di più complesso in stile monocrafts (che più
sposti il mouse verso dx per esempio, più il mc va veloce) come posso fare??
devo leggere ogni volta la posizione del mouse?
e per leggere la posizione del mouse è giusto il mio ragionamento?:
faccio un MC vuoto e gli do instance name = "posizione"
sul primo key frame del movie metto start drag x quel MC
e con getproperty leggo _y e _x ?? è giusto?
grazie di nuovo e ciao