cub3d/inc/game_menu.h

36 lines
1.8 KiB
C

/* ************************************************************************** */
/* */
/* :::::::: */
/* game_menu.h :+: :+: */
/* +:+ */
/* By: qmennen <qmennen@student.codam.nl> +#+ */
/* +#+ */
/* Created: 2025/05/27 15:07:48 by qmennen #+# #+# */
/* Updated: 2025/06/10 19:30:12 by whaffman ######## odam.nl */
/* */
/* ************************************************************************** */
#ifndef GAME_MENU_H
# define GAME_MENU_H
# include "cub3d.h"
void menu_display(t_menu *menu, t_screen *screen);
void draw_end_screen(t_game_manager *manager, t_menu *menu);
t_menu *create_end_screen(t_game_manager *manager);
mlx_image_t *menu_load_background(mlx_t *mlx, char *background_path);
void menu_set_background(t_menu *menu, mlx_t *mlx, char *b_path);
t_menu *create_main_menu(t_game_manager *manager);
t_menu *menu_create(t_game_manager *manager, char *b_path,
const t_menu_item *options[]);
t_menu_item *menu_item_create(t_screen *screen, const char *text,
void (*act)(struct s_menu_item *item, t_game_manager *manager));
void menu_free(t_menu *menu, t_screen *screen);
void menu_toggle(t_menu *menu);
char *get_score_prefix(int index);
char *get_score_suffix(int index);
void draw_score_line(
mlx_t *mlx, mlx_image_t **img, char *text, t_vec2_int pos);
char *get_score_text(char *prefix, char *suffix, int score);
#endif