+ Rispondi alla Discussione
Risultati da 1 a 30 di 30

Oggetti condizioni e spostamenti

Ultimo Messaggio di gossipnotizie il:
  1. #1
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35

    Oggetti condizioni e spostamenti

    Ciao a tutti,

    io ho un quesito di questo tipo

    devo realizzare una carta geografica della lombardia

    vorrei che l'utente sposasse dei quadrati con dentro i nomi delle città lombarde posizionate in un angolo a parte
    io devo mettere ognuno di questi quadrati dentro la cartina geografica della lombardia

    come posso fare???

    è un progetto che sto realizzando per i bambini di scuola

    grazie

  2. #2
    User L'avatar di Pietro Pirrone
    Data Registrazione
    Oct 2015
    Località
    Roma
    Messaggi
    53
    Segui Pietro Pirrone su Twitter Aggiungi Pietro Pirrone su Google+ Aggiungi Pietro Pirrone su Linkedin
    Se vuoi usare Flash ho trovato un video che forse potrebbe interessarti.
    Cerca su Google o su Youtube "Creating a Drag & Drop Game in Adobe Flash"


  3. #3
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    ciao

    provato a vedere il video..

    utile fino ad un certo punto...

    perchè se la regione che io metto è sbagliata non dovrebbe rimanere li, ma tornare indietro...in quel caso, come posso mettere la condizione???

    io avrei un esempio da me realizzato da inserire per farlo vedere come faccio????

    in questo comando ad esempio

    rosa.addEventListener(MouseEvent.MOUSE_DOWN, fl_ClickToDrag_3);


    function fl_ClickToDrag_3(event:MouseEvent):void
    {
    rosa.startDrag();
    }


    stage.addEventListener(MouseEvent.MOUSE_UP, fl_ReleaseToDrop_3);


    function fl_ReleaseToDrop_3(event:MouseEvent):void
    {
    rosa.stopDrag();
    }

    come faccio a dire che se è giusto rosa rimane dov'è mentre se è sbagliato deve tornare indietro???

    Grazie

  4. #4
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    Ciao, supponiamo che movieclip rosa abbia coordinate iniziali x=50 e y=50, lo devi trascinare in un punto preciso dello stage, questo punto preciso deve essere a sua volta un movieclip, nel tuo caso sulla cartina può essere un movieclip con alpha=0 quindi invisibile che chiamo quadro, a questo punto bisogna rilevare se rosa quando viene rilasciato il pulsante del mouse è venuto in contatto con quadro, questo metodo si chiama hitTestObject, se rosa si trova su quadro grazie ad una condizione if ne assume le stesse coordinate, altrimenti ritorna alle coordinate iniziali, ecco il codice:
    Codice:
    rosa.x=50
    rosa.y=50
    rosa.addEventListener(MouseEvent.MOUSE_DOWN, fl_ClickToDrag_3);
    
    
    function fl_ClickToDrag_3(event:MouseEvent):void
    {
    rosa.startDrag();
    }
    
    
    stage.addEventListener(MouseEvent.MOUSE_UP, fl_ReleaseToDrop_3);
    
    
    function fl_ReleaseToDrop_3(event:MouseEvent):void
    {
    rosa.stopDrag();
    if(rosa.hitTestObject(quadro)){rosa.x=quadro.x,rosa.y=quadro.y}
    else{rosa.x=50,rosa.y=50}
         
    }

  5. #5
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Ciao, grazie della risposta

    quindi, la mia cartina dove voglio posizionare gli oggetti lo trasformo in un movie clip giusto???

    ok per x e y, ma alpha=0 come lo imposto???

    io come inizio di rosa è x 24,60 e y 269

    scusa se ti faccio queste domande ma è la prima volta che mi occupo dei trascinamenti....

  6. #6
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    Se ho capito bene quello che vuoi realizzare la cartina non occorre che sia un movieclip, può essere una bitmap o un vettoriale perchè è solo uno sfondo, tu posizioni la cartina nel livello 0 come sfondo, ne livello 1 metti un movieclip che puo avere la forma di un rettangolo con alpha=0 ad esempio su Pavia o Milano e sul livello 2 i movieclip col nome delle città.
    per impostare alpha=0
    Codice:
    nomeIstanza.aplha=0

  7. #7
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    ciao, quindi se ho capito bene devo:

    importare dentro lo stage cartina.gif al livello 0

    dopo mi creo livello 1 e metto un cerchio sopra alla città es: Milano che lo convertirò in moviclip e chiamerò milano

    nel livello 2 a questo punto mi creo un altro cerchio ma con dentro il nome della città milano...questo lo convertirò in moviclip chiamandolo rosa

    e nel'action mettero questo codice





    milano.alpha=0rosa.x=24.60rosa.y=269.00rosa.addEve ntListener(MouseEvent.MOUSE_DOWN, fl_ClickToDrag_3);function fl_ClickToDrag_3(event:MouseEvent):void{rosa.start Drag();}stage.addEventListener(MouseEvent.MOUSE_UP , fl_ReleaseToDrop_3);function fl_ReleaseToDrop_3(event:MouseEvent):void{rosa.sto pDrag();if(rosa.hitTestObject(quadro)){rosa.x=quad ro.x,rosa.y=quadro.y}else{rosa.x=24.60,rosa.y=269} }giusto????

  8. #8
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Ops??!!! il codice si è unito tutto...

    scusa come faccio a fartelo vedere normale???

  9. #9
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Codice:
    milano.alpha=0
    rosa.x=24.60
    rosa.y=269.00
    rosa.addEventListener(MouseEvent.MOUSE_DOWN, fl_ClickToDrag_3);
    
    
    function fl_ClickToDrag_3(event:MouseEvent):void
    {
    rosa.startDrag();
    }
    
    
    stage.addEventListener(MouseEvent.MOUSE_UP, fl_ReleaseToDrop_3);
    
    
    function fl_ReleaseToDrop_3(event:MouseEvent):void
    {
    rosa.stopDrag();
    if(rosa.hitTestObject(quadro)){rosa.x=quadro.x,rosa.y=quadro.y}
    else{rosa.x=24.60,rosa.y=269.00}
         
    }

  10. #10
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    Il codice va scritto dentro i tag code: aperta parentesi quadra scrivi code e chiudi, scrivi il codice, apri quadra scrivi /code e chiudi.

  11. #11
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    Be no scusa a qusto punto la stringa:
    Codice:
    if(rosa.hitTestObject(quadro)){rosa.x=quadro.x,rosa.y=quadro.y}
    devi modificarla così
    Codice:
    if(rosa.hitTestObject(milano)){rosa.x=milano.x,rosa.y=milano.y}
    rosa intercetterà il movieclip milano giusto?
    Ultima modifica di Nhatan; 12-11-15 alle 10:56

  12. #12
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Quindi metterò

    Codice:
    if(rosa.hitTestObject(milano)){rosa.x=milano.x,rosa.y=milano.y}
    rosa intercetterà il movieclip milano giusto?[/QUOTE]

    si..

    l'altra parte di codice in cui settavo milano era giusto, vero???

  13. #13
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    Si mi sembra giusto non ti resta che testare.

  14. #14
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Stasera, provo, in quanto adesso non ho Flash a portata...

    Grazie

    Ti faro sapere

  15. #15
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762

  16. #16
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    mi da errori

    Scene 1, Layer 'Layer 3', Frame 1, Line 3 1120: Access of undefined property rosa.
    Scene 1, Layer 'Layer 3', Frame 1, Line 2 1120: Access of undefined property rosa.
    Scene 1, Layer 'Layer 3', Frame 1, Line 1 1120: Access of undefined property milano.
    Scene 1, Layer 'Layer 3', Frame 1, Line 20 1120: Access of undefined property rosa.
    Scene 1, Layer 'Layer 3', Frame 1, Line 20 1120: Access of undefined property rosa.
    Scene 1, Layer 'Layer 3', Frame 1, Line 19 1120: Access of undefined property milano.
    Scene 1, Layer 'Layer 3', Frame 1, Line 19 1120: Access of undefined property rosa.
    Scene 1, Layer 'Layer 3', Frame 1, Line 19 1120: Access of undefined property milano.
    Scene 1, Layer 'Layer 3', Frame 1, Line 19 1120: Access of undefined property rosa.
    Scene 1, Layer 'Layer 3', Frame 1, Line 19 1120: Access of undefined property milano.
    Scene 1, Layer 'Layer 3', Frame 1, Line 19 1120: Access of undefined property rosa.
    Scene 1, Layer 'Layer 3', Frame 1, Line 18 1120: Access of undefined property rosa.
    Scene 1, Layer 'Layer 3', Frame 1, Line 9 1120: Access of undefined property rosa.

    non capisco per quale ragione

    Codice:
    milano.alpha=0
    rosa.x=17
    rosa.y=170
    rosa.addEventListener(MouseEvent.MOUSE_DOWN, fl_ClickToDrag_3);
    
    
    
    
    function fl_ClickToDrag_3(event:MouseEvent):void
    {
    rosa.startDrag();
    }
    
    
    
    
    stage.addEventListener(MouseEvent.MOUSE_UP, fl_ReleaseToDrop_3);
    
    
    
    
    function fl_ReleaseToDrop_3(event:MouseEvent):void
    {
    rosa.stopDrag();
    if(rosa.hitTestObject(milano)){rosa.x=milano.x,rosa.y=milano.y}
    else{rosa.x=17,rosa.y=170}

  17. #17
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    ho il livello 0 in cui ho importato la foto
    nel livello 1 ho creato il quadrato che ho convertito in movie clip chiamandolo Milano
    nel livello 2 ho creato un altro quadrato che che ho convertito in movie clip chiamandolo rosa e poi ho inserito quell'azione...

    ma niente mi da quella lista di errori

    cosa sbaglio??

    ho pensato che fosse perche avevo scritto Milano in minuscolo e non in maiuscolo ma non è cosi...

  18. #18
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    Ma hai messo il nome istanza nell'apposito campo della finestra proprietà di Flash?

  19. #19
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Eh no

    adesso funziona...

    nel caso in cui l'alunno indovini la posizione far comparire anche una scritta in un rettangolo a parte con scritto "DATO ERRATO" come posso fare????

  20. #20
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    E' semplice, fai un movieclip, che avrà il primo frame, senza scritta e con uno stop() mentre ne secondo frame la scritta dato errato, poi lo mandi in play nella condizione if.

  21. #21
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Non riesco a capire...

    io ho realizzato quest'esempio...

    missbenessere.net/elicottero

    una volta che l'elicottero si forma dovrebbe comparire la scritta "BRAVO" come faccio???

    non riesco a montarlo....
    Ultima modifica di Nhatan; 16-11-15 alle 00:31

  22. #22
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    Quà ci sono due elemeti da considerare, devi creare una funzione che contenga la condizione che quando entrambi gli elementi sono alle coordinate giuste parta il movieclip bravo.
    Codice:
    cabina.x=50
    cabina.y=50
    coda.x=150
    coda.y=50
    
    cabina.addEventListener(MouseEvent.MOUSE_DOWN, fl_ClickToDrag_3);
    
    
    function fl_ClickToDrag_3(event:MouseEvent):void
    {
    cabina.startDrag();
    }
    
    
    stage.addEventListener(MouseEvent.MOUSE_UP, fl_ReleaseToDrop_3);
    
    
    function fl_ReleaseToDrop_3(event:MouseEvent):void
    {
    cabina.stopDrag();
    if(cabina.hitTestObject(cabina2)){cabina.x=cabina2.x,cabina.y=cabina2.y
    bravo()
    }
    else{cabina.x=50,cabina.y=50}
         
    }
    
    
    coda.addEventListener(MouseEvent.MOUSE_DOWN, fl_ClickToDrag_4);
    
    
    function fl_ClickToDrag_4(event:MouseEvent):void
    {
    coda.startDrag();
    }
    
    
    stage.addEventListener(MouseEvent.MOUSE_UP, fl_ReleaseToDrop_4);
    
    
    function fl_ReleaseToDrop_4(event:MouseEvent):void
    {
    coda.stopDrag();
    if(coda.hitTestObject(coda2)){coda.x=coda2.x,coda.y=coda2.y
    bravo()
    }
    else{coda.x=150,coda.y=50}
         
    }
    //funzione che fa parrtire mc_bravo se entrambi gli elemeti sono in posizione
    function bravo()
    {
        if(cabina.x==cabina2.x&&coda.x==coda2.x){mc_bravo.gotoAndPlay(2)}
    }
    Attenzione ho istanziato cabina e coda gli elementi da trascinare e cabina2 e coda2 i movieclip invisibili di controllo.

  23. #23
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Quindi, io nel livello 3, vado nel secondo frame creando una scritta "BRAVO". in seguito la trasformo in moviclip chiamandolo mc_bravo giusto????
    Ultima modifica di Nhatan; 16-11-15 alle 00:30

  24. #24
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Scusa, ho provato ad andare nel frame 2 del Layer 3. ho messo insert keyframe inserito il testo "bravo", quest'ultimo convertito in moviclip mc_bravo ed anche come istanza mc_bravo

    ma mi loopa il filmato continua ad andare in loop. non dovrebbe rimanere fermo???
    Ultima modifica di Nhatan; 16-11-15 alle 00:30

  25. #25
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    No, mc_bravo lo devi mettere sempre nel primo frame, il gotoAndPlay(2) si riferisce alla linea temporale interna di mc_bravo.
    lo devi fare così: fai la scritta BRAVO e la trasformi in movieclip, ci fai doppio click ed entri dentro bravo, ora trascini il fotogramma chiave sul frame2, nel frame uno vuoto metti uno stop(), ora allunghi la linea temporale di mc_bravo in conseguenza della durata della scritta. Dopo di che ritorni sulla time line principale premendo sulla freccetta azzurra che si trova sotto i nomi dei livelli.
    Ultima modifica di Nhatan; 13-11-15 alle 09:12

  26. #26
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Ciao, adesso, non va in loop, funziona lo spostamento degli oggetti ma non compare la scritta

    non so cosa sbaglio...posso inviarti il file o te lo metto online come nell'esempio???
    Ultima modifica di Nhatan; 16-11-15 alle 00:30

  27. #27
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Grazie funziona ))
    Ultima modifica di Nhatan; 16-11-15 alle 00:30

  28. #28
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    Come faccio a mettere risolto nella discussione?
    Ultima modifica di Nhatan; 16-11-15 alle 00:29

  29. #29
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,762
    Non è previsto.

  30. #30
    User
    Data Registrazione
    Apr 2011
    Località
    milano
    Messaggi
    35
    ah ok....grazie...

+ Rispondi alla Discussione

^ Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
  • Il codice BB è Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] è Attivato
  • Il codice [VIDEO] è Attivato
  • Il codice HTML è Disattivato
  • Trackbacks Attivato
  • Pingback Attivato
  • Refback Attivato

SEO by vBSEO 3.6.0 PL2 ©2011, Crawlability, Inc.