Einfache Kollisionsabfrage funktioniert nicht [Flash 10]
13.02.2011, 11:14
Beiträge: 61 Registriert: Dec 2010 Einfache Kollisionsabfrage funktioniert nicht
Hallo,
ich versuche mich gerade an einer Kollisionsabfrage in AS3, aber es will einfach klappen. Ich habe ein sehr vereinfachtes Beispiel, dass ich hochladen werde, bei dem per Drag and Drop ein Moviclip auf einen anderen verschoben werden kann, und sobald diese übereinandertreffen, soll eine Aktion stattfinden (im Beispiel soll zum nächsten Schlüsselbild gesprungen werden) Würde mich freuen, wenn sich jemand die Datei ansehen könnte, schon jetzt vielen Dank!Geändert von grafikuser am 13.02.11 um 11:14 Uhr
14.02.2011, 21:14 Re1 Beiträge: 924 Registriert: Jul 2008 Hallo,
speicher mal bitte als CS4, dann ist die Chance auf Hilfe größer ;-)
Grüße,
Kerstin
Wer Rechtschreibfehler findet, darf sie gerne behalten.
14.02.2011, 21:18 Re2
Beiträge: 61 Registriert: Dec 2010 Themenautor/in Oh klar, hab ich nicht dran gedacht ;-) Geändert von grafikuser am 14.02.11 um 21:18 Uhr
nicht sichtbar bei eingeloggten Mitgliedern
14.02.2011, 21:41 Re3 Beiträge: 924 Registriert: Jul 2008 Hallo,
ActionScript: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 stop ();
test.addEventListener (MouseEvent.MOUSE_DOWN, fl_ClickToDrag);
function fl_ClickToDrag(event:MouseEvent):void {
stage.addEventListener (Event.ENTER_FRAME, kollision);
test.startDrag ();
}
stage.addEventListener (MouseEvent.MOUSE_UP, fl_ReleaseToDrop);
function fl_ReleaseToDrop(event:MouseEvent):void {
stage.removeEventListener(Event.ENTER_FRAME, kollision);
test.stopDrag ();
}
function kollision(evt:Event):void {
if (test.hitTestObject(testzwei)) {
stage.removeEventListener(Event.ENTER_FRAME, kollision);
gotoAndStop (2);
}
}
Jetzt kommt allerdings noch ein Nullobjekt-Verweis, aber warum da steh ich grad selbst ein wenig auf dem Schlauch...
Grüße,
Kerstin
Edit / so funktioniert es fehlerfrei:
ActionScript: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 stop ();
var weiter:Boolean = false ;
test.addEventListener (MouseEvent.MOUSE_DOWN, fl_ClickToDrag);
function fl_ClickToDrag(event:MouseEvent):void {
stage.addEventListener (Event.ENTER_FRAME, kollision);
test.startDrag ();
}
stage.addEventListener (MouseEvent.MOUSE_UP, fl_ReleaseToDrop);
function fl_ReleaseToDrop(event:MouseEvent):void {
stage.removeEventListener(Event.ENTER_FRAME, kollision);
test.stopDrag ();
if (weiter) gotoAndStop (2);
}
function kollision(evt:Event):void {
if (test.hitTestObject(testzwei)) {
weiter = true ;
test.dispatchEvent(new MouseEvent(MouseEvent.MOUSE_UP));
}
}
Wer Rechtschreibfehler findet, darf sie gerne behalten. Geändert von Kerstin77 am 14.02.11 um 21:45 Uhr
14.02.2011, 21:54 Re4
Beiträge: 61 Registriert: Dec 2010 Themenautor/in Perfekt, vielen Dank dafür. Das Script werde ich mir morgen mal näher zu Gemüte führen ;-)
Themen
Ähnliche Beiträge zum Thema 28.02.2011 - grafikuser
20.05.2010 - Lyssander
28.03.2010 - ahOix
16.05.2010 - hermaennchen49
Flashhilfe.de
Flash Platform Tipps & Tutorials
Flash Platform
Andere Programmiersprachen
Jobangebote
Diskussionen
Flashhilfe News
Regeln & Bedingungen