Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    semplice movimento da sx vesro dx ma con script

    come da oggetto ho un clip sullo stage, vorrei tramite uno script fa muovere questo aggetto da sinistra verso destra sfruttando perxò l'effetto di andamento, generato dallo script...

    potete aiutarmi?

    questo per ottenere un efetto fluidità che solo tramite script si ottinene...

    mi sono spiegato bene?

  2. #2
    codice:
    function tempo(){
    	t = setInterval(muovi, 20);
    }
    
    function muovi(){
    	oggetto._x = oggetto._x + 1;
    }
    tempo();
    una cosa così???

  3. #3
    +/-

    così risulta molto scattoso, cio'è sostanzialmente io
    vorrei:

    dire alla funzione di prendere le coordinate x del mio oggetto sullo stage, farle arrivare a +50 quando arrivi a _x+50 fermati, ma la frenata la voglio fare dolcemeente...

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    336
    e così?

    codice:
    onClipEvent (load) {
    	posx=_x;
    }
    
    onClipEvent (enterFrame) {
    	if(_x<posx+50)
    	{
    		vel=10;
    	}
    	else
    	{
    		if(vel>0)
    		{
    			vel-=1;
    		}
    	}
    	
    	_x+=vel;
    }
    metti il codice nell'istanza del tuo clip

  5. #5
    ciao, stavo cercando appunto questo aiuto.

    volevo chiedervi un ulteriore suggerimento:

    io vorrei far muovere un pulsante alo stesso modo. e' possibile secondo voi oppure solo con i MovieClip si riesce??

    ho provato cosi ma non funziona in modo fluido ma va subito alla posizione impostata:

    codice:
    on (release) {
    	posy=_root.menu2.btn2._y-50
    	while (posy<_root.menu2.btn2._y) {
    	_root.menu2.btn2._y -= 1
    
    	}
    }
    ho provato a mettere onClipEvent(mouseDown) al posto di onClipEvent(enterFrame) ma quando clicco si muove solo un po e non finisce tutto il movimento.

    allora ho ovviato mettendo il mio movieclip su due frame.
    sul primo ho:

    codice:
    on (release) {
    	_root.menu2.gotoAndPlay(2)
    }
    e poi sul secondo frame ho il codice postato da Jumpychan.

    si puo' fare solo cosi o anche con i pulsanti oppure su un frame solo?

    grazie per l'aiuto.

    ciao

  6. #6
    se hai Flash Player 7:

    codice:
    MovieClip.prototype.slowSetProperty = function(prop, newVal, b) {
    	var bb, prevVal;
    	bb = (b == undefined) ? 5 : b;
    	var prevVal = this[prop];
    	if (this["slowSPController"+prop] != undefined) {
    		this["slowSPController"+prop].removeMovieClip();
    	}
    	this.createEmptyMovieClip("slowSPController"+prop, this.getNextHighestDepth());
    	this["slowSPController"+prop].onEnterFrame = function() {
    		this._parent[prop] += (newVal-this._parent[prop])/bb;
    		if (Math.abs(this._parent[prop]-prevVal)<.01) {
    			this._parent[prop] = newVal;
    			this.removeMovieClip();
    		} else {
    			prevVal = this._parent[prop];
    		}
    	};
    };

    esempio:

    codice:
    clip.slowSetProperty("_x",50);
    il terzo parametro è opzionale e serve a regolare la velocità.
    [Il mio sito V2]
    ___________________
    I.m.The.Magic.Man

  7. #7
    Originariamente inviato da Jumpychan

    codice:
    onClipEvent (load) {
    	posx=_x;
    }
    
    onClipEvent (enterFrame) {
    	if(_x<posx+50)
    	{
    		vel=10;
    	}
    	else
    	{
    		if(vel>0)
    		{
    			vel-=1;
    		}
    	}
    	
    	_x+=vel;
    }
    grazie lennynero per l'aiuto ma il tuo codice e' molto complesso per le mie conoscenze.

    ho comunque usato il codice sopra quotato per realizzare il mio filmato e funziona bene con anche l'effetto rallentamento.

    Ora volevo chiedere un ulteriore aiuto: quando vel arriva a 0 non sarebbe meglio mettere un istruzione che blocca il loop (forse loop non e' corretto cmq entra sempre in enterFrame giusto?) oppure non c'e' sovraccarico inutile per la CPU??
    immagino che cmq il controllo dell'IF lo faccia sempre solo che a schermo non si vede niente perche vel e' uguale a 0.

    mi sbaglio?

    io il codice l'ho inserito dentro all'istanza del mio MC

    grazie ciao

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.