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

Discussione: mouse trailer!!!

  1. #1

    mouse trailer!!!

    Ciao ragazzi... Ho un dubbio, Posso esporlo? Ci provo:
    Su un mio sito in flash ho creato (detto in parole povere) un oggetto che spostandosi è vincolato ad un "filo" che si sposta e si srotola allo spostamento del mouse, seguendone il movimento. Ora, quando entri nel sito, se clicchi sull'oggetto inizia qst'animazione ma non so, all'interno del codice che ora ti linko, cosa agGiungere per far si che, ricliccandoci sopra, si stoppi.
    Spero di essere stato chiaro. Vi linko il codice:

    Stage.scaleMode("noScale")

    // attacco il mouse dalla libreria
    _level0.attachMovie("myMouse","myMouse",100)
    myMouse._x = Stage.width/3;
    Meridian=myMouse._x
    myMouse._y = Math.floor(Stage.height/4);
    Horizon=myMouse._y
    Meridian=myMouse._x
    // creazione Filo Mouse
    _level0.createEmptyMovieClip('myline0',0);
    with(myline0){

    clear();

    lineStyle(2,0xFF0000,0xFF0000,80);
    moveTo(_level0.Meridian,0);
    lineTo(_level0.myMouse._x,_level0.myMouse._y)

    }


    //------------------------------------------------------
    // azioni per Drag
    myMouse.onPress=function(){
    _level0.myline0.muovi=true
    startDrag(this, true)
    }
    myMouse.rollover=myMouse.rolloverOutside=function( ){
    _level0.myline0.muovi=false
    stopDrag()
    }
    //------------------------------------------------------
    myline0.onEnterFrame=function(){
    if(this.muovi){
    with(this){

    clear();

    lineStyle(2,0xFF0000,0xFF0000,80);
    moveTo(_level0.Meridian,0);
    if(_level0.myMouse._y>_level0.Horizon){
    lineTo(_level0.myMouse._x,_level0.myMouse._y)
    }
    if(_level0.myMouse._y<=_level0.Horizon){
    curveTo(_level0.Meridian+30*_level0.myMouse.dir, _level0.myMouse._y/2, _level0.myMouse._x, _level0.myMouse._y);
    }

    }

    }
    }


    myMouse.onEnterFrame=function(){
    if(_level0.myline0.muovi){
    if(this._y>(_level0.Horizon)){yM = 0;}
    if(this._y<=(_level0.Horizon)){yM = this._y/2}
    xM = _level0.Meridian;

    Dx = xM - this._x;
    Dy = (yM - this._y) * -1;
    Dz = Math.sqrt(Math.pow(Dx, 2) + Math.pow(Dy, 2));
    ROTAZIONE = Math.acos(Dy / Dz) * 180 / Math.PI


    if(_level0._xmouse<_level0.Meridian){
    this.dir=+1
    this._rotation = +ROTAZIONE }
    else{
    this.dir=-1
    this._rotation = -ROTAZIONE }
    }
    }

    questo codice è sul primo fotogramma!!!
    Potete dirmi qualcosa? Grazie.
    strano

  2. #2
    Aggiungi questo codice dopo il commento //azioni per drag

    codice:
    myMouse.onRelease=myMouse.onReleaseOutside=function(){
    stopDrag();
    }
    Tra parentesi occhio al codice che comincia con myMouse.rollover...
    Tieni presente che gli eventi in as1 e as2 non prevedono quel tipo di sintassi. Così come è stato scritto non serve a nulla.

    Ciao

  3. #3
    grazie mille!!!
    Ora, in questo modo la pistola (il mio oggetto) si muove (come volevo) solo tenendo premuto il mouse, solo che, passando sui tasti, non li clicca. Devo per forza lasciare il mouse e tornare con la freccia sopra...
    strano

  4. #4
    Scusa ma non ho capito come funziona il tuo progetto
    Ci sono dei pulsanti che vuoi siano cliccabili mentre l'utente trascina il clip?

  5. #5
    no in pratica è un sito di tattoo. C'è questa pistola da tatuatore che appena entri nella home page è ferma. Se ci clicchi sopra, la pistola segue il mouse che la trascina, in ogni caso, non alla pressione del mouse, ma diventa animata perennemente. Vorrei che, ricliccandoci, si stoppi.
    strano

  6. #6
    Prova in questo modo:

    Codice PHP:
    // variabile che controlla il click
    var m:Boolean=false;

    _level0.attachMovie("myMouse","myMouse",100)
    myMouse._x Stage.width/3;
    Meridian=myMouse._x
    myMouse
    ._y Math.floor(Stage.height/4);
    Horizon=myMouse._y
    Meridian
    =myMouse._x
    // creazione Filo Mouse
    _level0.createEmptyMovieClip('myline0',0);
    with(myline0){

    clear();

    lineStyle(2,0xFF0000,0xFF0000,80);
    moveTo(_level0.Meridian,0);
    lineTo(_level0.myMouse._x,_level0.myMouse._y)

    }


    //------------------------------------------------------
    // azioni per Drag
    myMouse.onPress=function(){
    if(
    m==false){
    _level0.myline0.muovi=true;
    startDrag(thistrue);
    m=true;
    }
    else if(
    m==true){
    _level0.myline0.muovi=false;
    stopDrag();
    m=false;
    }
    }
    //------------------------------------------------------
    myline0.onEnterFrame=function(){
    if(
    this.muovi){
    with(this){

    clear();

    lineStyle(2,0xFF0000,0xFF0000,80);
    moveTo(_level0.Meridian,0);
    if(
    _level0.myMouse._y>_level0.Horizon){
    lineTo(_level0.myMouse._x,_level0.myMouse._y)
    }
    if(
    _level0.myMouse._y<=_level0.Horizon){
    curveTo(_level0.Meridian+30*_level0.myMouse.dir_level0.myMouse._y/2_level0.myMouse._x_level0.myMouse._y);
    }

    }

    }
    }


    myMouse.onEnterFrame=function(){
    if(
    _level0.myline0.muovi){
    if(
    this._y>(_level0.Horizon)){yM 0;}
    if(
    this._y<=(_level0.Horizon)){yM this._y/2}
    xM _level0.Meridian;

    Dx xM this._x;
    Dy = (yM this._y) * -1;
    Dz Math.sqrt(Math.pow(Dx2) + Math.pow(Dy2));
    ROTAZIONE Math.acos(Dy Dz) * 180 Math.PI


    if(_level0._xmouse<_level0.Meridian){
    this.dir=+1
    this
    ._rotation = +ROTAZIONE }
    else{
    this.dir=-1
    this
    ._rotation = -ROTAZIONE }
    }
    }
    fscommand("quit"); 
    Ho aggiunto una variabile booleana chiamata "m" e modificato il codice dopo il commento "azioni per Drag". In questo modo il meccanismo dovrebbe azionarsi e fermarsi ad ogni click.

  7. #7
    grazie mille per la tua disponibilità!
    Allora, io ho tentato di inserire qst codice, in pratica non si muove più, nel al clic ne al trascinamento, resta un oggetto fisso.
    In realtà, nella mia idea iniziale c'era la volontà di sostituire il mouse con qst pistola, snodabile. Ti linko il sito, così vedendolo magari ti viene intuitivo il funzionamento che vorrei dargli. Per ora nel sito è solo un elemento ludico. www.stifftattoo.com
    strano

  8. #8
    Allora... Adesso se non riesci ad ottenere lo stesso risultato, credo dipenda da una diversa struttura del tuo progetto. Altri codici che "cozzano" con questo, oppure una diversa disposizione dei filmati. Magari il tuo filmato si trova dentro un altro filmato con altre caratteristiche?

    Ti dico i passaggi che ho seguito io:

    1) ho creato un filmato da zero composto da un solo livello.

    2) ho creato una figura molto semplice che ricordava la pistola del filmato.

    3) ho convertito il disegno in un clip chiamato myMouse con nome di concatenamento myMouse.

    4) ho cancellato il clip dallo stage lasciando solo quello nella libreria.

    5) ho inserito sulla scena principale, nel primo fotogramma del filmato l'ultimo codice che ti ho postato.

    Facendo tutto da zero, con un solo filmato, ho ottenuto il comportamento che mi hai richiesto.
    Il trascinamento inizia al primo clic e si ferma solo se riclicchi sulla pistola. Di più non posso fare...

  9. #9
    ma io infatti ti ringrazio e ti dirò, sono certo che a te funzioni datosi che io sono in palla
    si in effetti, qst filmato e posto dentro un altri filmato, la cosa strana è che i passaggi da te citati, mi sembrabo identici a quelli che ho fatto io...
    strano

  10. #10
    si in effetti, qst filmato e posto dentro un altri filmato
    I passaggi che ho fatto io riguardano un solo filmato. Se provi a fare tutto con un solo filmato vedrai che funziona. Nel tuo caso, essendoci un filmato contenitore e uno esterno, evidentemente non viene letta la variabile m. Se riusciamo a fargli leggere la variabile abbiamo risolto...

    Quindi se ho ben capito, hai un filmato esterno e un filmato contenitore.
    Il filmato contenitore è quello che ha nella sua libreria la pistola? Ho capito bene?
    Il filmato esterno, a parte il codice che hai postato, cosa contiene?
    Con quale istruzione ActionScript carichi il filmato esterno?loadMovieNum()?
    Potresti postare il codice di caricamento?

    P.S.: Il sito che hai postato ha una bella musica

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.