Mc soll fertig laufen

georgie1

Grünschnabel
hi
hab folgendes Problem:
ich möchte gerne ein kleines Design bei meinem Spiel machen, dass so aussieht das auf den Startbutton Meteore regnen und wenn sie ihn berühren explodieren und dann wieder von oben beginnen. Das Problem ist dabei die Explosion, welche mit einem hitTest nicht ´geht da der Form tween solange beim ersten Frame bleibt bis er den Button nicht mehr berührt und dass erst wird die Animation fertiggestellt und der Meteor wieder nach oben gesetzt. Schaut ziemlich blöd aus wenn die Explosion vollständig über den Button fährt und erst nach ihm vergeht ^^
wüßte wer Rat?
mfg
 
Hi,

ich muss zugeben, diesen Satz:
Das Problem ist dabei die Explosion, welche mit einem hitTest nicht ´geht da der Form tween solange beim ersten Frame bleibt bis er den Button nicht mehr berührt und dass erst wird die Animation fertiggestellt und der Meteor wieder nach oben gesetzt.
Nicht verstanden zu haben. :confused:

Bitte probiers noch einmal etwas anschaulicher (verwende vielleicht ab und zu ein Komma) oder poste am besten Deine .fla.

Gruß
.
 
hi ^^
also ich habe dir nur das erste Bild angehängt
So soll es klappen:
Der Meteor fliegt runter, kracht auf den GO Button, explodiert und fängt wieder von vorne an
Er fliegt runter, kracht auf den GO Button macht keine Explosion ^^
vorher hat der hitTest schon geklappt nur dauerte Frame 3 vom Meteor so lange an, wie der Meteor brauchte um durch den GO Button zu fliegen und spielte erst dann die explosion fertig (im letzten Frame ist die Funktion zum zurücksetztender y Achse)
alles klar? ^^
mfg
 

Anhänge

Hi,

Der Meteor fliegt runter, kracht auf den GO Button, explodiert und fängt wieder von vorne an
Er fliegt runter, kracht auf den GO Button macht keine Explosion
Diese beiden Sätze widersprechen sich in meinen Augen. ... Ich nehme an, der erste zeigt den Soll-Wert, der zweite dagegen den Ist-Wert an. Bitte mache solche Dinge in Deinen Postings klar, dann gibts weniger Verwirrungen.

@Topic: Dein Hauptproblem ist das
Code:
gotoAndPlay(1);
im zweiten Frame des Meteors. Mit Code auf der Objektinstanz kannst Du diese Schleife nicht durchbrechen.

Zudem darfst Du natürlich nur einmal auf die Kollision reagieren, ansonsten würdest Du so lange in Frame 3 stehenbleiben, bis sich beide Objekte nicht mehr überlappen. Dazu käme eine Hilfsvariable (_hit) in Frage, die anzeigt, ob der Meteor in einem Durchlauf schon die Erde getroffen hat:
Code:
onClipEvent(load) {
	this._hit = false;
	this.by = this._y;
}

onClipEvent(enterFrame) {
	this._y=_y+5;
	if(this.hitTest(_root.GO) && !this._hit) {
		this.gotoAndPlay(3);
		this._hit = true;
	}
}

Nun solltest Du das "gotoAndPlay(1)" im zweiten Frame durch ein "stop()" ersetzen.

(Mir ist übrigens nicht klar, waum sich in Frame 1 des Meteors noch einmal ein komplettes Objekt befindet, welches ebenfalls über eine Explosions-Animation verfügt. Deine Art der Schachtelung ist - gelinde gesagt - gewöhnungsbedürftig. ;))

Du willst ja, dass der Meteor nach jeder Explosion wieder von oben herunterfällt. Dazu habe ich im obigen Codeausschnitt schon eine Variable (by) angelegt, in der die Startposition festgehalten wird.

Nach Ablauf der Animation (also im letzten Frame des Meteors) musst Du nun dafür sorgen, dass der Zyklus von neuem beginnt:
Code:
this._y = this.by;

this._hit = false;

gotoAndPlay(1);

Übrigens: Übe Dich bitte noch einmal in anständigem Einrücken - so etwas:
Code:
onClipEvent(enterFrame) {

this._y=_y+5;
if(this.hitTest(_root.GO)) {
this.gotoAndPlay(3);
}

}
ist kaum zu entziffern.

Generell solltest Du auf Code verzichten, der auf Intanzen (alles, was mit "on(ereignis) {" beginnt) liegt, und deine Scripte ausschließlich auf Zeitleisten notieren. Dies dient nicht nur der Übersichtlichkeit, sondern vermeidet Kollisionen zwischen beiden Notierungsformen.

Gruß
.
 
kk, thx
andere Probleme: ^^
1) kann ich on(press) {....} auch in Movieclips schreiben, so dass es funktionier?
2) wenn ich auf meine Buttons ein Textfeld ziehe, um etwas darauf zu schreiben, reagiert die on(press) Funktion wegen des Textfeldes nicht mehr. Gibt es da irgendeine Lösung, wie ich es hinbringe das sie reagiern; oder das ich die Wörter irgendwie anders schreibe, so dass die on(press) Funktion wieder geht
mfg
 
hi
thx klappt ^^
hab aber noch ne frage: ^^
bin gerade beim ertsellen von einem Menü und hab neben den Buttons ein Textfeld, wo wenn man mit der Maus über die Buttons fährt ne Erklärung kommt (z.B.: bei dem Start Button: Dirket ins Spiel). Das klappt mit der on(rollOver) Funktion prima, nur geht es auch das ich Bilder unter die Beschreibungen lade
mfg
 
hi
sieh dir das Menü mal an
habe probiert das As richtig einzurücken ^^
mein Problem ist, ich will wenn man z.B.: über den Button Hilfe fährt, dass dann die Erklärung und darunter das Bild kommt, dass ich dir in mein Menü gespeichert habe. Nur weiß ich nicht wie das As dafür aussehen muss
mfg
 

Anhänge

Zurück