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

Discussione: movimento movie clip

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929

    movimento movie clip

    ciao a tutti,

    ho movie clip istanziato img e vorrei che si muovesse a destra e sinistra alla pressione dei tasti direzionali della tastiera ma dovrebbe muoversi a destra o a sinistra all'infinito,
    come posso fare?

    grazie


  2. #2
    Qualcosa del genere

    "Clip" è un movie nella root

    codice:
    onClipEvent(keyDown){
    	if (Key.isDown(Key.RIGHT)){
    		this.onEnterFrame = function(){
    			_root.clip._x+=20			   
    		}
    	}
    	if (Key.isDown(Key.LEFT)){
    		this.onEnterFrame = function(){
    			_root.clip._x-=20			   
    		}   
    	}	
    }
    Quando vuoi farmarlo ti basta

    codice:
    delete _root.clip.onEnterFrame

  3. #3
    metti un controllo sugli assi x e y

    if (mc._x <= tua dimensione && mc._x){ comandi }

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    io userei preferibilmente un evento preesistente per la classe Key, con un listener... così eviti anche di inserire un mc sullo stage solo per questa azione....

    codice:
    var o:Object = new Object();
    o.onKeyDown = function(){
    	if (Key.isDown(Key.RIGHT)){
    		_root.clip._x+=20			   
    	} else if (Key.isDown(Key.LEFT)){
    		_root.clip._x-=20			   
    	}	
    }
    Key.addListener(o);

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    codice:
    onClipEvent(keyDown){
    	if (Key.isDown(Key.RIGHT)){
    		this.onEnterFrame = function(){
    			this._x-=20			   
    		}
    	}
    	if (Key.isDown(Key.LEFT)){
    		this.onEnterFrame = function(){
    			this._x+=20			   
    		}   
    	}	
    }
    onClipEvent(keyUp){
    	delete this.onEnterFrame	
    }
    cosi si muove ma non capisco come farla muovere all'infinito, in pratica si dovrebbe ripetere sempre....

  6. #6
    Si muove all'infinito infatti...
    Forse vuoi farlo rientrare nello stage dalla parte opposta quando esce da un lato?

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    esatto!!!

  8. #8
    E' abbastanza diverso da quello che chiedevi ^^

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    Originariamente inviato da and80
    io userei preferibilmente un evento preesistente per la classe Key, con un listener... così eviti anche di inserire un mc sullo stage solo per questa azione....

    codice:
    var o:Object = new Object();
    o.onKeyDown = function(){
    	if (Key.isDown(Key.RIGHT)){
    		_root.clip._x+=20			   
    	} else if (Key.isDown(Key.LEFT)){
    		_root.clip._x-=20			   
    	}	
    }
    Key.addListener(o);
    scusami and80 non mi è molto chiaro.... come evito di mettere un mc, ho provato anche la tua soluzione solo che è un pò scattosa... grazie mille!

  10. #10
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da Rossella_75
    scusami and80 non mi è molto chiaro.... come evito di mettere un mc, ho provato anche la tua soluzione solo che è un pò scattosa... grazie mille!
    la "mia" soluzione è legata al framerate del filmato, più è veloce e meno è scattoso il movimento

    per quanto riguarda il clip... nulla, è solo un'abitudine mia di pensiero, di solito quando uso enterFrame creo sempre un movieclip vuoto che mi faccia da animatore in modo da poterlo eliminare quando non mi serve più, di solito preferisco strade alternative all'utilizzo dell'enterFrame...

    nel tuo caso in effetti ti basta applicare lo script direttamente al clip che vuoi muovere...

    comunque anche io avevo capito la stessa cosa di Stan, è un po' diversa la cosa...

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.