Dodawanie jednostek do weza
Ostatnio zmodyfikowano 2015-05-16 23:21
arek213 Temat założony przez niniejszego użytkownika |
Dodawanie jednostek do weza » 2015-05-16 19:03:19 Czy jest ktoś w stanie mi pomóc jak powiększać węża jak natrafi na jedzenie ? Chodzi o ten moment: if( waz.poz_y == jablko.poz_y && waz.poz_x == jablko.poz_x ) #include <iostream> #include <windows.h> #include<stdlib.h> #include<conio.h> #include<vector>
using namespace std;
class Plansza { private: char sciana = 219; public: char tablica[ 23 ][ 70 ]; void wypelnij() { for( int i = 0; i < 23; i++ ) { for( int j = 0; j < 70; j++ ) { tablica[ i ][ j ] = 0; } } for( int j = 0; j < 70; j++ ) { tablica[ 0 ][ j ] = sciana; } for( int i = 1; i < 23; i++ ) { tablica[ i ][ 0 ] = sciana; tablica[ i ][ 69 ] = sciana; } for( int j = 0; j < 70; j++ ) { tablica[ 22 ][ j ] = sciana; } } void rysuj() const { for( int i = 0; i < 23; i++ ) { for( int j = 0; j < 70; j++ ) { cout << tablica[ i ][ j ]; } cout << endl; } } }; class Potwor { private: int wynik = 0; public: char znak = 219; int poz_x; int poz_y; Potwor( int x, int y ) : poz_x( x ) , poz_y( y ) { }; void dodaj() { wynik += 1; } };
class Jedzenie { public: char znak = '@'; int poz_x; int poz_y; Jedzenie( int x, int y ) : poz_x( x ) , poz_y( y ) { }; };
int main() { Plansza mapa; Jedzenie jablko( 40, 15 ); mapa.wypelnij(); Potwor waz( 30, 20 ); mapa.tablica[ jablko.poz_y ][ jablko.poz_x ] = jablko.znak; mapa.tablica[ waz.poz_y ][ waz.poz_x ] = waz.znak; system( "cls" ); mapa.rysuj(); for(;; ) { if( getch() == 224 ) { switch( getch() ) { case 80: waz.poz_y++; break; case 72: waz.poz_y--; break; case 75: waz.poz_x--; break; case 77: waz.poz_x++; break; } if( waz.poz_y == 22 || waz.poz_y == 0 || waz.poz_x == 0 || waz.poz_x == 69 ) { system( "cls" ); cout << "KONIEC GRY"; exit( 0 ); } if( waz.poz_y == jablko.poz_y && waz.poz_x == jablko.poz_x ) { } mapa.tablica[ waz.poz_y ][ waz.poz_x ] = waz.znak; system( "cls" ); mapa.rysuj(); } } return 0; }
|
|
pekfos |
» 2015-05-16 20:47:47 Lista elementów węża. |
|
arek213 Temat założony przez niniejszego użytkownika |
» 2015-05-16 21:08:23 Myślałem nad wektorem lecz nie wie jak to zaimplementować. |
|
pekfos |
» 2015-05-16 21:17:11 To poszukaj.. |
|
Quirinnos |
» 2015-05-16 23:21:48 Najprościej: robisz sobie listę, czy tam vector, który trzyma elementy węża (współrzędne). Głowa węża to pierwszy element tej listy. I jeśli pozycja głowy == pozycja jedzenia. To dodajesz element to wektora. A żeby wyrysować, to możesz przelecieć listę od końca do elementu przed głową i i'temu elementowi przypisać współrzędne i-1. |
|
« 1 » |