Ich erstelle eine AIR ActionScript 3.0-Anwendung. Wenn ich es auf dem PC versuche, indem ich Command + Enter und den Film teste, funktioniert die App gut und eine Kollision zwischen zwei Filmclips funktioniert einwandfrei. Jedoch, wenn ich versuche, es zu veröffentlichen und die entsprechende apk zu erhalten, wird die App normal ausgeführt, aber keine Kollision findet statt! als ob die zwei Filmclips einfach übereinander fliegen und nichts passiert! Während auf dem PC, funktioniert es perfekt! Ich bin neu bei AS3, also kann jeder darauf hinweisen, wo ich falsch liege? Dies ist der Code, den ich für die Kollision bin mit:
hitTestObject funktioniert auf dem PC, aber nicht auf dem Android-Gerät
function ifHitAct(e:Event):void
{
for each (var obstacle in runNow.manyObs)
{
//trace("the obstacle Index Created is" , parent.getChildIndex(runNow.obstacle));
//parent.setChildIndex(runNow.obstacle ,1)
if (MC1.hitTestObject(obstacle))
{
hit.play(0);
runNow.manyObs.splice(runNow.manyObs.indexOf(obstacle), 1);
//this.removeChild(obstacle);
score++;
scoreField.text = String(score);
obstacle.alpha = 0;
}
}
}
Zuerst das Offensichtliche: Sind Sie sicher, dass dieser Event-Handler überhaupt ausgelöst wird? dann das Debugging: hast du versucht, die Begrenzungsbox aller Objekte zu verfolgen, um zu sehen, ob sie tatsächlich treffen sollte? – alebianco
@alebianco angeblich die Dinge funktionieren, da es im PC funktioniert? –
gut ... ich würde nicht annehmen. die Bühnengröße könnte sich anders verhalten und das könnte den Hittest auslösen. Ich spekuliere nur, es ist eine Weile her, dass ich so etwas gemacht habe, aber da es nicht funktioniert, würde ich damit beginnen, diese beiden Punkte zu überprüfen ... – alebianco