Files
dilemmaker/source/japi/rooms.cpp
2025-10-29 16:22:32 +01:00

65 lines
1.5 KiB
C++

#include "rooms.h"
#include <stdint.h>
#define COLOR_BLACK 0
#define COLOR_BRIGHT_BLACK 1
#define COLOR_BLUE 2
#define COLOR_BRIGHT_BLUE 3
#define COLOR_RED 4
#define COLOR_BRIGHT_RED 5
#define COLOR_MAGENTA 6
#define COLOR_BRIGHT_MAGENTA 7
#define COLOR_GREEN 8
#define COLOR_BRIGHT_GREEN 9
#define COLOR_CYAN 10
#define COLOR_BRIGHT_CYAN 11
#define COLOR_YELLOW 12
#define COLOR_BRIGHT_YELLOW 13
#define COLOR_WHITE 14
#define COLOR_BRIGHT_WHITE 15
namespace rooms
{
static const char *paletteMap[] = {
"black", "bright_black", "blue", "bright_blue",
"red", "bright_red", "magenta", "bright_magenta",
"green", "bright_green", "cyan", "bright_cyan",
"yellow", "bright_yellow", "white", "bright_white"
};
struct enemy_t
{
char *animation {nullptr};
uint8_t width {0};
uint8_t height {0};
uint8_t x {0};
uint8_t y {0};
uint8_t vx {0};
uint8_t vy {0};
uint8_t x1 {0};
uint8_t y1 {0};
uint8_t x2 {0};
uint8_t y2 {0};
uint8_t color {COLOR_WHITE};
};
struct room_t
{
char *name {nullptr};
uint8_t bgColor {COLOR_BLACK};
uint8_t border {COLOR_BLACK};
char *tileMapFile {nullptr};
char *tileSetFile {nullptr};
uint8_t roomUp {0};
uint8_t roomDown {0};
uint8_t roomLeft {0};
uint8_t roomRight {0};
enemy_t *enemies;
};
void load()
{
}
}