Represents a tile of the game map, with all associated builder-specific parameters: flags, images attached to this tile, etc. More...
#include <builder.hpp>
Classes | |
struct | rule_image_rand |
Represent a rule_image applied with a random seed. More... | |
Public Types | |
typedef std::pair< const rule_image_rand *, const rule_image_variant * > | log_details |
typedef std::vector< log_details > | logs |
Public Member Functions | |
tile () | |
Constructor for the tile() structure. More... | |
void | rebuild_cache (const std::string &tod, logs *log=nullptr) |
Rebuilds the whole image cache, for a given time-of-day. More... | |
void | clear () |
Clears all data in this tile, and resets the cache. More... | |
Public Attributes | |
std::set< std::string > | flags |
The list of flags present in this tile. More... | |
std::vector< rule_image_rand > | images |
The list of rule_images and random seeds associated to this tile. More... | |
imagelist | images_foreground |
The list of images which are in front of the unit sprites, attached to this tile. More... | |
imagelist | images_background |
The list of images which are behind the unit sprites, attached to this tile. More... | |
std::string | last_tod |
The time-of-day to which the image caches correspond. More... | |
bool | sorted_images |
Indicates if 'images' is sorted. More... | |
Represents a tile of the game map, with all associated builder-specific parameters: flags, images attached to this tile, etc.
An array of those tiles is built when terrains are built either during construction, or upon calling the rebuild_all() method.
Definition at line 291 of file builder.hpp.
typedef std::pair<const rule_image_rand*, const rule_image_variant*> terrain_builder::tile::log_details |
Definition at line 296 of file builder.hpp.
typedef std::vector<log_details> terrain_builder::tile::logs |
Definition at line 298 of file builder.hpp.
terrain_builder::tile::tile | ( | ) |
Constructor for the tile() structure.
Definition at line 101 of file builder.cpp.
void terrain_builder::tile::clear | ( | ) |
Clears all data in this tile, and resets the cache.
Definition at line 181 of file builder.cpp.
References about::images.
void terrain_builder::tile::rebuild_cache | ( | const std::string & | tod, |
logs * | log = nullptr |
||
) |
Rebuilds the whole image cache, for a given time-of-day.
Must be called when the time-of-day has changed, to select the correct images.
tod | The current time-of-day |
Definition at line 110 of file builder.cpp.
References preferences::animate_water(), animated< T, T_void_value >::get_frame(), animated< T, T_void_value >::get_frames_count(), terrain_builder::rule_image_variant::has_flag, i, about::images, terrain_builder::rule_image_variant::images, image::is_empty_hex(), terrain_builder::rule_image_variant::random_start, and terrain_builder::rule_image_variant::tods.
Referenced by events::console_handler::do_layers(), and terrain_builder::get_terrain_at().
std::set<std::string> terrain_builder::tile::flags |
The list of flags present in this tile.
Definition at line 311 of file builder.hpp.
Referenced by terrain_builder::apply_rule(), and events::console_handler::do_layers().
std::vector<rule_image_rand> terrain_builder::tile::images |
The list of rule_images and random seeds associated to this tile.
Definition at line 329 of file builder.hpp.
Referenced by terrain_builder::apply_rule().
imagelist terrain_builder::tile::images_background |
The list of images which are behind the unit sprites, attached to this tile.
This member is considered a cache: it is built once, and on-demand.
Definition at line 340 of file builder.hpp.
Referenced by terrain_builder::get_terrain_at(), terrain_builder::rebuild_terrain(), and terrain_builder::update_animation().
imagelist terrain_builder::tile::images_foreground |
The list of images which are in front of the unit sprites, attached to this tile.
This member is considered a cache: it is built once, and on-demand.
Definition at line 335 of file builder.hpp.
Referenced by terrain_builder::get_terrain_at(), terrain_builder::rebuild_terrain(), and terrain_builder::update_animation().
std::string terrain_builder::tile::last_tod |
The time-of-day to which the image caches correspond.
Definition at line 344 of file builder.hpp.
Referenced by terrain_builder::get_terrain_at().
bool terrain_builder::tile::sorted_images |
Indicates if 'images' is sorted.
Definition at line 347 of file builder.hpp.