1
Fork 0
mirror of https://github.com/Steffo99/iiiiil-gioco.git synced 2024-11-25 17:34:18 +00:00

Sistemato il problema del generatore.

This commit is contained in:
Steffo 2016-01-03 17:34:20 +01:00
parent bd8de3e71a
commit d732d781b0

View file

@ -326,7 +326,7 @@ class Player : public Entity
} }
return 0; return 0;
} }
}; } player;
//Classe dei nemici //Classe dei nemici
class Enemy : public Entity class Enemy : public Entity
@ -484,7 +484,7 @@ void corridor(int start_x, int start_y, int end_x, int end_y, bool verticale)
} }
//Genera il livello //Genera il livello
void generate(Player* player, Enemy* list[ENEMIES_IN_LEVEL]) void generate(Enemy* list[ENEMIES_IN_LEVEL])
{ {
int corridor_x; int corridor_x;
int corridor_y; int corridor_y;
@ -509,10 +509,8 @@ void generate(Player* player, Enemy* list[ENEMIES_IN_LEVEL])
if(r == ROOMS - 1) if(r == ROOMS - 1)
{ {
map[corridor_x][corridor_y] = PLAYER; map[corridor_x][corridor_y] = PLAYER;
Player* created = new Player(); player.x = corridor_x;
created->x = corridor_x; player.y = corridor_y;
created->y = corridor_y;
player = created;
} }
} }
//Posizionamento nemici //Posizionamento nemici
@ -569,6 +567,7 @@ void generate(Player* player, Enemy* list[ENEMIES_IN_LEVEL])
placed_potions++; placed_potions++;
} }
} }
cout << player.x << '|' << player.y;
} }
//Processa il resto di un turno, dopo il movimento del giocatore. //Processa il resto di un turno, dopo il movimento del giocatore.
@ -582,20 +581,19 @@ void tick(Enemy* list[ENEMIES_IN_LEVEL])
int main() int main()
{ {
Player* player; //Puntatore all'oggetto Giocatore
Enemy* list[ENEMIES_IN_LEVEL]; //Lista di tutti i nemici nel livello Enemy* list[ENEMIES_IN_LEVEL]; //Lista di tutti i nemici nel livello
srand(0); //TODO: Rendere il seed modificabile...? srand(0); //TODO: Rendere il seed modificabile...?
//Ciclo del gioco //Ciclo del gioco
while(true) while(true)
{ {
init(); init();
generate(player, list); generate(list);
draw(); //draw();
cout << player->x << '|' << player->y; cout << ' ' << player.x << '|' << player.y;
//Ciclo di un livello //Ciclo di un livello
while(true) while(true)
{ {
int trigger = player->move(); int trigger = player.move();
if(trigger == 1) //Uscita toccata if(trigger == 1) //Uscita toccata
{ {
break; break;