#ifndef biome_data_H #define biome_data_H #include "core/resource.h" #include "../../fastnoise/fastnoise_noise_params.h" #include "../main/planet.h" #include "../data/biome_data.h" #include "../../voxelman/world/environment_data.h" class PlanetData : public Resource { GDCLASS(PlanetData, Resource); public: int get_id() const; void set_id(const int value); Ref get_humidity_noise_params(); void set_humidity_noise_params(Ref value); Ref get_temperature_noise_params(); void set_temperature_noise_params(Ref value); //Biomes Ref get_biome_data(const int index) const; void set_biome_data(const int index, const Ref biome_data); void add_biome_data(const Ref biome_data); void remove_biome_data(const int index); int get_biome_data_count() const; Vector get_biome_datas(); void set_biome_datas(const Vector &biome_datas); //Environments Ref get_environment_data(const int index) const; void set_environment_data(const int index, const Ref environment_data); void add_environment_data(const Ref environment_data); void remove_environment_data(const int index); int get_environment_data_count() const; Vector get_environment_datas(); void set_environment_datas(const Vector &environment_datas); Ref setup_planet(int seed); PlanetData(); ~PlanetData(); protected: static void _bind_methods(); private: int _id; Ref _humidity_noise_params; Ref _temperature_noise_params; Vector > _biome_datas; Vector > _environment_datas; }; #endif