/*
** EPITECH PROJECT, 2018
** task01
** File description:
** I do task
*/

#ifndef __S_GAME_H__
# define __S_GAME_H__

#include "lib/my_stddef.h"
typedef struct player_s
{
	intmax_t x;
	intmax_t y;
	intmax_t start_x;
	intmax_t start_y;
	int8_t dx;
	int8_t dy;
	uint16_t key;
	uint8_t action;
	int counter_jump;
	int frame_counter;
	int dead_counter;
	int nb_dead;
} player_t;

typedef struct object_s
{
	int sleep;
	int dx;
	int dy;
	int x;
	int y;
} object_t;

typedef struct thrower_s
{
	intmax_t x;
	intmax_t y;
	uint8_t action;
	object_t **object;
} thrower_t;

typedef struct wall_s
{
	intmax_t x;
	intmax_t start_x;
	intmax_t start_y;
} wall_t;

typedef struct camera_s
{
	intmax_t x;
	intmax_t y;
} camera_t;

typedef struct message_s
{
	int x;
	int y;
	uint8_t action;
	int trigger_data;
	void *message;
	uint32_t timer_after;
	uint32_t timer_message;
} message_t;

typedef struct level_s
{
	uint8_t *map;
	int file_width;
	int file_height;
	int height;
	int width;
	int thrower_counter;
	int timer_stone;
	int timer_bullet;
} level_t;

#endif
