Programmierung Spiele für Android

Programmierung Spiele für Android 39: Game Over Bildschirm

42 Videos

238 Protokoll

Gerade jetzt, wie Sie sehen, unser Spiel funktioniert, aber es gibt kein Feedback, uns zu sagen, dass wir verloren haben: Auf dem Display erscheint ein Over-Spiel, aber es ist kein Game Over wir auf dem Bildschirm sehen, sehen wir es in der Konsole, weil das Spiel dort. Es wäre schön, eine Möglichkeit haben uns das Spiel zu sagen wir verloren haben, so dass es klar ist, und dass, bis es eine Taste, um das Spiel, weil Sie jetzt nicht neu zu starten. Ich werde einen Bildschirm erstellen

Sekundär danach die ich Spiel nennen über die Nachricht angezeigt wird und eine Taste zum Hauptbildschirm zurückzukehren. Ich werde einen neuen Bildschirm erstellen wie wir ruhig genannt bisher GameOverScreen gesehen haben, und dieser Bildschirm eine Taste und eine Nachricht Game Over gesetzt wird zeigen. Die Botschaft, die ich es entworfen haben, ist dieses Bild, aber was ist mit der Taste? Ich meine, Scene2D ein Modul hat Scene2D UI genannt, die zu schaffen dient

Benutzeroberflächen. Sie sind Schauspieler, und sind typische Elemente einer Benutzeroberfläche wie Schaltflächen, Textfelder, Kontrollkästchen, die man sich denken kann. Durch Scene2D UI können wir diese Dinge hinzufügen, ohne das Rad neu erfinden zu müssen. Wir müssen nur einen Weg, um Stil zu geben. Ich benutze eine Haut, sondern Wir können dies mit Stilen manuell tun. Ich werde eine Haut verwenden und es wird die offizielle Haut von Libgdx verwenden werden im Repository finden,

die in der Beschreibung dieses Video ist. Die Aufgabe der Haut ist es, die Ressourcen der verschiedenen UI-Widgets mit Scene2D aufzunehmen. Hier sehen Sie, ich habe die Ressourcen der Schaltflächen, Dropdown, Kontrollkästchen, weniger mases ... Drücken der Tasten und die Nummer zu ändern. Er hat Briefe an Buchstaben erstellen. Wer schneidet das? Libgdx Schnitte schon gehen wir davon aus, die Haut-Klasse verwenden. Ich schaffe das GameOverScreen, von BaseScreen Typ. Sie erhalten eine Bühne haben,

aber es wird nichts anderes haben. Wenn überhaupt, Haut, den Stil zu repräsentieren, um ein Bild mit der Gameover darstellen, und wird eine TEXTBUTTON haben, die die Klasse die es beschäftigt eine Schaltfläche erstellen, die Text selbst gedrückt werden kann. Ich denke, die Bühne. Ich denke, die Haut, ich brauche die Erbauer Haut zu verwenden, Ich gehe das Filehandle meine Haut-Datei, die in .json endet. Ich gehe als Filehandle: Gdx.files.internal (), um anzuzeigen, dass wir wollen,

eine interne Datei in den Ordner Assets verwenden. Er beschäftigt sich mit dieser Übersetzung und erhalten die notwendigen Ressourcen, laden, so dass nur die Haupt bereits wissen, wie Zugriff auf alles, geschieht nichts. Nun, was ich tue, ist mein Bild Gameover erstellen, für das, was das Hauptspiel eine Last auf dem Manager gesetzt haben, zu Gameover. Also schreibe ich Gameover ist ein neues Bild, Textur und sagen, ich will dieses Bild zu verwenden. UI Scene2D Bilder eine Textur als Schauspieler zeigen,

so kann sie bewegt und manipuliert werden. Sie sind sehr vielseitig, wirklich. Ich sage Game.Manager.Get (GameOver.png), und beschwert sich, bis es wegen einer Variablen zugewiesen kann nicht wissen, ob es sich um eine Textur oder etwas anderes ist, also werde ich einen Parameter übergeben, um die Manager-Kraft einer ganzen Klasse zu sein, zum Beispiel Texture.class. Wenn also die Einfuhren machen, ist es eine Textur innerhalb dieser Methode und lässt sich als Textur, warum keine Probleme geben.

Schließlich ich die Taste mit einem neuen TEXTBUTTON erstellen. Als erster Parameter, gebe ich den Text-Label als zweiten Parameter und die Haut. Nun, was ich zu tun ist, in der Show (), zeigen dies. Ich habe einfach auf dem Bildschirm in einer bestimmten Position, als gameOver.setPosition (). Das kann ich hier im Konstruktor tun, denn wie immer auf der gleichen Seite sein wird, und die horizontale Hälfte. Wie bei Wiederholung,

Ich gebe eine Größe 200x100 Taste, um es groß zu machen, und ich werde in der Position (220,50) gesetzt, so dass es zentriert ist. Keine Notwendigkeit zu zeigen, weil als Ich habe es alles außer Add getan, passiert nichts anderes. Nur für den Fall brauche ich eine dispose () eine dispose () zu tun auf der Bühne. Die Gameover nicht disposea, weil die Textur ist unten. Wie zu machen, ja, was muss ich es auf der Bühne zu machen, so schamlos kopiert ich den Code verwendet

den Bildschirm zu löschen, weil ich nicht über die Eskapaden erinnern und jetzt stage.act () und stage.draw () aufrufen. Und Sie sehen, dass es zu machen, so dass der Knopf hat Ich mache Verhalten, das aktualisiert wird. Schließlich ersetze ich durch GameOverScreen vorübergehend GameScreen, und wenn ich sehe, führen Sie das Ergebnis. Es ist nicht horizontal, wie erwartet, nur weil ich hier falsch zentriert. Dies ist ... wenn Sie es zentrieren möchten, können Sie die Hälfte der Breite des Bildschirms setzen,

mindestens die Hälfte der Breite der Textur. Sie sollten jetzt besser aussehen. Jetzt funktioniert es gut. Obwohl, wenn jetzt höre ich versuchen, den Knopf zu klicken ... nicht für mich. Warum? Weil ich Scene2D und Eintrag Bühne zu machen, müssen versuchen, auf den Button klicken, um es zu kontrollieren. Wir werden sehen wie dies zu tun und diesen kleinen Bildschirm zu beenden.

Um neue Kurse finden, abonnieren. Es wird kein Spam sein, versprochen :)

Über den Autor

foto de jotajotavm
José Javier Villena

Biografie: Analyst-Programmierer in verschiedenen Sprachen. Tutor PREMIUM-Plattformen weltweit als CodigoFacilito anerkannt. Editor Cristalab Artikel. Mein YouTube-Kanal wird von der ANAYA und LaTostadora Verlag gefördert. Ich mag im Detail und geben einige Beispiele für die Vermeidung von Missverständnissen zu erklären.