Gaming ist eine Form der Unterhaltung, die den Menschen zur Verfügung steht. Spiele aller Art sind online, auf mobilen Geräten, auf Desktop-Computern usw. verfügbar. Jetzt ist nicht die Zeit, eines dieser herausfordernden Spiele zu erstellen.
Mit Python erstellen wir ein CLI-Tic-Tac-Toe-Spiel. Lassen Sie uns Python verwenden, um ein einfaches Tic Tac Toe-Spiel zu erstellen. Es wird Ihnen helfen, Spiellogik zu erstellen und zu lernen, wie man Code organisiert.
Tic-Tac-Toe
Bevor wir mit dem Programmieren beginnen, dachte ich, ich fasse das Spiel kurz zusammen und bespreche meinen Entwicklungsplan.
Zuerst stellen wir die Annahme auf, dass Xs immer die Initiative ergreifen und sich zuerst bewegen, um dem Benutzer die Möglichkeit zu geben, zu handeln.
Über die Konsole wird eine Zahl zwischen 1 und 9 eingegeben. In einem Raster, in dem jede Zahl einer anderen Zahl entspricht (oben links ist 1, unten rechts ist 9).
Der Computer bestimmt automatisch und führt seinen Zug aus, sobald sich der Benutzer bewegt. Eine primäre Spielschleife, die eine Reihe verschiedener Routinen aufruft, wird von mir verwendet.
Welche Funktion gerade fertiggestellt wird, ist wahrscheinlich in jeder Kopfzeile dieser textbasierten Lektion angegeben.
Entwerfen einer Tafel
Wir werden unser Board mit einem Rasterlayout darstellen, wie ich zuvor angedeutet habe. Dazu erstellen wir in Python eine Liste namens board, die mit 10 leeren Werten beginnt.
Da der Benutzer nur die Zahlen 1 bis 9 eingeben kann, nicht 0 bis 8, haben wir 10 leere Werte statt 9. Der Einfachheit halber geben wir dem ersten Eintrag unserer Liste also den Wert „leerer Text“.
Auf diese Weise können wir 1–9 anstelle von 0–8 verwenden, um die Einträge in unserer Liste zu indizieren.
Buchstabe einfügen ()
Letter und Pos sind die beiden Eingaben für diese Funktion. Es wird nur den angeforderten Brief an der angeforderten Stelle ablegen.
spaceIsFree(pos)
Einfach gesagt, diese Methode informiert uns, ob der angegebene Bereich frei ist. Daher gibt es dort noch keinen Brief. Pos, sein einziges Argument, ist eine ganze Zahl zwischen 1 und 9.
Druckplatte(n)
Das Board wird als Argument an diese Methode gesendet, die es auf der Konsole anzeigt.
istGewinner()
Basierend auf dem vorliegenden Board teilt uns diese Funktion mit, ob der gelieferte Brief gewonnen hat. Es hat zwei Parameter: le und board (Buchstabe).
Es muss ein „X“ oder ein „O“ sein. Schauen Sie einfach nach, ob der angegebene Buchstabe auf jeder potenziellen Gewinnlinie auf dem Spielfeld vorhanden ist.
Main()
Wenn wir das Spiel starten wollen, rufen wir diese Methode auf. Es ruft jede einzelne der vielen Funktionen unseres Programms auf und bestimmt, wie das Programm ausgeführt werden soll.
isBoardFull()
Wenn diese Methode als Eingabe an Bord gegeben wird, gibt sie einfach True zurück, wenn das Board voll ist, und andernfalls False.
playerMove()
Bei dieser Methode fordern wir einen Umzug vom Benutzer an und validieren ihn. Der Brief wird dem Board hinzugefügt, wenn der Zug legitim ist. Wenn nicht, werden wir den Benutzer weiterhin um Feedback bitten.
CompMove() – KI
Die KI wird nun beginnen. Die Bewegung der Computer wird durch diese Funktion gesteuert. Es bewertet das Board und wählt den besten Zug aus.
Im Folgenden finden Sie eine Liste des Algorithmus, den wir dazu verwenden.
- Wenn der aktuelle Schritt nicht abgeschlossen werden kann, fahren Sie mit dem nächsten fort.
- Nehmen Sie den gewinnenden Zug, wenn Sie können.
- Bewegen Sie sich in der folgenden Runde in diese Position, wenn der Spieler einen potenziell gewinnenden Zug hat.
- Wählen Sie eine Ecke und drehen Sie sie. Wählen Sie zufällig, wenn es mehrere Optionen gibt.
- Stellen Sie sich in die Mitte.
- Betrachten Sie eine der Kanten. Wählen Sie zufällig, wenn es mehrere Optionen gibt.
- Wenn es keine Möglichkeit gibt, sich zu bewegen, endet das Spiel unentschieden.
selectRandom()
Ausgehend von einer Liste möglicher Standorte wählt diese Funktion nach dem Zufallsprinzip die zu ergreifende Aktion aus.
Der Start des Spiels
Das Spiel kann jetzt gestartet werden, nachdem wir alle unsere Aufgaben erledigt haben. Alles, was wir tun müssten, ist main aufzurufen, wenn wir das Spiel nur einmal ausführen wollten.
Aber in unserer Situation wollen wir, dass das Spiel weiterläuft, bis der Benutzer entscheidet, dass er nicht mehr spielen möchte, also fügen wir der Hauptlinie eine kleine While-Schleife hinzu.
Code vervollständigen
Hier ist der gesamte Code für unser Spiel, das nun vollständig ist.
Output
Zusammenfassung
Hurra!
Ein Spiel, das Sie komplett von Grund auf neu gemacht haben. Es ist kein Spiel, das wir regelmäßig spielen. Aber es hilft beim Schreiben von Logik und der Aufrechterhaltung einer klaren Struktur im Code.
Viel Spaß beim Codieren!
Hinterlassen Sie uns einen Kommentar