#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <conio.h>
#include <ctime>
#include <windows.h>
#define WIELKOSC 20
using namespace std;
char pole[WIELKOSC][WIELKOSC];
int main()
{
int licznik_punktow=0;
for (int i=0; i<WIELKOSC; i++)
{
for (int k=0; k<WIELKOSC; k++)
pole[i][k]='1';
}
cout<<"nacisnij przycisk aby rozpocząc gre"<<endl;
char znak;
znak=getche();
if (znak)
{
pole[0][0]='2';
}
for (int i=0; i<WIELKOSC; i++)
{
for (int k=0; k<WIELKOSC; k++)
{
cout<<pole[i][k];
}
cout<<endl;
}
system( "cls" );
int x=0;
int y=0;
do
{
cout<< "Liczba punktow: "<<licznik_punktow<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
for (int i=0; i<WIELKOSC; i++)
{
for (int k=0; k<WIELKOSC; k++)
{
cout<<pole[i][k];
}
cout<<endl;
}
char ruch;
ruch=getche();
switch (ruch)
{
case 'w':
if(y>0)
{
if(pole[y][x]!='*')
{
pole[y][x]='1';
}
pole[y-1][x]='2';
y--;
}
else
{
goto porazka;
}
break;
case 's':
if(y<=WIELKOSC-2)
{
if(pole[y][x]!='*')
{
pole[y][x]='1';
}
pole[y+1][x]='2';
y++;
}
else
{
goto porazka;
}
break;
case 'a':
if(x>=0)
{
if(pole[y][x]!='*')
{
pole[y][x]='1';
}
pole[y][x-1]='2';
x--;
}
else
{
goto porazka;
}
break;
case 'd':
if (x<WIELKOSC-1)
{
if(pole[y][x]!='*')
{
pole[y][x]='1';
}
pole[y][x+1]='2';
x++;
}
else
{
goto porazka;
}
break;
default:
{
cout<<"nieprawidlowa komenda";
}
break;
case char(13):
{
pole[y][x]='*';
licznik_punktow++;
}
break;
}
cout<< "twoja liczba punktów, za zamalowane pola to:"<<licznik_punktow<<endl;
system( "cls" );
}
while(1);
porazka:
cout<<"WYSZEDLES POZA PLANSZE, PORAZKA";
return 0;
}
Tworzę prostą gierkę w c++. Idea jest taka, by za pomoca klawiszy "wasd" i entera "zamalować" jak najwięcej pół. Chcicałbym zrobić z tego gra w która mogłby grać 2 lub wiecej osob. Jak mogę napisac ten program, by gracze sterujący z tej samej klawiatury mogli "bez kolizji" grać na jednej klawiaturze? Jakieś pomysły jak mogę mierzyć czas? Cięzko będzie mi to robic, czyszcząc co ruch konsole. Czy da się powiekszyć okienko konsoli? Licze na pomoc. Pozdrawiam