diff --git a/travail_de_groupe/jeu_appren_par_renfo/src/monstre.c b/travail_de_groupe/jeu_appren_par_renfo/src/monstre.c index 7127a40f90b6bd623e232beb6f189741a085c10a..d04fdb184c5c45e19a4a67625886ca8c36ea41f0 100644 --- a/travail_de_groupe/jeu_appren_par_renfo/src/monstre.c +++ b/travail_de_groupe/jeu_appren_par_renfo/src/monstre.c @@ -13,7 +13,7 @@ void initMonster (){ monster.state= PEACEFULL; monster.healthPoint= 3; monster.speed=1; - monter.angle=0; + monster.angle=0; //monster.dammage } diff --git a/travail_de_groupe/jeu_appren_par_renfo/src/monstre.h b/travail_de_groupe/jeu_appren_par_renfo/src/monstre.h index 2a57147212e1bdf06fc8da007540b22ead2cd298..386dd411340da339cc5f4ed3ebe37a1284d87aa3 100644 --- a/travail_de_groupe/jeu_appren_par_renfo/src/monstre.h +++ b/travail_de_groupe/jeu_appren_par_renfo/src/monstre.h @@ -4,6 +4,7 @@ #include <stdlib.h> #include <time.h> #include <stdio.h> +#include "map.h" #define ANGRY 1 #define PEACEFULL 0 diff --git a/travail_de_groupe/jeu_appren_par_renfo/src/player.h b/travail_de_groupe/jeu_appren_par_renfo/src/player.h index 3fa04e2d43f1bed93f36c015c7e5f369f2428f16..d145184f083ea77030c47e489ec1595d8b861c79 100644 --- a/travail_de_groupe/jeu_appren_par_renfo/src/player.h +++ b/travail_de_groupe/jeu_appren_par_renfo/src/player.h @@ -1,6 +1,8 @@ #ifndef PLAYER_H #define PLAYER_H +#include "map.h" + #define ENTITIES_UP 0 #define ENTITIES_DOWN 1 #define ENTITIES_LEFT 2 diff --git a/travail_de_groupe/jeu_appren_par_renfo/src/render.c b/travail_de_groupe/jeu_appren_par_renfo/src/render.c index 8bc5d74fc0627e13f7e50d3cf7d99d6396718d3c..5ec13d32ba89944c6b193276574e8aefe5039a26 100644 --- a/travail_de_groupe/jeu_appren_par_renfo/src/render.c +++ b/travail_de_groupe/jeu_appren_par_renfo/src/render.c @@ -14,7 +14,7 @@ SDL_Rect ground; float htexture; int r, mx, my, dof; double rx, ry, xo, yo, distT; -double ra = player->angle - DR * FOV_ANGLE/4; +double ra; // end ray casting variables @@ -59,28 +59,29 @@ void endSDL(){ } void drawRays(int map[][MAP_WIDTH]){ + ra = player.angle - DR * FOV_ANGLE/4; if (ra < 0) ra -= 2*pi; if (ra > 2*pi) ra -= 2*pi; for (r = 0; r<NB_RAYS; r++){ // check horizontal rays dof = 0; - float disH = 100000, hx = player->x, hy = player->y; + float disH = 100000, hx = player.x, hy = player.y; float aTan = -1/tan(ra); if (ra > pi){ // looking up - ry = (((int)player->y>>6)<<6) - 0.0001; - rx = (player->y - ry) * aTan + player->x; + ry = (((int)player.y>>6)<<6) - 0.0001; + rx = (player.y - ry) * aTan + player.x; yo = -BLOCK_SIZE; xo = -yo*aTan; } if (ra<pi){ // looking down - ry = (((int)player->y>>6)<<6) + BLOCK_SIZE; - rx = (player->y - ry) * aTan + player->x; + ry = (((int)player.y>>6)<<6) + BLOCK_SIZE; + rx = (player.y - ry) * aTan + player.x; yo = BLOCK_SIZE; xo = -yo*aTan; } if (ra == pi){ - ry = player->y; - rx = player->x; + ry = player.y; + rx = player.x; dof = DOF; } while (dof < DOF){ @@ -90,7 +91,7 @@ void drawRays(int map[][MAP_WIDTH]){ if (map[my][mx] == 1){ hx = rx; hy = ry; - disH = sqrt((rx-player->x)*(rx-player->x) + (ry-player->y)*(ry-player->y)); + disH = sqrt((rx-player.x)*(rx-player.x) + (ry-player.y)*(ry-player.y)); dof = DOF; } } @@ -103,17 +104,17 @@ void drawRays(int map[][MAP_WIDTH]){ // check vertical rays dof = 0; - float disV = 100000, vx = player->x, vy = player->y; + float disV = 100000, vx = player.x, vy = player.y; float nTan = -tan(ra); if (ra > pi/2 && ra < 3*pi/2){ // looking left - rx = (((int)player->x>>6)<<6) - 0.0001; - ry = player->y + (player->x - rx) * nTan; + rx = (((int)player.x>>6)<<6) - 0.0001; + ry = player.y + (player.x - rx) * nTan; xo = -BLOCK_SIZE; yo = -xo*nTan; } if (ra<pi/2 || ra > 3*pi/2){ // looking right - rx = (((int)player->x>>6)<<6) + BLOCK_SIZE; - ry = player->y + (player->x - rx) * nTan; + rx = (((int)player.x>>6)<<6) + BLOCK_SIZE; + ry = player.y + (player.x - rx) * nTan; xo = BLOCK_SIZE; yo = -xo*nTan; } @@ -124,7 +125,7 @@ void drawRays(int map[][MAP_WIDTH]){ if (map[my][mx] == 1){ vx = rx; vy = ry; - disV = sqrt((rx-player->x)*(rx-player->x) + (ry-player->y)*(ry-player->y)); + disV = sqrt((rx-player.x)*(rx-player.x) + (ry-player.y)*(ry-player.y)); dof = DOF; } } @@ -149,7 +150,7 @@ void drawRays(int map[][MAP_WIDTH]){ if (ra < 0) ra += 2*pi; // draw column - float ca = player->angle - ra; + float ca = player.angle - ra; if (ca < 0) ca += 2*pi; if (ca > 2*pi) ca -= 2*pi; distT = distT * cos(ca); diff --git a/travail_de_groupe/jeu_appren_par_renfo/src/render.h b/travail_de_groupe/jeu_appren_par_renfo/src/render.h index 8d393cbb5c418c4e56a0b2f05f6856d26f909a29..c9365ed1df5b6c18f6f8aa28dd2bea25481a555b 100644 --- a/travail_de_groupe/jeu_appren_par_renfo/src/render.h +++ b/travail_de_groupe/jeu_appren_par_renfo/src/render.h @@ -4,6 +4,7 @@ #include "main.h" #include "gest_event.h" #include "map.h" +#include "player.h" #define FPS_TO_GET 60 #define CELL_SIZE 10