Skip to content
Snippets Groups Projects
Commit 90ad32de authored by bohan2u's avatar bohan2u
Browse files

Ajout sprite zombie et debut d'affichage des munitions de la sante et de numero de la manche

parent 7218a941
No related branches found
No related tags found
No related merge requests found
Showing
with 73 additions and 1 deletion
...@@ -125,6 +125,10 @@ void refresh_graphics(SDL_Renderer *renderer, world_t *world,resources_t *resour ...@@ -125,6 +125,10 @@ void refresh_graphics(SDL_Renderer *renderer, world_t *world,resources_t *resour
{ {
destroy_textures(resources,world); destroy_textures(resources,world);
} }
apply_text(renderer, 5 , 5 , 100 , 25 ,"Manche :", resources->font);
apply_text(renderer, 5 , 30 , 100 , 25 ,"HP :", resources->font);
apply_text(renderer, 5 , 55 , 100 , 25 ,"Ammo :", resources->font);
} }
...@@ -204,6 +208,8 @@ void init_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *wo ...@@ -204,6 +208,8 @@ void init_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *wo
resources->powerUp = charger_image_transparente("../resources/PowerUp_Vitesse.bmp", renderer, 255,0,255); resources->powerUp = charger_image_transparente("../resources/PowerUp_Vitesse.bmp", renderer, 255,0,255);
resources->plane = charger_image_transparente("../resources/Plane.bmp", renderer, 255,0,255); resources->plane = charger_image_transparente("../resources/Plane.bmp", renderer, 255,0,255);
resources->font = load_font("../resources/arial.ttf",14);
} }
void init_enemies_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *world) void init_enemies_ressources(SDL_Renderer *renderer, resources_t *resources, world_t *world)
...@@ -264,6 +270,8 @@ void destroy_textures(resources_t *resources, world_t *world) ...@@ -264,6 +270,8 @@ void destroy_textures(resources_t *resources, world_t *world)
SDL_DestroyTexture(resources->enemy); SDL_DestroyTexture(resources->enemy);
SDL_DestroyTexture(resources->plane); SDL_DestroyTexture(resources->plane);
SDL_DestroyTexture(resources->powerUp); SDL_DestroyTexture(resources->powerUp);
clean_font(resources->font);
} }
...@@ -519,4 +527,57 @@ void load_texture_plane(resources_t *resources, SDL_Renderer *renderer, world_t ...@@ -519,4 +527,57 @@ void load_texture_plane(resources_t *resources, SDL_Renderer *renderer, world_t
SDL_RenderCopy(renderer, resources->plane, NULL, &world->supplying.DestPlane); SDL_RenderCopy(renderer, resources->plane, NULL, &world->supplying.DestPlane);
} }
/**
* \brief La fonction initialise l'environnement TTF
*/
void init_ttf(){
if(TTF_Init()==-1) {
printf("TTF_Init: %s\n", TTF_GetError());
}
}
/**
* \brief La fonction charge une police
* \param path le chemin du fichier correpondant à la police
* \param font_size la taille de la police
* \return la police chargée
*/
TTF_Font * load_font(const char *path, int font_size){
TTF_Font *font = TTF_OpenFont(path, font_size);
if(font == NULL){
fprintf(stderr, "Erreur pendant chargement font: %s\n", SDL_GetError());
}
return font;
}
/**
* \brief La fonction applique un texte dans une certaine police sur le renderer à une certaine position et avec une certaine dimension
* \param renderer le renderer
* \param x abscisse du coin en haut à gauche du texte
* \param y son abscisse
* \param w la largeur du message
* \param h sa hauteur
* \param text le texte à afficher
* \param font la police
*/
void apply_text(SDL_Renderer *renderer,int x, int y, int w, int h, const char *text, TTF_Font *font){
SDL_Color color = { 255, 0, 0 };
SDL_Surface* surface = TTF_RenderText_Solid(font, text, color);
//printf("FFFFF\n");
SDL_Texture* texture = SDL_CreateTextureFromSurface(renderer, surface);
SDL_Rect dstrect2 = {x, y, w, h};
SDL_RenderCopy(renderer, texture, NULL, &dstrect2);
}
void clean_font(TTF_Font * font){
TTF_CloseFont(font);
}
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
#define __DISPLAY_H__ #define __DISPLAY_H__
#include <SDL2/SDL.h> #include <SDL2/SDL.h>
#include <SDL2/SDL_ttf.h>
#include "world_data.h" #include "world_data.h"
struct resources_s struct resources_s
...@@ -32,6 +33,7 @@ struct resources_s ...@@ -32,6 +33,7 @@ struct resources_s
SDL_Texture* bullet; /*!< resources liée à l'image des balles. */ SDL_Texture* bullet; /*!< resources liée à l'image des balles. */
TTF_Font* font;
}; };
typedef struct resources_s resources_t; typedef struct resources_s resources_t;
...@@ -84,4 +86,12 @@ void load_texture_powerUp(resources_t *resources, SDL_Renderer *renderer, world_ ...@@ -84,4 +86,12 @@ void load_texture_powerUp(resources_t *resources, SDL_Renderer *renderer, world_
void load_texture_plane(resources_t *resources, SDL_Renderer *renderer, world_t *world); void load_texture_plane(resources_t *resources, SDL_Renderer *renderer, world_t *world);
void init_ttf();
TTF_Font * load_font(const char *path, int font_size);
void apply_text(SDL_Renderer *renderer,int x, int y, int w, int h, const char *text, TTF_Font *font);
void clean_font(TTF_Font * font);
#endif #endif
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
void init(SDL_Window **window, SDL_Renderer ** renderer, resources_t *resources, world_t * world) void init(SDL_Window **window, SDL_Renderer ** renderer, resources_t *resources, world_t * world)
{ {
init_data(world); init_data(world);
init_ttf();
init_ressources(*renderer,resources,world); init_ressources(*renderer,resources,world);
} }
......
/Vie du joueur au début /Vie du joueur au début
10 10
/Nombre d'ennemis au début /Nombre d'ennemis au début
1 4
/Nombre d'ennemis en plus à chaque manche /Nombre d'ennemis en plus à chaque manche
1 1
/Nombre de balles /Nombre de balles
......
resources/SpriteZombie/Type1/1-Type1D.bmp

655 KiB

resources/SpriteZombie/Type1/1-Type1G.bmp

655 KiB

resources/SpriteZombie/Type1/10-Type1D.bmp

655 KiB

resources/SpriteZombie/Type1/10-Type1G.bmp

655 KiB

resources/SpriteZombie/Type1/2-Type1D.bmp

655 KiB

resources/SpriteZombie/Type1/2-Type1G.bmp

655 KiB

resources/SpriteZombie/Type1/3-Type1D.bmp

655 KiB

resources/SpriteZombie/Type1/3-Type1G.bmp

655 KiB

resources/SpriteZombie/Type1/4-Type1D.bmp

655 KiB

resources/SpriteZombie/Type1/4-Type1G.bmp

655 KiB

resources/SpriteZombie/Type1/5-Type1D.bmp

655 KiB

resources/SpriteZombie/Type1/5-Type1G.bmp

655 KiB

resources/SpriteZombie/Type1/6-Type1D.bmp

655 KiB

resources/SpriteZombie/Type1/6-Type1G.bmp

655 KiB

resources/SpriteZombie/Type1/7-Type1D.bmp

655 KiB

resources/SpriteZombie/Type1/7-Type1G.bmp

655 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment