#ifndef STAR_SPAWNTYPE_DATABASE_HPP
#define STAR_SPAWNTYPE_DATABASE_HPP
#include "StarJson.hpp"
#include "StarVector.hpp"
#include "StarBiMap.hpp"
#include "StarWeightedPool.hpp"
namespace Star {
STAR_EXCEPTION(SpawnTypeDatabaseException, StarException);
STAR_CLASS(SpawnTypeDatabase);
struct SpawnParameters {
enum class Area : uint8_t {
Surface,
Ceiling,
Air,
Liquid,
Solid
};
enum class Region : uint8_t {
All,
Enclosed,
Exposed
};
enum class Time : uint8_t {
All,
Day,
Night
};
static EnumMap const AreaNames;
static EnumMap const RegionNames;
static EnumMap