#ifndef MAP_H #define MAP_H #include "common.h" // Check if a tile is walkable floor int is_floor(const Map *map, int x, int y); // Get room center coordinates void get_room_center(Room *room, int *cx, int *cy); // Generate a new dungeon floor void dungeon_generate(Dungeon *d, Map *map, int floor_num); // Initialize map to all walls void map_init(Map *map); // Get a random floor tile position void get_random_floor_tile(Map *map, int *x, int *y, int attempts); // Visibility / Fog of War int is_in_view_range(int x, int y, int view_x, int view_y, int range); int has_line_of_sight(const Map *map, int x1, int y1, int x2, int y2); void calculate_visibility(Map *map, int x, int y); int can_see_entity(const Map *map, int from_x, int from_y, int to_x, int to_y, int range); #endif // MAP_H