38 lines
868 B
C
38 lines
868 B
C
#ifndef CROCPARTY_SYS_DATA_H
|
|
#define CROCPARTY_SYS_DATA_H
|
|
|
|
#include <stdint.h>
|
|
|
|
#define SYS_COLOR_TRANSPARENT 255
|
|
#define SYS_COLOR_N 256
|
|
#define SYS_SPRITE_H 8
|
|
#define SYS_SPRITE_W 8
|
|
|
|
typedef int32_t sys_i32;
|
|
typedef uint8_t sys_color;
|
|
typedef uint8_t sys_maptile;
|
|
typedef uint32_t sys_screen_color;
|
|
typedef uint64_t sys_glyph;
|
|
typedef struct {
|
|
sys_color pixels[SYS_SPRITE_H][SYS_SPRITE_W];
|
|
} sys_sprite;
|
|
typedef struct {
|
|
sys_sprite* sprites;
|
|
uint32_t width;
|
|
uint32_t height;
|
|
} sys_spritesheet;
|
|
typedef struct {
|
|
sys_maptile* tiles;
|
|
uint32_t width;
|
|
uint32_t height;
|
|
} sys_map;
|
|
|
|
sys_screen_color sys_make_screen_color(uint8_t r, uint8_t g, uint8_t b);
|
|
|
|
sys_i32 sys_max_i32(sys_i32 x, sys_i32 y);
|
|
sys_i32 sys_min_i32(sys_i32 x, sys_i32 y);
|
|
sys_i32 sys_abs_i32(sys_i32 x);
|
|
sys_i32 sys_sgn_i32(sys_i32 x);
|
|
|
|
#endif // CROCPARTY_SYS_DATA_H
|