Probleme mit der Kollisionsabfrage mit hitTestObject
Hallo Welt!
ich habe mich nun daran gemacht eine erste einfache Kollisionsabfrage zu erstellen und bin daran... gescheitert.
Sollzustand: Wenn der äußere Rahmen des Movieclips Player (Player hat auch seine eigene Klasse) den äußeren Rahmen von Moviclip Labyrinth berührt soll ein trace ausgegeben werden.
Ist-Zustand: KEINE Fehlermeldung aber auch keine Kollision. Player Läuf hinter dem Objekt Labyrinth ohne trace vorbei. Es verhält sich so, als sei überhaupt keine Kollisionsabfrage im Hintergrund abgelaufen.
Was ich gemacht habe: Dem Movieclip Labyrinth wurde eine eigene Klasse zugeordnet. In der Actionsscriptdatei steht folgendes:
Wo liegt mein Fehler? Soll ich die Datein irgendwo hochladen?
Ich versuche mir die Logik von AS alleine ein wenig näher zubringen aber irgendwie habe ich noch kein Auge dafür. Also bitte für Anfänger erklären.
Wäre eine Bitmapkollisonsabfrage vielleicht sinnvoll?
Denn ganz per Hand mathematisch glaube ich nicht, dass ich das hinbekomme.
du hast die sachen warscheinlich einfach auf die stage gezogen das problem du sprichst die sachen so leider nicht an du machst lediglich neue movieclips probier das ganze mal eher so
var Player:MovieClip = new MovieClip;
var Labyrinth:MovieClip = new MovieClip;
public function labyrinth():void {
trace('Labyrinth constructed');
Player = this.getChildByName("myplayer"); // myplayer muss der instanz name sein
Labyrinth = this.getChildByName("labyrinth"); // the same
erstmal vielenlieben Dank für deine Antwort. Du hast recht, ich habe die Movieclips einfach auf der Bühne erstellt.
Wennich deine Version austeste wird mir nun jedoch folgende Fehlermeldung ausgegeben, mit der ich leider nichts nafangen kann :(
1118: Implizite Umwandlung von einem Wert mit statischem Typ flash.display:DisplayObject in einen möglicherweise nicht verwandten Typ flash.display:MovieClip.
var Player:DisplayObject;
var Labyrinth:DisplayObject;
public function labyrinth():void {
trace('Labyrinth constructed');
Player = this.getChildByName("myplayer"); // myplayer muss der instanz name sein
Labyrinth = this.getChildByName("labyrinth"); // the same