Visualizzazione dei risultati da 1 a 6 su 6

Visualizzazione discussione

  1. #1

    Menu che ruota, AIUTOOO!

    Salve,
    ho un problema sul quale sbatto la testa da stamattina...
    Devo realizzare un menu composto da una ruota con dei pulsanti (vedi foto). Al passaggio del mouse sopra uno qualunque dei pulsanti, la ruota deve ruotare

    (trascinando con se i pulsanti) fino a quando il pulsante selezionato non si trovi in un determinato punto. Inoltre, una volta che il mouse passa sopra un

    pulsante, la ruota deve continuare a girare finchè non raggiunge il punto esatto, anche se (durante il tragitto) il puntatore del mouse si sposta su un altro

    pulsante. Per fare in modo che la ruota girando trascini con se i pulsanti, ho messo ruota e pulsanti sullo stesso livello, in modo che il ruotare di uno

    implichi anche il ruotare dell'altro e viceversa. Dopodichè ho selezionato il primo pulsante in alto, e gli ho associato questo codice (riporto anche dei

    commenti che spiegano passo passo lo script):

    ************************************************** ***
    codice:
    on (rollOver) {
    	_root.ruota._rotation = _root.ruota._rotation;
    
    	/* Al passaggio del puntatore sul pulsante viene verificata l'inclinazione della clip "ruota". */ 	
    if (_root.ruota._rotation<>70.9983215332031) {
    		arrivo = false;
    	
    }/* Se l'inclinazione non è 70.9983215332031 (se, cioè, il primo pulsante in alto non è allineato con la riga 
    	nera dello sfondo) la variabile "arrivo" assume il valore "false". */
    
    	if (arrivo == false) {
    		
    /* Consideriamo il caso che la variabile sia "falsa". */
     
    		if (_root.ruota._rotation<70.9983215332031) {
    			_root.ruota._rotation = _root.ruota._rotation+2;
    
    /* Se la clip "ruota" è inclinata più a sinistra rispetto alla posizione desiderata,viene ruotata di 2 
    gradi verso destra. */ 		
    } else if (_root.ruota._rotation>70.9983215332031) {
    			_root.ruota._rotation = _root.ruota._rotation-2;
    			
    /* Se, al contrario, è inclinata più a destra verrà ruotata verso sinistra. */ 
    		}
    		if (_root.ruota._rotation>68 && _root.ruota._rotation<72) {
    			_root.ruota._rotation = 70.9983215332031;
    		
    }/* Considerando che sommando sempre 2 ad un numero la cui parte decimale non è 9983215332031, è impossibile 
    ottenere come risultato la cui parte decimale sia quella, qualsiasi valore compreso tra 68 e 72,verrà 
    considerato come 70.9983215332031. */ 	
    } else if (_root.ruota._rotation == 70.9983215332031) {
    		_root.ruota._rotation = _root.ruota._rotation;
    		arrivo = true;
    	}
    		
    /* Se l'inclinazione della clip "ruota" coincide con il valore desiderato, la variabile "arrivo" assume il 
    valore "true", e la clip "ruota" non subisce nessuna ulteriore inclinazione. */ }
    ************************************************** ********

    Il risultato che ottengo è che al passaggio del mouse sopra il pulsante, la ruota si inclina soltanto di un grado. Per farla inclinare di un altro grado devo

    nuovamente portare il puntatore prima fuori e poi sopra il pulsante. Per inclinarla di trenta gradi, devo fare trenta volta avanti e indietro con il mouse...

    Qualcuno mi sa indicare dove sbaglio???

    PS: Spero di essere stato chiaro, e vi prego di perdonare miei eventuali erroracci nello script, ma mi affaccio da poco alla programmazione in Flash e non

    sono ancora una cima...
    Grazie a tutti...
    Immagini allegate Immagini allegate

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.