Programmera spel i C++ för nybörjare/Luffarchack
Utseende
Det här spelets främsta förtjänst är att det visar hur en tvådimensionell array kan användas för att skapa en enkel spelplan i konsollfönstret. Grunderna är färdigprogrammerade så den som vill vidareutveckla spelet borde inte ha några problem. Koden har få kommentarer men den är lätt att förstå ändå.
//Koden skänkt till wikibooks av Mattias Olsson, John Bauergymansiet i Uddevalla
//December 2011
#include "stdafx.h"
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
bool gameover = false;
bool xtur = true;
bool harvalt = false; //om man lagt ut en spelpjäs
int schack [3][3] ={0};//Skapa array för spelplan 3x3 rutor
while (gameover == false)
{//gameover
int valdsiffra =0;
if (xtur == true)
cout << "vart vill du sätta ditt 1?" << endl;
else
cout << "vart vill du sätta ditt 2?" << endl;
cout << "1=A1" << endl;
cout << "2=A2" << endl;
cout << "3=A3" << endl;
cout << "4=B1" << endl;
cout << "5=B2" << endl;
cout << "6=B3" << endl;
cout << "7=C1" << endl;
cout << "8=C2" << endl;
cout << "9=C3" << endl;
cin >>valdsiffra;
if (valdsiffra==1)
{
if (schack [0][0]==0)
{
if (xtur==true)
schack [0][0]=1; //1 tur
else
schack [0][0]=2; //2 tur
harvalt = true;
}
else
cout << "A1 är upptaget" << endl;
}
if (valdsiffra==2)
{
if (schack [1][0]==0)
{
if (xtur==true)
schack [1][0]=1; //1 tur
else
schack [1][0]=2; //2 tur
harvalt = true;
}
else
cout << "A2 är upptaget" << endl;
}
if (valdsiffra==3)
{
if (schack [2][0]==0)
{
if (xtur==true)
schack [2][0]=1; //1 tur
else
schack [2][0]=2; //2 tur
harvalt = true;
}
else
cout << "A3 är upptaget" << endl;
}
if (valdsiffra==4)
{
if (schack [0][1]==0)
{
if (xtur==true)
schack [0][1]=1; //1 tur
else
schack [0][1]=2; //2 tur
harvalt = true;
}
else
cout << "B1 är upptaget" << endl;
}
if (valdsiffra==5)
{
if (schack [1][1]==0)
{
if (xtur==true)
schack [1][1]=1; //1 tur
else
schack [1][1]=2; //2 tur
harvalt = true;
}
else
cout << "B2 är upptaget" << endl;
}
if (valdsiffra==6)
{
if (schack [2][1]==0)
{
if (xtur==true)
schack [2][1]=1; //1 tur
else
schack [2][1]=2; //2 tur
harvalt = true;
}
else
cout << "B3 är upptaget" << endl;
}
if (valdsiffra==7)
{
if (schack [0][2]==0)
{
if (xtur==true)
schack [0][2]=1; //1 tur
else
schack [0][2]=2; //2 tur
harvalt = true;
}
else
cout << "C1 är upptaget" << endl;
}
if (valdsiffra==8)
{
if (schack [1][2]==0)
{
if (xtur==true)
schack [1][2]=1; //1 tur
else
schack [1][2]=2; //2 tur
harvalt = true;
}
else
cout << "C2 är upptaget" << endl;
}
if (valdsiffra==9)
{
if (schack [2][2]==0)
{
if (xtur==true)
schack [2][2]=1; //1 tur
else
schack [2][2]=2; //2 tur
harvalt = true;
}
else
cout << "C3 är upptaget" << endl;
}
cout <<"A"<<" "<<"B"<<" "<<"C"<<endl;
cout << endl;
cout << schack [0][0] << "|" <<schack [0][1] << "|" <<schack [0][2] << endl;
cout << "______" << endl;
cout << schack [1][0] << "|" <<schack [1][1] << "|" <<schack [1][2] << endl;
cout << "______" << endl;
cout << schack [2][0] << "|" <<schack [2][1] << "|" <<schack [2][2] << endl;
cout << endl;
cout << endl;
if ((schack [0][0]==1 && schack [0][1]==1 && schack [0][2]==1) || (schack [0][0]==2 && schack [0][1]==2 && schack [0][2]==2 ))//asdfdgfhj
{ //vinst
gameover =true;
if (schack [0][0] == 1)
cout << "1 vann" << endl;
else
cout << "2 vann" << endl;
} //vinst
if ((schack [1][0]==1 && schack [1][1]==1 && schack [1][2]==1) || (schack [1][0]==2 && schack [1][1]==2 && schack [1][2]==2 ))
{ //vinst
gameover =true;
if (schack [0][0] == 1)
cout << "1 vann" << endl;
else
cout << "2 vann" << endl;
} //vinst
if ((schack [2][0]==1 && schack [2][1]==1 && schack [2][2]==1) || (schack [2][0]==2 && schack [2][1]==2 && schack [2][2]==2 ))
{ //vinst
gameover =true;
if (schack [0][0] == 1)
cout << "1 vann" << endl;
else
cout << "2 vann" << endl;
} //vinst
if ((schack [0][0]==1 && schack [1][0]==1 && schack [2][0]==1) || (schack [0][0]==2 && schack [1][0]==2 && schack [2][0]==2 ))
{ //vinst
gameover =true;
if (schack [0][0] == 1)
cout << "1 vann" << endl;
else
cout << "2 vann" << endl;
} //vinst
if ((schack [0][1]==1 && schack [1][1]==1 && schack [2][1]==1) || (schack [0][1]==2 && schack [1][1]==2 && schack [2][1]==2 ))
{ //vinst
gameover =true;
if (schack [0][0] == 1)
cout << "1 vann" << endl;
else
cout << "2 vann" << endl;
} //vinst
if ((schack [0][2]==1 && schack[1][2]==1 && schack [2][2]==1) || (schack [0][2]== 2 && schack [1][2]==2 && schack [2][2]==2 ))
{ //vinst
gameover =true;
if (schack [0][0] == 1)
cout << "1 vann" << endl;
else
cout << "2 vann" << endl;
} //vinst
if ((schack [0][0]==1 && schack [1][1]==1 && schack [2][2]==1) || (schack [0][0]==2 && schack [1][1]==2 && schack [2][2]==2 ))
{ //vinst
gameover =true;
if (schack [0][0] == 1)
cout << "1 vann" << endl;
else
cout << "2 vann" << endl;
} //vinst
if ((schack [2][0]==1 && schack [1][1]==1 && schack [0][2]==1) || (schack [2][0]==2 && schack [1][1]==2 && schack [0][2]==2 ))
{ //vinst
gameover =true;
if (schack [0][0] == 1)
cout << "1 vann" << endl;
else
cout << "2 vann" << endl;
} //vinst
if (harvalt ==true)
{
if ( xtur == true)
xtur = false;
else
xtur = true;
}
harvalt=false; //dags för den andra att välja
} //gameover
return 0;
}//Slut på koden