#ifndef BIOME_H #define BIOME_H #include "core/reference.h" #include "../../voxelman/world/voxel_chunk.h" #include "../data/prop_data.h" #include "dungeon.h" #include "../../voxelman/world/environment_data.h" class Biome : public Reference { GDCLASS(Biome, Reference); public: //Environment Ref get_environment(); void set_environment(Ref value); //PropData Ref get_prop_data(const int index) const; void set_prop_data(const int index, const Ref prop_data); void add_prop_data(const Ref prop_data); void remove_prop_data(const int index); int get_prop_data_count() const; //Dungeons Ref get_dungeon(const int index) const; void set_dungeon(const int index, const Ref dungeon); void add_dungeon(const Ref dungeon); void remove_dungeon(const int index); int get_dungeon_count() const; void generate_chunk(Ref chunk); void generate_stack(Ref chunk, int x, int z); Biome(); ~Biome(); protected: static void _bind_methods(); private: Ref _environment; Vector > _prop_datas; Vector > _dungeons; }; #endif