Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<conio.h>
- #include<time.h>
- #include<windows.h>
- using namespace std;
- int player_1 = 0, player_2 = 0;
- int stop = 0;
- int liczydlo;
- float czas;
- float old_czas;
- int kierunek;
- int predkosc;
- int ball = 886;
- char key;
- int wolna;
- int hero1 = 847, hero1_1, hero1_2, hero1_3, hero1_4;
- int hero2 = 923, hero2_1, hero2_2, hero2_3, hero2_4;
- char map[ 1771 ];
- void nadpis( const int x, const int y )
- {
- HANDLE hCon = GetStdHandle( STD_OUTPUT_HANDLE );
- COORD coord = { x, y };
- SetConsoleCursorPosition( hCon, coord );
- }
- void CreateMap()
- {
- cout << char( 201 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 187 ) << endl;
- for( int i = 0; i < 23; i += 1 )
- {
- cout << char( 186 );
- for( int y = 0; y < 77; y += 1 )
- {
- cout << " ";
- }
- cout << char( 186 ) << endl;
- }
- cout << char( 200 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 205 ) << char( 188 ) << endl;
- wolna = 0;
- for( int a = 0; a < 23; a += 1 )
- {
- for( int b = 0; b < 77; b += 1 )
- {
- map[ wolna ] = ' ';
- wolna += 1;
- }
- }
- }
- void ruch()
- {
- if( key == 112 & hero2 != 230 ) { hero2 -= 77; }
- else if( key == 119 & hero1 != 154 ) { hero1 -= 77; }
- else if( key == 108 & hero2 != 1616 ) { hero2 += 77; }
- else if( key == 115 & hero1 != 1540 ) { hero1 += 77; }
- }
- void DrawMap()
- {
- int licz = 1;
- int licz2 = 1;
- wolna = 0;
- hero1_1 = hero1 - 77;
- hero1_2 = hero1_1 - 77;
- hero1_3 = hero1 + 77;
- hero1_4 = hero1_3 + 77;
- hero2_1 = hero2 - 77;
- hero2_2 = hero2_1 - 77;
- hero2_3 = hero2 + 77;
- hero2_4 = hero2_3 + 77;
- map[ hero1 ] = 1;
- map[ hero1_1 ] = 1;
- map[ hero1_2 ] = 1;
- map[ hero1_3 ] = 1;
- map[ hero1_4 ] = 1;
- map[ hero2 ] = 1;
- map[ hero2_1 ] = 1;
- map[ hero2_2 ] = 1;
- map[ hero2_3 ] = 1;
- map[ hero2_4 ] = 1;
- map[ ball ] = 15;
- for( int a = 0; a < 23; a += 1 )
- {
- nadpis( 1, licz );
- if( wolna != hero1 & wolna != hero1_1 & wolna != hero1_2 & wolna != hero1_3 & wolna != hero1_4 ) { map[ wolna ] = ' '; };
- if( wolna + 76 != hero2 & wolna + 76 != hero2_1 & wolna + 76 != hero2_2 & wolna + 76 != hero2_3 & wolna + 76 != hero2_4 ) { map[ wolna + 76 ] = ' '; };
- for( int b = 0; b < 77; b += 1 )
- {
- cout << map[ wolna ];
- wolna += 1;
- }
- licz += 1;
- }
- nadpis( 0, 25 );
- cout << " Player 1 : " << player_1;
- nadpis( 65, 25 );
- cout << player_2 << " : Player 2 " << endl;
- }
- void ruch_ball()
- {
- for( int ii = 0; ii < 77; ii += 1 )
- {
- if( ball == ii & kierunek == 1 ) { kierunek = 2; }
- if( ball == ii & kierunek == 3 ) { kierunek = 4; }
- }
- for( int iii = 1693; iii < 1771; iii += 1 )
- {
- if( ball == iii & kierunek == 2 ) { kierunek = 1; }
- if( ball == iii & kierunek == 4 ) { kierunek = 3; }
- }
- map[ ball ] = ' ';
- if( kierunek == 1 )
- {
- if( predkosc == 1 )
- {
- ball -= 1;
- liczydlo += 1;
- if( liczydlo == 4 )
- {
- ball -= 77;
- liczydlo = 0;
- }
- } else if( predkosc == 2 )
- {
- ball -= 1;
- liczydlo += 1;
- if( liczydlo == 2 )
- {
- ball -= 77;
- liczydlo = 0;
- }
- }
- } else if( kierunek == 2 )
- {
- if( predkosc == 1 )
- {
- ball -= 1;
- liczydlo += 1;
- if( liczydlo == 4 )
- {
- ball += 77;
- liczydlo = 0;
- }
- } else if( predkosc == 2 )
- {
- ball -= 1;
- liczydlo += 1;
- if( liczydlo == 2 )
- {
- ball += 77;
- liczydlo = 0;
- }
- }
- } else if( kierunek == 3 )
- {
- if( predkosc == 1 )
- {
- ball += 1;
- liczydlo += 1;
- if( liczydlo == 4 )
- {
- ball -= 77;
- liczydlo = 0;
- }
- } else if( predkosc == 2 )
- {
- ball += 1;
- liczydlo += 1;
- if( liczydlo == 2 )
- {
- ball -= 77;
- liczydlo = 0;
- }
- }
- } else if( kierunek == 4 )
- {
- if( predkosc == 1 )
- {
- ball += 1;
- liczydlo += 1;
- if( liczydlo == 4 )
- {
- ball += 77;
- liczydlo = 0;
- }
- } else if( predkosc == 2 )
- {
- ball += 1;
- liczydlo += 1;
- if( liczydlo == 2 )
- {
- ball += 77;
- liczydlo = 0;
- }
- }
- } else if( kierunek == 5 )
- {
- ball -= 1;
- } else if( kierunek == 6 )
- {
- ball += 1;
- }
- }
- void odbicie()
- {
- if( ball == hero1 + 1 )
- {
- kierunek = 6;
- } else if( ball == hero1_1 + 1 )
- {
- kierunek = 3;
- predkosc = 1;
- } else if( ball == hero1_2 + 1 )
- {
- kierunek = 3;
- predkosc = 2;
- } else if( ball == hero1_3 + 1 )
- {
- kierunek = 4;
- predkosc = 1;
- } else if( ball == hero1_4 + 1 )
- {
- kierunek = 4;
- predkosc = 2;
- }
- if( ball + 1 == hero2 - 1 )
- {
- kierunek = 5;
- } else if( ball == hero2_1 - 1 )
- {
- kierunek = 1;
- predkosc = 1;
- } else if( ball == hero2_2 - 1 )
- {
- kierunek = 1;
- predkosc = 2;
- } else if( ball == hero2_3 - 1 )
- {
- kierunek = 2;
- predkosc = 1;
- } else if( ball == hero2_4 - 1 )
- {
- kierunek = 2;
- predkosc = 2;
- }
- }
- void punkt()
- {
- int test = 0;
- for( int u = 0; u < 23; u += 1 )
- {
- if( ball == test ) { player_1 += 1; stop = 1; break; }
- else if( ball == test + 76 ) { player_2 += 1; stop = 1; break; }
- if( stop == 0 ) { test += 77; }
- }
- }
- void losuj()
- {
- time_t t;
- srand(( unsigned ) time( & t ) );
- int nr_los = rand() % 5 + 1;
- int nr_loss = rand() % 1 + 1;
- ball = 886;
- kierunek = nr_los;
- predkosc = nr_loss;
- nadpis( 30, 25 );
- cout << "Nacisnij Klawisz by dalej grac" << endl;
- getch();
- stop = 0;
- nadpis( 30, 25 );
- cout << " " << endl;
- }
- int main()
- {
- kierunek = 3;
- predkosc = 2;
- liczydlo = 0;
- cout << "Player 1 sterowanie: W - Gora, S - Dol" << endl << "Player 2 sterowanie: P - Gora, L - Dol" << endl << "Press Key To Start Game" << endl;
- getch();
- system( "cls" );
- CreateMap();
- old_czas = 0;
- do
- {
- czas = clock() / 125;
- if( czas > old_czas )
- {
- old_czas = czas;
- key = 0;
- if( kbhit() )
- {
- key = getch();
- }
- ruch_ball();
- ruch();
- DrawMap();
- odbicie();
- punkt();
- if( stop == 1 ) { losuj(); }
- }
- } while( key != 27 );
- cout << endl << char( 1 ) << char( 2 ) << endl;
- getch();
- return 0;
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement