Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01-08-2003, 01:30   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2002
Ort: Schweiz
Beiträge: 24
2 Packungen auf einmal, doch mehrere kommen

Ich programmiere grade ein Spielchen und da gibt es einen Endgegner im 6. Level. Der Endgegner geht auf und ab. Man ist ein Fisch und muss der Zange des Endgegners und den herabfallenden Bomben ausweichen. Es hat einen Knopf im Bild . Wenn man die Leertaste drückt und den Knopf berührt, dann sollen 2 zufällig hinplazierte Corn-Flakes Packungen von links nach rechts(wo auch der Endgegner ist) kommen. Falls eine oder beide der Corn Flakes Packungen den Endgegner trifft, werden ihm 5 oder 10 von Hundert Punkten von seiner Lebensanzeige abgezogen.

Das Problem ist, wenn ich auf den Knopf drücke, dann kommen nicht nur 2, sondern, wahrscheinlich wegen "onClipEvent(enterFrame)" sehr viele Packungen. Die kommen sich auch in den Weg mit ihrer Ebene. Gedacht ist, dass nur 2 Packungen auf einmal kommen können. Erst wenn sie den Endgegner getroffen haben, oder an ihm vorbeigeflogen sind, kann man noch mal den Knopf drücken, damit die nächsten beiden kommen,
Aber wie kann ich machen, dass nur 2 Packungen auf einmal kommen auch wenn man den Knopf nochmal drückt? Und was muss man eingeben, dass man den Knopf erst wieder drücken kann wenn die beiden Packungen am Ziel angekommen sind?

Ich hoffe ich hab es verständlich ausgedrückt !
Ciao
gorilla
GoRilLa ist offline   Mit Zitat antworten
Alt 01-08-2003, 11:18   #2 (permalink)
Farbe ist Luxus
 
Benutzerbild von ludabruda
 
Registriert seit: May 2003
Ort: Köln
Beiträge: 2.405
Hi,

ich bin jetzt nicht so der Cornflakes-Experte, werde aber versuchen, dir das anhand von Ketchup-Flaschen zu erklären

Zunächst brauchst du eine Variable, wieviele Objekte sich gleichzeig auf dem Screen befinden dürfen, sagen wir _root.maxCornflakes = 2;

Auf deinem Männchen (oder Kornflakeslöffel...) steht dann im onClipEvent(KeyDown) {
if(Key.getCode() == 32 && _root.numCornflakes < _root.maxCornflakes) {
/*
hier dein Script zum erzeugen der Cornflakes
dabei zählst du pro Cornflake den Counter _root.numCornflakes hoch
*/
}
}

Auf dem Cornflake-Objekt hast du wahrscheinlich irgendeine Art von hitTest-Routine. Sobald diese ausgelöst wird und somit eine Packung verschwindet, zählst du _root.numCornflakes einfach wieder einen runter.


Hope it helps,

Grüße
Sascha
__________________
12:15, press return
ludabruda ist offline   Mit Zitat antworten
Alt 01-08-2003, 15:47   #3 (permalink)
Neuer User
 
Registriert seit: Nov 2002
Ort: Schweiz
Beiträge: 24
Unhappy

Danke vielmals für die Hilfe, ludabruda.
Aber es geht immer noch nicht. Ich weiss nicht ob ich etwas falsch eingegeb habe, am falschen Ort oder...
Ich erkläre mal wie ichs gemacht habe.
Es ist nicht so, dass Corn Flakes Packungen kommen wenn man eine Taste drückt, sondern sie kommen wenn man über einen MovieClip fährt. Das Script zum erzeugen der Corn Flakes ist auf Bild 369 auf der Hauptzeitleiste. Auf dem Fisch steht neben den Scripten für seine Bewegung noch:

onClipEvent (enterFrame) {
if (this.hitTest(_root.button)) {
if (Key.isDown(Key.SPACE)) {
_root.gotoAndPlay(369);
_root.backgrounde.button.gotoAndPlay(2);
}
}
}

Also, wenn man über den MovieClip mit der Instanz "button" fährt und die Leertaste drückt, dann springt der Film zum Bild 369 der Hauptzeitleiste und der MovieClip, über den man fährt wird grün.


Bei Bild 369 steht dann:

if (_root.numCornflakes<_root.maxCornflakes) {
setProperty("munition", _visible, "0");
for (var f = 0; f<2; f++) {
y = random(20);
y = y*20;
duplicateMovieClip("munition", "munition"+f, f);
setProperty("munition"+f, _visible, "1");
setProperty("munition"+f, _y, 71+y);
_root.numCornflakes++;
}
_root.gotoAndPlay(2);
}

"munition" ist die Cornflakespackungen. Davon werden in der y-Achse 2 per Zufall erstellt, die nach rechts fliegen. (Das Nachrechtsfliegen habe ich mit Bewegungstween erstellt.)
Bei dem MovieClip der Cornflakes Packung, hab ich wie du gesagt hast geschrieben:
if(hitTest(_root.ziel)){
/*
hier noch ein paar andere Dinge, wie das Leben um 2 des Endgegners kürzen ...
*/
_root.numCornflakes--;
}

Wo muss ich nun die Variablen numCornflakes und maxCornflakes erstellen? Wenn ich beim 1ten Bild der Hauptzeitleiste eingebe:

var numCornflakes=0;
var maxCornflakes=2;

dann geht es nicht. Wo und wie muss ich die Variablen eingeben?
Wenn ich den Code zur erstellung der CornFlakes Packungen bei
der Instanz des Fisches eingebe, wo jetzt steht er soll zu Bild 369 gehen, falls MovieClip Berührung und Leertaste, dann geht es nicht.
Ich kann mir das nicht erklären.
Also ich wäre sehr dankbar für Hilfe.
GoRilLa ist offline   Mit Zitat antworten
Alt 02-08-2003, 00:45   #4 (permalink)
Neuer User
 
Registriert seit: Nov 2002
Ort: Schweiz
Beiträge: 24
Hallo und bald gute Nacht
Ich hab mal ein "Light" Version des Levels gemacht. Ich hab einen extra schönen Fisch, Endgegner und Background designt !
Ihr könnt euch den Anhang runterladen. Wenn der Fisch auf den Button schwimmt, dann werden per Zufall 2 Schachteln Corn Flakes generiert. Solange man auf der Schaltfläche drauf ist, gehen sie nicht nach rechts, sondern es wird immer eine andere Zufallsposition ausgewählt. Wenn man dann weg geht und während die Schachteln noch fliegen, wieder drauf geht, dann verschwinden die, die gerade noch flogen und es wird wieder links per Zufall 2 Schachteln generiert. Ich möchte aber, dass die Schachteln sofort losfliegen, wenn man auf dem Button ist und dass man erst 2 neue Schachteln schicken kann, wenn die Schachteln aus dem Film sind oder der Endgegner getroffen wird.
Also schaut es euch mal an, falls ihr Zeit habt und schreibt, was der Fehler ist. Ich wäre sehr dankbar!
Angehängte Dateien
Dateityp: zip cornflakes_spiel.zip (138 Bytes, 4x aufgerufen)
GoRilLa ist offline   Mit Zitat antworten
Alt 02-08-2003, 13:36   #5 (permalink)
Neuer User
 
Registriert seit: Nov 2002
Ort: Schweiz
Beiträge: 24
So, habs jetzt endlich geschafft!
Ich musste am anfang die Variable maxCornflakes=2; bestimmen und bei der Erstellung der 2 Corn Flakes Packungen musste noch stehen: _root.numCornflakes++;
Beim letzten Bild der Cornflakes Packung steht dann: _root.numCornflakes--;

Ich hänge noch die richtige Datei an.
Nochmal danke an ludabruda,
ohne deine Hilfe hätte ich es nicht geschafft. Musste trotzdem noch rätseln

Also tschüss
Angehängte Dateien
Dateityp: zip cornflakes_funzend.zip (12,6 KB, 10x aufgerufen)
GoRilLa ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 20:25 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele