Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Flash Puzzle :D

  1. #1

    Flash Puzzle :D

    Ciao ragazzi,

    Voglio creare un Puzzle flash ma ho incontrato dei problemi per cui nn posso portare a termine il progetto finche non riuscirò ad avere qualche diritta su come procedere. E' per questo che mi rivolgo a tutti i Flashers .

    Pratticamente ho creato i pezzettini del puzzle che sono tutti movieClips che vengono condizionati da questa funzione che riassumo:
    -i clip(puzzles) sono messi in un ordine casuale sullo stage ed una volta trascinati al rilascio del pulsante del mouse se si trovano nel hitTestObjectdella posizione giusta le coordinate dell'oggetto hitTestObject vengono passate al puzzlePiece, se invece è diversa il puzzlePiece ritorna alla sua posizione di origine.

    DOMANDA: come faccio a far rilevare dal codice che io ho finito di posizionare tutti i puzzles al posto giusto ? Vorrei un messaggio che mi dice tipo "Congratulazioni" una volta che ogni singolo pezzettino è stato messo al suo posto...

    link:http://www.rartdesign.altervista.org/giochi.html

    Grazie in anticipo! A voi il codice:

    codice:
    function dragPiece (puzzlePiece:MovieClip, place:MovieClip, hitObj:MovieClip) {
    	puzzlePiece.addEventListener (MouseEvent.MOUSE_DOWN, pieceDown);
    	puzzlePiece.addEventListener (MouseEvent.MOUSE_UP, pieceUp);
    	
    	var initX:Number = new Number ();
    	var initY:Number = new Number ();
    	
    	initX = puzzlePiece.x;
    	initY = puzzlePiece.y;
    	
    	function pieceDown (evt2:MouseEvent):void {
    		puzzlePiece.startDrag(true);
    		
    		 puzzlePiece = evt2.target as MovieClip 
      			if(getChildIndex(puzzlePiece) > 0 ){
        			setChildIndex(puzzlePiece, 105-getChildIndex(puzzlePiece)+getChildIndex(puzzlePiece))
    				
      			}else{
       				 trace("Max profondità raggiunta")
      			}
    	}
    	
    	function pieceUp (evt:MouseEvent):void {
    		puzzlePiece.stopDrag();
    				
    		if (puzzlePiece.hitTestObject(hitObj)) {
    			puzzlePiece.x = place.x;
    			puzzlePiece.y = place.y;
    			errorWindow.gotoAndPlay("successLabel");
    		} else if (puzzlePiece.x < 470 && puzzlePiece.y < 340) {
    			puzzlePiece.x = initX;
    			puzzlePiece.y = initY;
    			errorWindow.gotoAndPlay("errorLabel");
    		} 
    	}
    	
    };
    Bill Gates disse "Bug". E windows fu.

  2. #2
    Possibile che su 33 utenti nessuno è in grado di darmi un consiglio -_-' ?
    Uffa... mi sa che sono troppo problematico con le mie domande U_U.
    Pazienza...

    Grazie comunque
    Bill Gates disse "Bug". E windows fu.

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    41
    La prima cosa che mi viene in mente... potresti creare una classe PuzzlePiece che eredita da MovieClip e che aggiunge una proprietà "isPlaced" che imposti a true una volta piazzato correttamente.... tale proprietà ti permette di verificare quanti pezzi non sono ancora piazzati ed anche evitare che vengano rimossi una volta piazzati correttamente.

    Complimenti, il risultato è molto bello

  4. #4
    Grazie mille per il complimento ma sopratutto per la risposta. E' molto preziosa per me.
    Mi metterò all'opera . . .
    Bill Gates disse "Bug". E windows fu.

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.