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

Discussione: Impostare velocità MC

  1. #1

    Impostare velocità MC

    Come faccio a settare la velocità di un MC tramite un pulsante?
    Mi spiego:
    Ho un mc che va da destra a sinistra(tramite motion), vorrei mettere due pulsanti, un "più" e un "meno", che fanno aumentare o diminuire la velocità del MC.
    Come posso fare?
    Grazie mille

  2. #2
    Se il movimento del tuo MC è sulla Timeline non so se si può fare, ma se il Clip lo muovi da codice ti basta che onEnterFrame gli fai aumentare lo spostamento in pixel del parametro _x (o _y se in verticale) del tuo MC
    Ho capito che quando poni una domanda e nessuno ti sa rispondere, è arrivato il momento in cui sei tu a poter dare delle risposte agli altri...

  3. #3
    ok.
    Allora ho fatto così:
    al mc ho messo questo codice:

    onClipEvent(enterframe){
    valore=1
    _root.mc._x+=valore;
    }

    e il mc si muove lentamente verso destra.
    Poi ho messo un pulsante per cercare di impostare "valore", e al pulsante ho messo questo codice:

    on (release){
    valore = valore+1;
    }

    ma non funziona... devo aver fatto qualche errore.
    Puoi dirmi in cosa ho sbagliato?
    Grazie

  4. #4
    istanzi il clip per es. mc

    sul frame questo codice

    mc.onEnterFrame = function(){
    this._x +=velocita;
    }


    setti il valore della variabile velocita
    Consulenza aziendale a 360° http://www.gruppodg.it http://www.gruppodg.it/3d
    Realizzazione siti internet, Siti Flash, Ricerca Location per bar negozi , esercizi commerciali, sviluppo pratiche e allestimento

  5. #5
    Originariamente inviato da zetaweb
    ok.
    Allora ho fatto così:
    al mc ho messo questo codice:

    onClipEvent(enterframe){
    valore=1
    _root.mc._x+=valore;
    }

    e il mc si muove lentamente verso destra.
    Poi ho messo un pulsante per cercare di impostare "valore", e al pulsante ho messo questo codice:

    on (release){
    valore = valore+1;
    }

    ma non funziona... devo aver fatto qualche errore.
    Puoi dirmi in cosa ho sbagliato?
    Grazie
    Che hai messo valore=1 dentro all'enterFrame, quindi viene impostato sempre a 1.
    O lo metti al load

    onClipEvent(load){
    valore = 1
    }

    Oppure, se hai mx o mx2004, puoi fare come dice enigma
    (ricordati di settare velocità )

  6. #6
    Grazie per gli aiuti!
    adesso sto provando con il metodo suggeritomi da enigma, e funziona.
    Però no nriesco a farlo aumentare ad ogni pressione.
    Ho messo un tasto, associato al quale ho scritto questo:

    on (release){
    velocita = velocita+1;
    }

    in teoria vorrei che ad ogni click aumenta di uno il valore precedente di velocità, ma non funziona... forse perchè inizialmente non riconosce velocità come un numero?
    Come è la sintassi corretta?

  7. #7
    setti la variabile primo frame
    velocita=1;

    poi al pulsante
    on (release) {
    velocita=velocita+1;
    }

    è corretto ma dove hai il pulsante esiste la variabile?
    Consulenza aziendale a 360° http://www.gruppodg.it http://www.gruppodg.it/3d
    Realizzazione siti internet, Siti Flash, Ricerca Location per bar negozi , esercizi commerciali, sviluppo pratiche e allestimento

  8. #8
    dovevo solo settare la variabile al primo frame!!
    Perfetto!

    Adesso però ho un altro problemino...approfitto di voi...
    arrivato ad un certo punto, ovviamente, il mc esce dallo schermo. Una volta uscito, vorrei che ricomparisse da sinistra come se fosse un loop, ma come faccio visto che non posso dare comandi sulla timeline?
    Ho pensato a qualcosa tipo:
    rilevo posizione del mc e quando arriva a tot imposto di nuovo le coordinate iniziali, ma non mi sembra così preciso... inoltre se provo a rilevare le coordinate mi restituisce sempre le coordinate iniziali e non come si modificano nel movimento...
    spero di essere stato abbastanza chiaro...
    Riuscite a darmi qualche suggerimento?
    Grazie ancora!

  9. #9
    Come sarebbe che ti da sempre quelle iniziali?

    onClipEvent(enterframe){
    valore=1
    this._x+=valore;
    trace(this._x)
    }

    Cosa ti restituisce nell'output?

  10. #10
    usa questo
    sul frame

    moviewidth = 550;
    xPos = this._x;
    velocita=1;
    pippo.onEnterFrame = function(){
    this._x +=velocita;
    if (pippo._x>moviewidth) {
    pippo._x =xPos;
    }
    }
    Consulenza aziendale a 360° http://www.gruppodg.it http://www.gruppodg.it/3d
    Realizzazione siti internet, Siti Flash, Ricerca Location per bar negozi , esercizi commerciali, sviluppo pratiche e allestimento

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.