debugger main and generator

This commit is contained in:
Anselme 2015-01-12 23:32:49 +01:00
parent a82e9bef82
commit 41ba6b25c7
3 changed files with 34 additions and 23 deletions

View File

@ -1,16 +1,18 @@
CC=gcc
LIB=-lSDL -lm -L./lib
FLAGS=-Wall
ifdef SystemRoot
RM=del /Q
FixPath=$(subst /,\,$1)
BINARY=PixelWars.exe
LIB=-lSDL -lm -L./lib
FLAGS=-Wall -I./include
else
ifeq ($(shell uname), Linux)
RM=rm -f
FixPath=$1
BINARY=PixelWars
LIB=-lSDL -lm
FLAGS=-Wall
endif
endif
@ -22,7 +24,7 @@ purple : purple.o
main : main.o generator.o
$(BINARY) : orange purple main
$(BINARY) : orange.o purple.o main.o generator.o
$(CC) main.o generator.o orange.o purple.o -o $(BINARY) $(LIB)
%.o: %.c

View File

@ -64,7 +64,7 @@ void create_map(t_pixel** map, t_team* teams, int w, int h){
//génération de la carte
for (i=0;i<width;i++){
for(j=0;j>height;j++){
for(j=0;j<height;j++){
if (i == 0 || j == 0){
map[i][j].type = BEDROCK;
}else{

47
main.c
View File

@ -17,8 +17,10 @@ int get_purple_size();
int get_orange_size();
void initWorld(){
int i;
int i, j;
// allocations
printf("Allocating memory...\n");
teams = malloc(sizeof(t_team)*NB_TEAMS);
for(i=0; i<NB_TEAMS; i++){
teams[i].team = i;
@ -39,12 +41,16 @@ void initWorld(){
teams[i].spawn_food = 0;
teams[i].spawn_count = 0;
}
map = malloc(sizeof(t_pixel)*WIDTH*HEIGHT);
map = (t_pixel**)malloc(sizeof(t_pixel*)*WIDTH);
for(i=0; i<WIDTH; i++)
map[i] = (t_pixel*)malloc(sizeof(t_pixel)*HEIGHT);
// generate map
printf("Generating map...\n");
create_map(map, teams, WIDTH, HEIGHT);
// create image from map
printf("Creating image from map...\n");
generateImg();
}
@ -146,27 +152,29 @@ void generateImg(){
for(i=0; i<WIDTH; i++){
for(j=0; j<HEIGHT; j++){
switch(map[i][j].type){
BEDROCK : color = 0xFF00FFFF; break;
GRASS : color = 0x00FF00FF; break;
ROCK : color = 0x000000FF; break;
IRON_ORE : color = 0x000000FF; break;
TREE : color = 0x000000FF; break;
BERRIES : color = 0x000000FF; break;
FOOD : color = 0x000000FF; break;
WOOD : color = 0x000000FF; break;
STONE : color = 0x000000FF; break;
IRON : color = 0x000000FF; break;
CORPSE : color = 0x000000FF; break;
DUDE : color = 0x000000FF; break;
SPAWN : color = 0x000000FF; break;
WALL : color = 0x000000FF; break;
ROAD : color = 0x000000FF; break;
SWORD : color = 0x000000FF; break;
SIGN : color = 0x000000FF; break;
case BEDROCK : color = 0x101020; break;
case GRASS : color = 0x004400; break;
case ROCK : color = 0x444444; break;
case IRON_ORE : color = 0x402020; break;
case TREE : color = 0x000F0F; break;
case BERRIES : color = 0x005F00; break;
case FOOD : color = 0x000000; break;
case WOOD : color = 0x000000; break;
case STONE : color = 0x000000; break;
case IRON : color = 0x000000; break;
case CORPSE : color = 0x000000; break;
case DUDE : color = 0x000000; break;
case SPAWN : color = 0xFFFFFF; break;
case WALL : color = 0x000000; break;
case ROAD : color = 0x000000; break;
case SWORD : color = 0x000000; break;
case SIGN : color = 0x000000; break;
default : color = 0x0000FF; break; // bleu absolu = bug
}
putpixel(img, i, j, color);
//img->pixels[j * WIDTH + i] = color;
}
printf("\n");
}
}
@ -260,6 +268,7 @@ int MAIN( int argc, char** argv )
printf("Starting Pixel Wars on %s\n", OS);
initSDL();
initWorld();
SDL_Flip(img);
while (!keystate[SDLK_ESCAPE] && !over){
temps = SDL_GetTicks();