zkwul/include/main.h

33 lines
784 B
C

#pragma once
#define LEVEL_NB 3
#define LEVEL_SIZE 16
#define TILE_SIZE 12
#define PLAYER_SIZE 10
/* struct for a pair of int values */
typedef struct Vec2 {
int x, y;
} Vec2;
/* struct for a pair of float values */
typedef struct FVec2 {
float x, y;
} FVec2;
/* struct for player's data */
typedef struct Player {
Vec2 pos;
Vec2 spawn;
FVec2 frac;
} Player;
/* used for tiles */
typedef int tile_t;
Vec2 search(tile_t x, tile_t level[LEVEL_SIZE][LEVEL_SIZE]);
int collide_pixel(Vec2 pos, tile_t obj, tile_t level[LEVEL_SIZE][LEVEL_SIZE]);
int collide(Vec2 pos, int h, tile_t obj, tile_t level[LEVEL_SIZE][LEVEL_SIZE]);
int object_delete(Vec2 pos, tile_t obj, tile_t level[LEVEL_SIZE][LEVEL_SIZE]);
Player player_reset(Player player, tile_t level[LEVEL_SIZE][LEVEL_SIZE]);