2021-05-04 17:41:30 +00:00
|
|
|
#pragma once
|
|
|
|
#include "system.h"
|
|
|
|
|
|
|
|
#define BLOCK_INVALID 0xF
|
|
|
|
|
|
|
|
typedef enum {
|
2021-07-26 15:53:18 +00:00
|
|
|
BLOCK_FLAG_COLLISION = (1 << 1)
|
2021-05-04 17:41:30 +00:00
|
|
|
} block_flags;
|
|
|
|
|
|
|
|
#include "blocks_info.h"
|
|
|
|
|
2021-05-12 16:28:39 +00:00
|
|
|
int32_t blocks_setup(void);
|
|
|
|
void blocks_destroy(void);
|
|
|
|
|
2021-05-04 17:41:30 +00:00
|
|
|
uint8_t blocks_find(uint32_t biome, uint32_t kind);
|
|
|
|
|
|
|
|
char *blocks_get_name(uint8_t id);
|
|
|
|
char blocks_get_symbol(uint8_t id);
|
|
|
|
uint32_t blocks_get_flags(uint8_t id);
|
|
|
|
uint32_t blocks_get_biome(uint8_t id);
|
|
|
|
uint32_t blocks_get_kind(uint8_t id);
|
2021-07-26 19:06:49 +00:00
|
|
|
float blocks_get_drag(uint8_t id);
|
2021-05-12 16:28:39 +00:00
|
|
|
|
|
|
|
// NOTE(zaklaus): viewer-related functions
|
2021-07-18 18:30:27 +00:00
|
|
|
void *blocks_get_img(uint8_t id);
|
|
|
|
|
|
|
|
void blocks_build_chunk_tex(uint64_t id, uint8_t *blocks, size_t blocks_len, void *view);
|
|
|
|
void *blocks_get_chunk_tex(uint64_t id);
|
|
|
|
void blocks_remove_chunk_tex(uint64_t id);
|