Skip to content

Commit

Permalink
add map corruption
Browse files Browse the repository at this point in the history
  • Loading branch information
mathieu-brl committed Apr 21, 2023
1 parent 36b9107 commit 6fa8438
Show file tree
Hide file tree
Showing 6 changed files with 89 additions and 44 deletions.
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ SRC = src/main.c \
\
src/fight/create_fight.c \
src/fight/fight.c \
src/fight/trapped_tile.c \
src/fight/corrupt_map.c \
\
src/button/create_button.c \
src/button/display_button.c \
Expand Down Expand Up @@ -157,7 +157,7 @@ SRC = src/main.c \
OBJ = $(SRC:.c=.o)

CC = gcc
CFLAGS = -Wall -Wextra
CFLAGS = -Wall -Wextra -g3
LIB = -L./lib -lmy_string -lmy_printf -lmy_stdlib -lm
LDFLAGS = -lcsfml-graphics -lcsfml-system -lcsfml-window -lcsfml-audio $(LIB)

Expand All @@ -170,7 +170,7 @@ all: $(EXE)

$(EXE): $(OBJ)
@make -C ./lib
$(CC) -o $(EXE) $(SRC) $(LDFLAGS)
$(CC) -o $(EXE) $(SRC) $(LDFLAGS) -g3

clean:
@rm -rf $(OBJ)
Expand Down
2 changes: 2 additions & 0 deletions include/prototype.h
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,8 @@
/* fight */
fight_t *create_fight(void);
int destroy_fight(fight_t *fight);

int corrupt_map(app_t *app);
int trapped_tile(app_t *app);
int fight(app_t *app);

Expand Down
58 changes: 29 additions & 29 deletions maps/Maze/map_2.csv
Original file line number Diff line number Diff line change
@@ -1,31 +1,31 @@
20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20
20,67,20,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,20
20,-1,20,-1,20,-1,20,20,20,-1,20,20,20,20,20,-1,20,-1,20,-1,20,20,20,-1,20,20,20,-1,20,-1,20
20,-1,20,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20
20,-1,20,20,20,20,20,-1,20,-1,20,-1,20,-1,20,-1,20,20,20,-1,20,20,20,20,20,-1,20,20,20,-1,20
20,-1,20,-1,-1,-1,-1,-1,20,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,-1,-1,-1,-1,20
20,-1,20,-1,20,-1,20,20,20,-1,20,-1,20,20,20,20,20,20,20,-1,20,20,20,-1,20,20,20,20,20,20,20
20,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,20
20,-1,20,-1,20,20,20,-1,20,20,20,-1,20,-1,20,20,20,-1,20,20,20,20,20,20,20,-1,20,-1,20,-1,20
20,-1,-1,-1,-1,-1,20,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,20,-1,20,-1,-1,-1,20,-1,20
20,-1,20,20,20,-1,20,-1,20,-1,20,-1,20,20,20,-1,20,20,20,-1,20,-1,20,-1,20,20,20,-1,20,-1,20
20,-1,20,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,20,-1,20
20,20,20,-1,20,-1,20,-1,20,-1,20,-1,20,20,20,20,20,-1,20,-1,20,20,20,20,20,20,20,20,20,-1,20
20,-1,-1,-1,20,-1,20,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,-1,-1,20,-1,20,-1,-1,-1,20
20,20,20,-1,20,20,20,-1,20,-1,20,20,20,-1,20,-1,20,-1,20,20,20,-1,20,20,20,-1,20,20,20,-1,20
20,-1,-1,-1,-1,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,20
20,-1,20,20,20,20,20,-1,20,-1,20,20,20,-1,20,20,20,20,20,20,20,-1,20,20,20,-1,20,-1,20,-1,20
20,-1,20,-1,-1,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,20,-1,20,-1,20
20,-1,20,20,20,-1,20,-1,20,-1,20,20,20,20,20,20,20,-1,20,-1,20,20,20,-1,20,20,20,-1,20,20,20
20,-1,20,-1,-1,-1,20,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20
20,-1,20,20,20,-1,20,-1,20,20,20,20,20,20,20,-1,20,20,20,-1,20,20,20,20,20,-1,20,-1,20,-1,20
20,-1,20,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,20
20,-1,20,-1,20,20,20,-1,20,20,20,20,20,20,20,20,20,-1,20,20,20,-1,20,-1,20,20,20,20,20,-1,20
20,-1,20,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,20
20,20,20,20,20,-1,20,20,20,20,20,-1,20,-1,20,-1,20,20,20,-1,20,-1,20,-1,20,-1,20,20,20,20,20
20,-1,-1,-1,20,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,20
20,20,20,-1,20,-1,20,-1,20,20,20,20,20,-1,20,-1,20,-1,20,20,20,-1,20,-1,20,20,20,20,20,20,20
20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,20
20,-1,20,-1,20,20,20,20,20,-1,20,20,20,-1,20,-1,20,20,20,20,20,20,20,-1,20,-1,20,20,20,-1,20
20,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,20
20,67,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,20
20,-1,20,20,20,-1,20,20,20,-1,20,20,20,20,20,20,20,-1,20,20,20,20,20,-1,20,20,20,-1,20,20,20
20,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,20
20,-1,20,-1,20,-1,20,20,20,-1,20,20,20,-1,20,-1,20,20,20,-1,20,-1,20,20,20,20,20,20,20,20,20
20,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20
20,-1,20,-1,20,20,20,-1,20,20,20,-1,20,20,20,20,20,-1,20,-1,20,-1,20,20,20,20,20,-1,20,20,20
20,-1,-1,-1,20,-1,20,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,-1,-1,20
20,-1,20,-1,20,-1,20,-1,20,-1,20,20,20,-1,20,20,20,-1,20,20,20,-1,20,-1,20,-1,20,20,20,-1,20
20,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,20
20,-1,20,20,20,20,20,-1,20,-1,20,20,20,20,20,-1,20,20,20,20,20,-1,20,-1,20,20,20,-1,20,20,20
20,-1,20,-1,-1,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,20
20,20,20,20,20,20,20,-1,20,-1,20,20,20,-1,20,20,20,-1,20,20,20,-1,20,20,20,-1,20,-1,20,-1,20
20,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,20
20,20,20,-1,20,20,20,20,20,-1,20,-1,20,20,20,-1,20,-1,20,20,20,-1,20,-1,20,20,20,20,20,20,20
20,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,20
20,20,20,-1,20,20,20,20,20,-1,20,-1,20,-1,20,20,20,-1,20,-1,20,-1,20,-1,20,-1,20,20,20,20,20
20,-1,-1,-1,-1,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,20,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,20
20,20,20,20,20,20,20,-1,20,20,20,-1,20,-1,20,20,20,-1,20,20,20,20,20,20,20,-1,20,-1,20,20,20
20,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20
20,-1,20,20,20,-1,20,20,20,-1,20,20,20,-1,20,-1,20,-1,20,20,20,20,20,20,20,20,20,-1,20,-1,20
20,-1,-1,-1,20,-1,20,-1,20,-1,-1,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,20
20,-1,20,20,20,20,20,-1,20,-1,20,20,20,-1,20,-1,20,-1,20,-1,20,20,20,20,20,20,20,20,20,-1,20
20,-1,20,-1,-1,-1,-1,-1,-1,-1,-1,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20
20,-1,20,-1,20,20,20,20,20,20,20,-1,20,-1,20,20,20,-1,20,-1,20,20,20,-1,20,-1,20,20,20,-1,20
20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,-1,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,-1,-1,20
20,-1,20,-1,20,-1,20,-1,20,-1,20,20,20,20,20,20,20,-1,20,-1,20,-1,20,20,20,-1,20,-1,20,20,20
20,-1,20,-1,20,-1,-1,-1,20,-1,-1,-1,20,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,-1,-1,20,-1,-1,-1,20
20,20,20,20,20,-1,20,-1,20,20,20,20,20,-1,20,20,20,-1,20,20,20,-1,20,-1,20,-1,20,20,20,-1,20
20,-1,-1,-1,-1,-1,20,-1,-1,-1,-1,-1,20,-1,-1,-1,-1,-1,-1,-1,20,-1,20,-1,20,-1,20,-1,-1,-1,20
20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,-1,66
44 changes: 44 additions & 0 deletions src/fight/corrupt_map.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
/*
** EPITECH PROJECT, 2023
** B-MUL-200-LYN-2-1-myrpg-mathieu.borel
** File description:
** trapped_tile.c
*/

#include "../../include/prototype.h"

static int corrupt_map_tile(app_t *app, tile_t *tile)
{
if (tile->state != SOLID)
return 0;
if (random_randint(0, 100000) != 0)
return 0;
sfTexture *texture = get_texture(app->maps->map_object, 58);
sfSprite_setTexture(tile->tile, texture, sfFalse);
return 0;
}

static int corrupt_map_layer(app_t *app, layer_t *layer)
{
sfVector2i position = {0, 0};
while (layer->layer[position.y] != NULL) {
position.x = 0;
while (layer->layer[position.y][position.x] != NULL) {
corrupt_map_tile(app, layer->layer[position.y][position.x]);
position.x += 1;
}
position.y += 1;
}
return 0;
}

int corrupt_map(app_t *app)
{
map_t *map = app->maps->selected_map;
int i = 0;
while (map->layer[i] != NULL) {
corrupt_map_layer(app, map->layer[i]);
i += 1;
}
return 0;
}
3 changes: 1 addition & 2 deletions src/fight/fight.c
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

int fight(app_t *app)
{
if (app->fight->is_fighting == 1)
trapped_tile(app);
corrupt_map(app);
return 0;
}
20 changes: 10 additions & 10 deletions src/fight/trapped_tile.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,27 +7,27 @@

#include "../../include/prototype.h"

static int trapped_tile_color(app_t *app, tile_t *tile)
static int corrupt_layer(app_t *app, tile_t *tile)
{
int change = 0;
sfColor color = sfSprite_getColor(tile->tile);
color.r = 100;
color.g = 0;
color.b = 0;
color.a = 100;
sfSprite_setColor(tile->tile, color);
printf("%d - %d - %d - %d\n", color.r, color.g, color.b, color.a);
if (tile->state != SOLID)
return 0;
if (random_randint(0, 100000) != 50000)
return 0;
sfTexture *texture = get_texture(app->maps->map_object, 58);
sfSprite_setTexture(tile->tile, texture, sfFalse);
return 0;
}

int trapped_tile(app_t *app)
int corrupt_map(app_t *app)
{
int i = app->player->layer - 1;
sfVector2i position = {0, 0};
layer_t *layer = app->maps->selected_map->layer[i];
while (layer->layer[position.y] != NULL) {
position.x = 0;
while (layer->layer[position.y][position.x] != NULL) {
trapped_tile_color(app, layer->layer[position.y][position.y]);
trapped_tile_color(app, layer->layer[position.y][position.x]);
position.x += 1;
}
position.y += 1;
Expand Down

0 comments on commit 6fa8438

Please sign in to comment.