Nicht mehr ganz neu hier
topf.onPress = function() {
punkte = 0;
Mouse.hide();
topf._x = _root._xmouse;
topf.onMouseMove = function() {
this._x = _root._xmouse;
};
_root.createEmptyMovieClip("eier", 1);
eier.wieviel = 20;
eier.nr = 1;
eier.anzahl = 4;
eier.wahrsch = 5;
eier.tempo = 8;
eier.objekte = [];
eier.onEnterFrame = function() {
if (this.nr<=this.wieviel) {
this.zufall = Math.ceil(Math.random()*this.wahrsch);
if (this.zufall == 1) {
var welches = Math.ceil(Math.random()*eier.anzahl);
eier.attachMovie("mc_ei"+welches, "ei"+eier.nr+"_"+welches, eier.nr);
var obj = eier["ei"+eier.nr+"_"+welches];
obj._x = Math.ceil(Math.random()*699)+49;
obj.tempo = Math.ceil(Math.random()*eier.tempo)+5;
this.objekte.push(obj);
eier.nr++;
}
}
for (e in this.objekte) {
this.objekte[e]._y += this.objekte[e].tempo;
if (this.objekte[e].hitTest(topf)) {
var multi = this.objekte[e]._name.substring(this.objekte[e]._name.length-1);
punkte += Number(multi)*50;
o_punkte.text = punkte + " Punkte";
this.objekte[e].removeMovieClip();
this.objekte.splice(e, 1);
if (this.objekte.length<1) {
trace("fertisch");
delete topf.onMouseMove;
Mouse.show();
}
}
if (this.objekte[e]._y>600) {
var multi = this.objekte[e]._name.substring(this.objekte[e]._name.length-1);
punkte -= Number(multi)*20;
o_punkte.text = punkte + " Punkte";
this.objekte[e].removeMovieClip();
this.objekte.splice(e, 1);
if (this.objekte.length<1) {
trace("fertisch");
delete topf.onMouseMove;
Mouse.show();
}
}
}
};
};
Zuerst wollen wir den Topf mit der Maus steuern. Der Einfachheit halber verwenden wir die gesamte Bildschirmbreite als Spielfeld.
31. Erstellen Sie in Frame 1 der Ebene ?actions? folgendes Skript:
topf.onPress = function(){
Mouse.hide();
topf._x = _root._xmouse;
topf.onMouseMove = function() {
this._x = _root._xmouse;
};
}
Sobald man auf den Topf klickt, wird die Maus unsichtbar geschaltet und der Topf auf die x-Position der Maus gesetzt. Die y-Position verändern wir nicht, der Topf wird also lediglich in horizontaler Richtung bewegt. Dann weisen wir dem Topf ein MouseMove-Ereignis zu, das dafür sorgt, daß bei jeder Mausbewegung seine x-Position auf die x-Position der Maus gesetzt wird.
Für die Eier richten wir einen eigenen MovieClip als Behälter ein. Das bietet größere Flexibilität als wenn wir die Objekte direkt auf _root einfügen würden. Wollen wir z.B. die Position aller Eier auf einmal ändern, müssen wir nur den Behälter verschieben. Außerdem können wir alle Variablen, die sich auf das Fallen beziehen, diesem Behälter zuweisen. Werden Sie nicht mehr benötigt, löschen wir einfach den Behälter.
32. Schreiben Sie daher innerhalb des onPress-Ereignisses vor der letzten, schließenden Klammer:
_root.createEmptyMovieClip("eier", 1);
eier.wieviel = 20;
eier.nr = 1;
eier.anzahl = 4;
eier.wahrsch = 5;
eier.tempo = 8;
Zunächst wird ein leerer MovieClip namens ?eier? als Behälter für alle Objekte erzeugt. Die Variable wieviel legt die Gesamtanzahl der Eier fest, während anzahl definiert, weiviele verschiedene Eier es gibt. Sie erinnern sich: wir hatten vier verschiedenfarbige MovieClips für die Eier erstellt. Nr legt die für attachMovie notwendige Tiefe fest, auf der die jeweiligen Eier eingeblendet werden. Wir verwenden sie gleichzeitig auch für die Instanznamen, um sicherzustellen, daß jedes Objekt einen eindeutigen Instanznamen besitzt. Mit der Variablen wahrsch wird das Einblenden an einen Zufallswert gebunden. Die letzte Variable tempo wird verwendet, um das Mindesttempo für die Fallgeschwindigkeit zu definieren.
Da die gesamte Aktion durch den Mausklick auf den Topf ? alternativ durch einen eigens erstellten Startbutton ? ausgelöst wird, befinden sich diese und auch alle nachfolgenden Anweisungen innerhalb des onPress-Ereignisses.
Ein einsames Ei läßt sich einfach einblenden.
33. Fügen Sie nach den Variablendefinitionen folgende Zeilen ein:
var welches = Math.ceil(Math.random()*eier.anzahl);
eier.attachMovie("mc_ei"+welches, "ei"+eier.nr+"_"+welches, eier.nr);
var obj = eier["ei"+eier.nr+"_"+welches];
obj._x = Math.ceil(Math.random()*699)+49;
Wenn Sie testen, wird ein Ei an einer zufälligen Position am oberen Bildschirmrand eingeblendet.
Nicht mehr ganz neu hier
Willkommen auf PSD-Tutorials.de
In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.
Nächster neuer Gratisinhalt
Statistik des Forums