So erstellen Sie die Marble-Rollen-Spiel in Ihre HTML5 Spiel

Diese Art von HTML5-Spiel ist speziell für mobile Geräte mit einem Beschleunigungsmesser (obwohl es auf einem Desktop funktioniert). Die Idee ist, das Gerät zu kippen, einen Ball in den blauen Ziel zu bewegen, ohne dass die Blöcke zu schlagen. Jedes Mal, wenn der Benutzer das Ziel erreicht, wird das Spiel mit einem zusätzlichen Block neu gezeichnet, so dass das Spiel härter und härter.

bild0.jpg

Verwalten Sie Ihr Spiel Dual Input

Der vielleicht interessanteste Teil dieses Spiels ist seine neuartige Eingabemechanismus. Es fühlt sich sehr natürlich den Bildschirm für die Kugelbewegung zu kippen.

  1. Erstelle ein Accel Objekt.

    Schalten Sie den Beschleunigungsmesser durch eine Instanz der Schaffung Accel Objekt.

  2. Bau ein checkAccel () Verfahren.

    Es wurde ein Verfahren zum Mehr Ball Objekt, das den Beschleunigungssensor überprüft.

  3. Holen Sie sich das Beschleunigungs-Rotation.

    Verwenden Sie die getAX () und getAY () Methoden, um den Betrag der Drehung um diese Achsen zu finden.

  4. Konvertieren Rotation dx und dy Werte.

    Sie können Mechanismen verwenden Rotation um geeignete Bewegungswerte zu konvertieren.

  5. Fügen Sie eine optionale Tastatureingabe.

    Es ist viel einfacher, ein Programm auf einem Desktop zu debuggen als auf einem mobilen Gerät, so dass Sie eine alternative Eingabemöglichkeit hinzufügen, so dass Sie so viel von dem Programm wie möglich testen können, bevor auf der mobilen Plattform zu bewegen. Verwenden Sie die Szene Klasse berührbaren Eigenschaft, um festzustellen, ob Sie ein mobiles Gerät verwenden. Dieser Ansatz macht auch das Spiel spielbar für eine breitere Palette von Benutzern.

Hier ist der Code (in der Haupt aktualisieren() Funktion) zum Prüfen, welche Art der Eingabe ist verfügbar:

 // Erhalten Eingang von Beschleunigungsmesser oder keyboardif (game.touchable) {ball.checkAccel () -} else {ball.checkKeys () -}

Und hier ist der checkAccel () Verfahren der Ball Objekt:

 tBall.checkAccel = function () {// den Beschleunigungsmesser benutzen Sie inputnewDX = accel.getAY () - newDY = accel.getAX () - newDX * = -5-newDY * = -5-ball.setDX (newDX) - ball.setDY (newDY) -} // Ende checkAccel

Wie man Spiel Hindernisse bauen

Ein weiteres interessantes Merkmal dieses Spiels ist die ständig steigende Schwierigkeitsgrad. Erste den Schwierigkeitsgrad eines Spiels richtig ist sehr anspruchsvoll. Sie wollen das Spiel schlagbar zu sein, aber das Spiel zu schlagen braucht wie eine Leistung zu fühlen. Eine Möglichkeit, dieses Ziel zu erreichen, ist mit einer sehr einfachen Schwierigkeitsgrad zu beginnen und dann Rampe, bis das Spiel schwieriger wird.

Für die Marmor-Spiel, mit einer Reihe von Blöcken, wie das Hindernis. Wenn das Spiel beginnt, gibt es nur zehn Blöcke auf dem Bildschirm, so ist es ganz einfach auf das Ziel zu bekommen, ohne irgendwelche Blöcke zu schlagen. Jedes Mal, wenn der Spieler das Ziel erreicht, wird die Spielszene mit einem weiteren Block neu gezeichnet.

Die Blöcke und das Ziel sind an zufälligen Positionen auf dem Bildschirm gezeichnet. Allerdings müssen Sie nicht zu schaffen, eine unmögliche Situation, vorsichtig zu sein. Das Block Objekt reset () Verfahren versucht, auf dem Bildschirm einen Block an einer beliebigen Position zu bringen.

Wenn jedoch der Block mit dem Ziel kollidiert, wird das Spiel schwierig sein, zu gewinnen. Ebenso, wenn der Block mit der Kugel die aktuelle Position kollidiert, wird der Spieler sofort verlieren. Wenn eine dieser Bedingungen auftritt, ist der Block neu gezeichnet, bis eine Rechtsposition zur Verfügung steht.

Die Blöcke einander frei zu überlappen, aber man konnte diese Einschränkung auch hinzufügen. Hier ist der Block Zurücksetzen Routine:

 tBlock.reset = function () {// Sie mir das Ziel nicht zulassen, überlappen oder ballkeepGoing = true-while (keepGoing) {newX = Math.random () * this.cWidth-Newy = Math.random () * this. cHeight-this.setPosition (newX, Newy) -keepGoing = false-if (this.collidesWith (Ziel)) {keepGoing = Echt-} // end IFIF (this.distanceTo (Kugel) lt; 150) {keepGoing = Echt- } // end if} // end while-Schleife} // end-Reset

Wie das Marmor-Spiel zu verbessern

Die Marmor-Spiel ist ganz spielbar, wie es ist, aber jedes Spiel verbessert werden kann. Hier sind ein paar Vorschläge:

  • Fügen Sie eine Frist. Muss der Benutzer das Ziel zu einer bestimmten Zeit zu erreichen.

  • Fügen Sie neue Arten von Barrieren. Barrieren unterschiedlicher Größe wird das Gameplay verändern.

  • Ändern Sie die Grenze Aktion des Balles. In dieser Version des Spiels, wickelt sich die Kugel über den Bildschirm. Dies fügt ein zusätzliches taktisches Element, um das Spiel, aber Sie können an der Grenze zu stoppen bevorzugen.

  • In Powerups. Sie können jederzeit spezielle Elemente hinzufügen, die vorübergehend Gameplay ändern. Vielleicht betrachten ein paar Sekunden machen den Ball unbesiegbar, oder die Schwerkraft Umkehren (multiplizieren dx und dy beide von -1). Sie können auch vorübergehend die Größe der Kugel zu ändern oder ein Powerup haben, die das aktuelle Niveau zurücksetzt.

  • Erstellen Sie Blöcke zu bewegen. Das Spiel ändert sich völlig, wenn die Blöcke auch bewegen. Sie werden wahrscheinlich wollen, dass sie sich sehr langsam in eine zufällige Richtung zu bewegen, da diese Funktion das Spiel machen könnte viel härter.

  • Machen Sie kosmetische Verbesserungen. Natürlich können Sie immer Soundeffekte, eine Highscore-Mechanismus und eine verbesserte Grafik.

Menü