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"); } } };

.
Rispondi quotando