154 lines
3.5 KiB
Markdown
154 lines
3.5 KiB
Markdown
# 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** |
|
|
|