Inhaltsverzeichnis:
Video: Leap Motion SDK 2025
Autohändler sind heikel bei der Installation von Waffen in Ihrer Fahrt, aber aus diesem Grund werden die Leute zu Spielprogrammierern. So können Sie Ihren HTML5-Spielobjekten Raketen hinzufügen. Wenn Sie Raketen in Ihrem Minivan wollen, haben Sie Raketen (zumindest im virtuellen Minivan). Viele Videospiele beinhalten Schießen, und das ist ein ziemlich einfacher Effekt hinzuzufügen.
Projektil-Grundlagen für Ihr Spiel
Raketen, Kugeln und andere Projektile sind ziemlich einfach zu bearbeiten. Hier sind ein paar Ideen, die Sie beachten sollten:
-
Das Projektil ist ein Sprite. Erstelle ein neues Sprite für das Projektil. Sie können es zu einem einfachen Punkt machen oder eine komplette Rakete zeichnen.
-
Erstelle ein benutzerdefiniertes Sprite für die Rakete. Die Rakete braucht einige Methoden, also könntest du sie genauso gut zu einem benutzerdefinierten Sprite machen.
-
Raketen sterben, wenn sie den Bildschirm verlassen. Der einfachste Weg, dieses Verhalten zu erreichen, besteht darin, die boundAction der Rakete auf DIE zu setzen.
-
Fügen Sie eine fire () -Methode hinzu. Die Methode fire () wird aktiviert, wenn die Rakete abgefeuert wird.
-
Benutze die gleiche Rakete immer wieder. Alte Raketen sterben niemals. Sie werden einfach ausgeblendet und wiederverwendet, wenn der Benutzer erneut schießt. Wenn eine Rakete etwas trifft, verstecke die Rakete. Das macht es unsichtbar und unempfindlich gegen Kollisionen.
So starten Sie Ihre Spielraketen
Der Code für die Rakete. html ist wie viel von dem Standard-Auto-Code, den Sie gesehen haben:
Rakete. html var Spiel; var Auto; var Rakete; Funktion Car () {tCar = neues Sprite (Spiel, "Auto. Png", 50, 30); tCar. setSpeed (3); tCar. setAngle (135); tCar. checkKeys = function () {if (keysDown [K_LEFT]) {this. turnBy (-5);} if (SchlüsselDown [K_RIGHT]) {this. turnBy (5);} if (SchlüsselDown [K_SPACE]) {Rakete. fire ();}} // end checkKeys gibt tCar zurück;} // end car def Funktion Missile () {tMissile = neues Sprite (Spiel, "missile. png", 30, 20); tMissil. verbergen(); tMissil. Feuer = Funktion () { dies. Show(); tMissil. setSpeed (15); dies. setBoundAction (STERNE); dies. setPosition (Auto. x, Auto. y); dies. setAngle (Auto. getImgAngle ()); dies. setImage ("Rakete. png"); dies. setSpeed (15); } // fire beenden tMissile zurückgeben;} // Rakete beenden def Funktion init () {game = new Scene (); Auto = neues Auto (); Rakete = neue Rakete (); Spiel. start ();} // end init Funktion update () {Spiel. klar(); Auto. checkKeys (); Auto. aktualisieren(); Rakete. aktualisieren(); } // end update
Projektile machen viel Spaß beim Erstellen, und sie sind nicht sehr schwierig, wie hier gezeigt:
-
Baue ein normales Sprite, um das Projektil zu starten.
Dies ist nicht absolut notwendig, aber normalerweise wird eine Kugel von einer Waffe abgefeuert, ein Pfeil wird von einem Bogen abgefeuert und eine nukleare Bananenrakete wird aus einem beliebigen Fahrzeug abgefeuert.
-
Das Projektil wird ein eigenes Sprite sein.
Das Projektil funktioniert wie ein gewöhnliches Sprite, aber es wird dynamisch erzeugt und zerstört.
-
Füge einen Auslöser hinzu, um die Rakete abzufeuern.
Da das Auto die Rakete startet, ist der Auslösecode in der CheckKeys-Methode des Autos.
-
Legt fest, dass die Rakete standardmäßig ausgeblendet wird.
Die Rakete ist immer in der Nähe, aber sie ist außerhalb der Bühne versteckt, wenn sie nicht benötigt wird. Wenn Sie die hide () -Methode eines Sprites aufrufen, befindet sich dieser Sprite immer noch im Speicher, wird jedoch nicht gezeichnet und löst keine Kollisionen aus.
-
Erstellen Sie eine fire () -Methode für die Rakete.
Die Rakete sitzt herum und wartet darauf, aktiviert zu werden. Die fire () Methode bringt die Rakete in Aktion.
-
Machen Sie das Projektil sichtbar.
Die Methode show () ist das Gegenteil von hide (). Es bewirkt, dass ein Sprite sichtbar ist und Kollisionen auslöst.
-
Gib der Rakete eine schnelle Anfangsgeschwindigkeit.
Wie Sie wissen, sind Raketen normalerweise schnell.
-
Verstecke die Rakete, wenn sie auf die Kante trifft.
Wenn die Rakete auf den Bildschirmrand trifft, muss sie versteckt werden. Wenn Sie die boundAction des Flugkörpers auf DIE setzen, wird dieses Verhalten automatisch durchgeführt.
-
Verstecke die Rakete, wenn sie irgendetwas anderes trifft.
Dieses einfache Beispiel hat keine anderen Objekte, aber wenn die Rakete mit etwas anderem kollidiert, rufen Sie ihre hide () -Methode auf, um zu simulieren, dass die Rakete bei Kontakt zerstört wird.
Nachdem das normale Raketenverhalten funktioniert, können Sie eine Reihe interessanter Variationen ausprobieren:
-
Fügen Sie den Raketen Schwerkraft hinzu. Wenn es sich um einen Seiten-Scroller handelt, fügen Sie Ihren Raketen eine Gravitationskraft für einen wurmähnlichen Effekt hinzu.
-
Füge weitere Physik zu den Raketen hinzu. Sie können die Raketen wie jedes andere Sprite ziehen lassen.
-
Mach eine intelligente Rakete. Verwenden Sie die angleTo-Methode, um den Winkel zwischen einer Rakete und einem Ziel zu bestimmen, und drehen Sie die Rakete in jedem Frame zum Ziel hin. Dies wird eine intelligente Rakete simulieren, die niemals versagt. (Ein großartiges Power-Up, aber es macht das Spiel zu einfach, wenn Sie zu viele haben.)
-
Machen Sie eine nicht ganz so clevere Rakete. Wenn der Feind eine Rakete auf den Spieler abfeuert, willst du ihn nicht ganz so schlau machen. Erstens: Machen Sie die Rakete so langsam, dass sie überfahren werden kann. Zweitens, setzen Barrieren, die die Rakete in den Weg zu zerstören. Drittens: Machen Sie die Rakete nur ab und zu intelligent, sodass sie einmal alle fünf oder zehn Frames auf die Position des Ziels prüft.
