| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #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 |
| | |
| | #2 (permalink) |
| Farbe ist Luxus 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 |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Nov 2002 Ort: Schweiz
Beiträge: 24
|
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. |
| | |
| | #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! |
| | |
| | #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 |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |