BosonX/src/level.h

38 lines
571 B
C++

#ifndef __LEVEL_H__
# define __LEVEL_H__
#include "settings.h"
#include <vector>
#include <memory>
typedef enum {
PLATFORM_EMPTY,
PLATFORM_WHITE,
PLATFORM_RED,
PLATFORM_BLUE,
PLATFORM_BLOCK
} platform_type_t;
struct platform {
int face;
num z;
num length;
int height;
platform_type_t type;
};
struct Generator;
struct level {
std::vector<struct platform> platform_buffer;
std::unique_ptr<Generator> gen;
uint16_t bgcolor;
};
extern void level_update(struct level *level, num z);
extern struct level level_create(int level);
#endif /* __LEVEL_H__ */