ja danke mal an die vielen antworten^^
ja also wegen des tic tac toes...das steigert sich immer von zeit zu zeit...wir haben es schon so weit geschafft dass man zu zweit spielen kann... aber noch nicht gegen den computer selber. das einzige was das program tun muss,ist zu überprüfen ob 3 felder gleich sind egal ob horizontal,vertikal oder diagonal...
des letzteren haben wir noch das spielfeld "graphisch" ausgegeben und so das man eingeben kann wie viele felder man spielt^^
das ist zurzeit ein programm das ein schulkollege von mir geschrieben hat...das ist nur das tic tac toe...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TicTacToe
{
class Program
{
static int Max = 3;
static int Spieler = 1;
static bool gewonnen = false;
static int spielzüge = 0;
static int gesamtscore1 = 0;
static int gesamtscore2 = 0;
static void Main(string[] args)
{
int[,] spielfeld = new int[3, 3];
Print(spielfeld);
while (1==1)
Game(spielfeld);
}
static void Game(int [,] spielfeld)
{
int SIEG_Spieler = 0;
while (gewonnen == false)
{
Spielzug(spielfeld);
if (spielzüge >= 5)
SIEG_Spieler = Auswertung(spielfeld);
if (Spieler == 1)
Spieler = 2;
else
Spieler = 1;
Print(spielfeld);
}
if (SIEG_Spieler == 3)
Console.WriteLine("Es ist unentschieden!");
else if (SIEG_Spieler != 0)
{
Console.WriteLine("Glückwunsch Spieler" + SIEG_Spieler + " hat gewonnen!");
if (SIEG_Spieler == 1)
gesamtscore1++;
else
gesamtscore2++;
}
for (int i = 0; i < Max; i++)
{
for (int j = 0; j < Max; j++)
{
spielfeld[i, j] = 0;
}
}
Console.ReadLine();
Console.Clear();
Spieler = 1;
Print(spielfeld);
gewonnen = false;
}
static void Spielzug(int[,] spielfeld)
{
string eingabe;
int x, y;
Console.Write("Spieler" + Spieler + ": ");
eingabe = Console.ReadLine();
x = Int32.Parse(eingabe.Substring(0, 1));
y = Int32.Parse(eingabe.Substring(2, 1));
if ((spielfeld[x - 1, y - 1] == 0) && (x <= 3) && (y <= 3))
{
spielfeld[x - 1, y - 1] = Spieler;
spielzüge++;
}
else
{
Console.WriteLine("Falsche Eingabe");
Console.ReadLine();
Game(spielfeld);
}
}
static int Auswertung(int[,] spielfeld)
{
int s = 1;
int t = 1;
int patt = 0;
for (int zeilen = 0; zeilen < Max; zeilen++)
{
if ((spielfeld[s, zeilen] == spielfeld[s - 1, zeilen]) && (spielfeld[s, zeilen] == spielfeld[s + 1, zeilen]))
{
if (spielfeld[s, zeilen] != 0)
{
gewonnen = true;
return spielfeld[s, zeilen];
}
}
}
for (int spalten = 0; spalten < Max; spalten++)
{
if ((spielfeld[spalten, s] == spielfeld[spalten, s-1]) && (spielfeld[spalten, s] == spielfeld[spalten, s+1]))
{
if (spielfeld[spalten, s] != 0)
{
gewonnen = true;
return spielfeld[spalten, s];
}
}
}
if ((spielfeld[s, t] == spielfeld[s - 1, t - 1]) && (spielfeld[s, t] == spielfeld[s + 1, t + 1]))
{
if (spielfeld[s, t] != 0)
{
gewonnen = true;
return spielfeld[s, t];
}
}
if ((spielfeld[s, t] == spielfeld[s - 1, t + 1]) && (spielfeld[s, t] == spielfeld[s + 1, t - 1]))
{
if (spielfeld[s, t] != 0)
{
gewonnen = true;
return spielfeld[s, t];
}
}
for (int i = 0; i < Max; i++)
{
for (int j = 0; j < Max; j++)
{
if (spielfeld[i, j] != 0)
patt++;
}
}
if (patt == 7)
{
gewonnen = true;
return 3;
}
else
return 0;
}
static void Print(int [,] spielfeld)
{
Console.Clear();
Console.WriteLine("Spieler1: " + gesamtscore1 + " Spieler2: " + gesamtscore2);
Console.WriteLine();
Console.WriteLine();
Console.WriteLine("______________");
Console.WriteLine();
for (int i = 0; i < Max; i++)
{
for (int j = 0; j < Max; j++)
{
Console.Write(" ");
if (spielfeld[i, j] == 0)
Console.Write(" ");
else if (spielfeld[i, j] == 1)
{
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("X");
Console.ForegroundColor = ConsoleColor.Gray;
}
else if (spielfeld[i, j] == 2)
{
Console.ForegroundColor = ConsoleColor.Blue;
Console.Write("O");
Console.ForegroundColor = ConsoleColor.Gray;
}
Console.Write(" | ");
}
Console.WriteLine();
Console.WriteLine("______________");
Console.WriteLine();
}
Console.WriteLine();
Console.WriteLine();
Console.WriteLine();
}
}
}
so ich glaube die nachricht ist jtz lang genug^^
PS: nochmals großes danke an alle die mir schon so gute tipps gegeben haben^^