Machen Sie ein 2048-Spiel in Python - 2048 Spiel-Codes in Python, der Tara-Nights
Bis Ende dieser Lese werden Sie in der Lage sein, ein beliebtes Spiel 2048 auf eigener Faust zu machen. Python Programmiersprache verwendet werden, um die Logik des Spiels in diesem tutorial.2048 zu implementieren, ist ein Spiel, die maximale Popularität in meinem College erreicht. Dies begann mit einer E-Mail von meinem College-Direktor von Wissenschaftlern mit dem Header 2048. Ein Spiel zu machen. Ich wähle Python Programmiersprache 2048 Spiel zu bauen.
2048 Spiel innerhalb einer 4 * 4-Matrix beschränkt. Dies ist die grundlegende Sache, die Sie benötigen. Verschachtelte Listen wären die schnelle Wahl eine 4 * 4 Matrix in Python zu implementieren. Als nächstes die Zahlen innerhalb der 4 * 4 Matrix sind gerade Zahlen von 2. Die Kombination von gleichen Zahlen in ihrer Summe führt zu starten. Wenn Sie einen einzelnen Block von 2048 zu machen folgen, um dann gewinnen Sie. Sie haben vier gültige bewegen nämlich nach links, rechts, oben und unten. Jedes Mal, wenn Sie einen Schritt machen (links, rechts, oben, unten) eine neue Nummer (2) 4 * 4 Matrix an einen der Positionen erzeugt innerhalb der in dem der Wert Null (nichts). Wenn es in dem Format drei gleiche Zahlen sind wie unten gezeigt (zum Beispiel), und linke Bewegung gemacht wird dann die Zahl näher an die Extrempositionen hat eine höhere Priorität dann, dass irgendwo vorhanden Mitte der Matrix.
Betrachtet man nur eine einzige Reihe als Beispiel
Wenn links bewegen aktiviert wird, wird die obige Reihe
1. Module
Wir werden nur ein Modul d.h Zufalls verwenden. Dieses Modul wird verwendet, um eine Zahl zu setzen (2) jedes Mal, wenn ein Umzug in eine zufällige Position gemacht wird, wo es keine anderen Zahlen (Freiraum) vorhanden ist. Denn jetzt sind wir freien Raum als Null angenommen wird.
2. Positionieren der ersten Reihe (2) in der 4 * 4-Matrix (dem Beginn des Spiels)
jedes Element innerhalb der Matrix 4 * 4 Standardmäßig ist eine Null, um die gültigen Positionen alle Null hat einen Wert bedeutet. Dann wird eine Position arr [i] [j] wird in einem zufälligen erzeugt wird, wo die erste Zahl des Spiels platziert wird.
3. Ausdrucken der in den Indizes enthaltenen Werte ab 0 * 0-4 * 4
Die 4 * 4-Matrix wird nun gedruckt ihre Werte Bedeutung gedruckt. Dieser Block der Umsetzung geht in einer Schleife bedeutet, dass es gedruckt wird, bis ein Spieler das Spiel verliert oder gewinnt das Spiel.
4. einen Spieler für einen Umzug Vorstellung (w bis zum unten s, eine für nach links und rechts und d)
Ein Eingang wird von dem Spieler gemacht. Die gültigen Eingaben w, s, a und d. Dieser Teil des Codes liegt auch innerhalb der Schleife bereits erwähnt.
5. Aufruf der Funktion
Eine Funktion wird jetzt mit Parametern wie 4 * 4 Matrix, USER_INPUT genannt. USER_INPUT enthält die Eingabe von dem Benutzer (w, s, a, d).
6. Die Funktion
Die bisherige Funktion aufgerufen hat zwei Parameter, nämlich myArray und USER_INPUT wo myArray die Matrix 4 * 4 und USER_INPUT ist die Zeicheneingabe durch den Benutzer in Bewegung gegeben, die er / sie will machen. Entsprechend den Eingang unterschiedlichen Codeblock genommen wird ausgeführt.
Wenn USER_INPUT == ‚s‘ (dh Spieler will eine nach unten gerichtete Bewegung machen)
Das, was hier zu verstehen ist, dass diese Bewegung nur in Spalten erfolgt. Das bedeutet, die Bewegung in Richtung nach unten sein soll. Zunächst einmal müssen wir eine Bedingung überprüfen, dass an mindestens einer Stelle in jeder Spalte einen Wert ungleich Null enthält. Dann, wenn die unterste Lage einer Spalte enthält eine Null ist, dann wird der Ort mit einem Wert ersetzt, der direkt darüber vorhanden ist (vorletzter Stelle einer Spalte). die zweite letzte Position mit dem dritten letzten (zweiten) und den dritten letzten (zweiten) mit dem ersten und der ersten Lage auf einen Wert Null, bis die letzte Position in einer Spalte wird nicht Null zuzugeordnet ersetzt.
Nun wird wieder eine weitere Bedingung geprüft d.h
wenn die zweite letzte Position in einer Spalte Null ist und die zweite oder die erste Lage ist keine Null dann die zweite letzte Position mit dem Wert im dritten letzten (zweiten) Lage und die dritten letzten (zweiten) mit dem Wert enthielt ersetzt wird die erste Lage und die erste Lage auf einen Wert Null, bis die zweite letzte Position in einer Spalte nicht Null wird zugeordnet sind.
Danach wird eine weitere Bedingung geprüft d.h
wenn die dritte letzten (zweiten) Lage enthält einen Nullwert und der erste Ort in einer Spalte enthält einen nicht Null-Wert dann die zweite Lage mit einem Wert der ersten Stelle und zuerst mit Null ersetzt wird.
Nach der obigen Implementierung ist jetzt Summierung Arbeit getan werden. Dies beginnt mit der Bedingung
wenn die unterste Lage in einer Spalte einen Wert ähnlich die vorliegenden hält knapp darüber (vorletzter Stelle), wird die unterste Spalte mit der Summe aus der untersten Position ersetzt wird und die zweiten letzte Position des Wertes ist, wird die zweite letzten ersetzt mit dem Wert an der zweiten Stelle (Zeile) diese Spalte. Das zweite ist, mit der ersten Reihe und der Wert der ersten Reihe der Wert auf Null zugewiesen ersetzt.
Nun eine weitere Bedingung ist, wenn der Wert an der dritten Zeile einer Spalte auf den Wert an der zweiten Reihe einer Spalte gleich ist dann dritten Reihe die Summe aus dem Wert an der dritten Reihe und der zweiten Reihe in dieser Spalte gilt, nimmt den zweiten Zeilen den Wert auf den ersten Reihe und der ersten Reihe nimmt einen Wert Null. Ferner, wenn die zweite Reihe von einer Spalte und der ersten Zeile dieser Spalte denselben Wert hat dann die zweite Zeile enthält die Summe der zweiten und der ersten Reihe Wert und ersten Zeile auf Null zugeordnet.
Wenn USER_INPUT = 'w' / 'ein' / 'd' (oben / links / rechts)
Die ähnliche Implementierung läuft hier ab, dass für USER_INPUT = ‚s‘
7. Definieren von zwei leere Listen
Nun sind zwei leere Liste definiert. Dies sind die Liste, die den i-te und j-te Wert der 4 * 4 Matrix hält, wenn der Wert Null ist.
Zählung ist eine Variable, die als der Zähler, dessen Wert gibt die Anzahl der Lage in der 4 * 4 Matrix arbeitet, wenn der Wert Null ist.
9. Zuweisen einer Zahl zu einem zufälligen Ort in dem Wert Null ist,
Wenn der Wert der Variablen count ist größer als 1 ist, dann der Zufall Ort, an dem Wert Null zu einer Nummer zugeordnet ist (2) und das Programm für eine weiteren Zeitschleifen. Wenn Count auf 1 dann gleich der Stelle ist, wo Wert Null mit einer Reihe (2) und dem Codeblock ersetzt wird Schleife für eine andere Zeit. Wenn count null ist, dann wird die Schleife beendet und die Nachricht wird gedruckt „Game Over“