/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* cub3d.h :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: rbousset +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/14 17:20:11 by rbousset #+# #+# */ /* Updated: 2020/02/14 17:20:12 by rbousset ### ########lyon.fr */ /* */ /* ************************************************************************** */ # ifndef CUB3D_H # define CUB3D_H #include #include #include #include /* ** ret vals: ** 1: no argv[1] ** 2: failed structs init ** 3: failed mlx init ** 4: map error ** 5: no map */ int8_t ft_init_cub3d(t_cub **clist); t_map *ft_init_map(void); void ft_wall_tex_init(t_cub *clist); void ft_choose_tex(t_cub *clist); void ft_hooks_and_loops(t_win *wl, t_cub *cl); int ft_key_event(int keycode, t_cub *clist); int ft_click_close(int keycode, t_cub *clist); int ft_exit(uint8_t exit_code, t_cub *clist); void ft_draw_square(int a, int b, int rgb, t_cub *clist); void ft_parse_map(const char *map_path, t_cub *clist); int8_t ft_select_get(char **words, t_cub *clist); int8_t ft_get_screen_size(t_win *wlist); int8_t ft_get_res(char **words, t_cub *clist); int8_t ft_get_tex_no(char **words, t_cub *clist); int8_t ft_get_tex_so(char **words, t_cub *clist); int8_t ft_get_tex_ea(char **words, t_cub *clist); int8_t ft_get_tex_we(char **words, t_cub *clist); int8_t ft_get_sprite(char **words, t_cub *clist); int8_t ft_get_f_color(char **words, t_cub *clist); int8_t ft_get_c_color(char **words, t_cub *clist); int ft_get_map_first_line(char *line, t_cub *clist); int ft_get_map_core(int fd, t_cub *clist); void ft_get_player_spawn(t_player *plist, t_cub *clist); void ft_set_minimap_scale(t_cub *clist); int ft_check_missing(t_cub *clist); int8_t ft_check_map_line(char *line, uint8_t l, t_cub *clist); size_t ft_get_line_len(char *line); int ft_missing_error(const char *err, t_cub *clist); uint8_t ft_free_words(char **words); int ft_map_error(const char *errmsg, t_cub *clist); int ft_init_winlx(t_cub *clist); void ft_draw_scene(t_cub *clist); void ft_print_list(t_cub *clist); uint32_t ft_rgb_to_hex(t_rgb rgb); t_ray ft_init_s_ray(void); void ft_detect(t_cub *cl); int8_t ft_draw_verline(t_cub *cl, int32_t x, int32_t y1, int32_t y2); void ft_castray(t_cub *cl); void ft_draw_map(char **map, t_cub *clist); int ft_w_key(t_cub *clist); int ft_a_key(t_cub *clist); int ft_s_key(t_cub *clist); int ft_d_key(t_cub *clist); int ft_f1_key(t_cub *clist); int ft_left_key(t_cub *clist); int ft_right_key(t_cub *clist); int ft_key_release(int keycode, t_cub *clist); int8_t ft_check_ext(const char *filep, const char *ext); int32_t ft_convert_keycode(const int32_t tmp_code); int ft_key_loop(t_cub *cl); void ft_draw_circle(int32_t a, int32_t b, int32_t color, t_cub *cl); void ft_draw_texture(t_cub *cl, int x, int y, int tex_y); void ft_calc_tex(t_cub *clist); # endif