localToGlobal und hitTest und ein problem

chenara

Grünschnabel
Hi an alle
also ich such seid tagen im Internet nach einer lösung... find aber nicht wirklich etwas das mir hilft.
Ich möchte eine spiel.swf in eine andere hineinladen. soweit so gut das bekomm ich noch auf die reihe. dann habe ich bemerkt das ich die localToGlobal methode benutzen muss damit mein Hittest auch weiterhin funktioniert. hab ich gemacht, aber da muss der fehler liegen weil sich meine figur nicht mehr bewegt sobald diese swf in die andere geladen wurde.
Ich find es schwer zu erklären und häng mal die zip ran.
Danke an jeden der sich damit abmüht.
Grüße Chenara
 

Anhänge

  • test2.zip
    21,9 KB · Aufrufe: 10
Morschä,

also ich habe mir deine FLA angeschaut und hoffe auch, dass ich dich richtig verstanden habe.

Es liegt definitiv an deiner Key.isDown Abfrage unter "kontrolle". Wenn die Taste nicht mehr gedrückt wird, kommt dieses Aussliden zum tragen. If-Anweisungen in Flash sind ziemlich tricky. Man muß ihnen immer eine ja/nein Abfrage mitgeben,
PHP:
abfrage = 0;
if ((bla == blabla) && (abfage == 0)) {
mache das;
abfrage = 1;
}
if ((bla == blablabla) && (abfage == 1)) {
mache jenes;
abfage = 0;
}
da sie sonst die ganze Zeit ausgeführt werden, also immer aktiv bleiben, im Gegensatz zu PHP, wo einmal über sie drüber gelesen wird. In wie weit das bei dir nun der Fall war, konnte ich nicht ganz herausfinden, dazu ist es zu komplex, als das ich mich da schnell reinfinden kann.

In deinem Script habe ich jetzt mal die letzte ELSE Abfrage unter "if(kontrolle)" (ab Zeile 92ff) rausgenommen und mit:
PHP:
else if (!Key.isDown(Key.LEFT)) {
xspeed = 0;
player.gotoAndStop("stand");
     }
else if (!Key.isDown(Key.RIGHT)) {
xspeed = 0;
player.gotoAndStop("stand");
     }
}
ergänzt.
Es funktioniert jetzt, dein Player hört nicht auf, sich steuern zu lassen, jedoch fehlt deine Ausslide Animation nun. Vielleicht kriegst du sie ja anhand dessen mit dieser Version wieder eingepflegt.

Ich hoffe ich konnte dir etwas weiterhelfen.

VG
benchmark
 
Zurück