# Willkommen bei Code TicTacToe Dieses Programm wurde ausschliesslich mit Java programmiert. Dieser TicTacToe hat die Besonderheit, dass diese nur durch das Coden im Programm das Spiel gespielt werden kann. ## Installation und Setup: Um das Spiel spielen zu können benötigen Sie die openJDK version 11. Dieses Packet installiert eine sogenannte Runtime, die für ein Java Programm wie dieses benötigt, um es laufen lassen zu können. Bevorzugt wird die IDE IntelliJ, da mit dieser Entwicklungsumgebung das Programm programmiert worden ist und alle Voraussetzungen bereits gesetzt worden sind für die IDE. ## Tutorial Das TicTacToe besteht aus 9 Feldern und wird von zwei Spielern gespielt. Diese zwei Spieler werden mit den Zeichen `X` oder `O` versehen. Spieler werden mit jedem Zug gewechselt. Das ist ein Beispiel von einem gespielten TicTacToe Feld. | X | | | | --- | --- | --- | | **O** | **X** | | | | | **O** | Der Spieler gewinnt, wenn er zuerst 3 von seinen Zeichen in einer vertikalen, horizontalen oder diagonale Reihe gesetzt hat. Das Spiel hat folgende zwei Inputs, die zur Bedienung des Spieles dienen. Um das TicTacToe spielen zu können, müssen Sie in der `TicTacToe.java` Datei öffnen. Die Datei wird dann so aussehen: ```java public class TicTacToe { public static void main(String[] args) { Game g1 = new Game(); } } ``` **Feld setzen** Um ein Feld setzen zu können, fügen Sie eine neue Zeile hinzu und schreiben Sie ```java public class TicTacToe { public static void main(String[] args) { Game g1 = new Game(); g1.placeField( 1 /*Hier das gewünschte Feld */); } } ``` Wenn Sie ein Feld gesetzt hat, dann wird im Terminal folgendes ausgegeben: ``` Spiezug: 1, Spieler 1 spielt. X| | ----- | | ----- | | ``` *Wenn* ein Feld bereits gesetzt worden ist und der Spieler versucht, diese wieder zu setzen, dann wird im Terminal folgendes ausgegeben ``` Dieses Feld ist nicht zulässig ``` **Sprache wechseln** Das Spiel ist in der Lage, in Deutsch(`de`) Englisch(`en`) und Vietnamesisch(`vn`) auszugeben. Um die Sprache ändern zu können, benutzen Sie die Methode `g1.changeLanguage();` ```java public class TicTacToe { public static void main(String[] args) { Game g1 = new Game(); /* Hier die gewünschte Sprache als Kürzel und in kleiner Schrift wie hier dargestellt*/ g1.changeLanguage("de"); g1.changeLanguage("en"); g1.changeLanguage("vn"); } } ``` **Spiel neustarten** Um ein neues Spiel zu spielen, muss eine neues `Game` Objekt generiert werden. Das Objekt `Game` hat keine Methode, um das Spiel neuzustarten. Hier eine Darstellung: ```java public class TicTacToe { public static void main(String[] args) { Game g1 = new Game(); /* Neues Spiel */ Game g2 = new Game(); } } ``` ### Beispiele der Kombinationen für den Sieg Vertikale: | X | | | | --- | --- | --- | | **X** | **O** | | | **X** | | **O** | | X | X | | | --- | --- | --- | | **O** | **X** | | | **O** | **X** | **O** | | | O | X | | --- | --- | --- | | **O** | | **X**| | **O** | **X** | **X** | Horizontale: | X | X | X | | --- | --- | --- | | | **O** | | | | | **O** | | | | O | | --- | --- | --- | | **X** | **X** | **X** | | **O** | | **O** | | | O | X | | --- | --- | --- | | **O** | | **O**| | **X** | **X** | **X** | Diagonale: | X | | | | --- | --- | --- | | **O** | **X** | | | **O** | | **X** | | | | X | | --- | --- | --- | | **O** | **X** | | | **X** | | **O** |