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 | |
| 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 = "invalid_tod" |
| The time-of-day to which the image caches correspond. More... | |
| bool | sorted_images = false |
| 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 284 of file builder.hpp.
| typedef std::pair<const rule_image_rand*, const rule_image_variant*> terrain_builder::tile::log_details |
Definition at line 287 of file builder.hpp.
| typedef std::vector<log_details> terrain_builder::tile::logs |
Definition at line 288 of file builder.hpp.
| void terrain_builder::tile::clear | ( | ) |
Clears all data in this tile, and resets the cache.
Definition at line 168 of file builder.cpp.
| void terrain_builder::tile::rebuild_cache | ( | const std::string & | tod, |
| logs * | log = nullptr |
||
| ) |
Rebuilds the whole image cache, for a given time-of-day.
This file holds the terrain_builder implementation.
Must be called when the time-of-day has changed, to select the correct images.
| tod | The current time-of-day |
| log |
Definition at line 92 of file builder.cpp.
References prefs::get(), animated< T >::get_animation_duration(), animated< T >::get_frame(), animated< T >::get_frames_count(), terrain_builder::rule_image_variant::has_flag, i, terrain_builder::rule_image_variant::images, image::is_empty_hex(), terrain_builder::rule_image_variant::random_start, s, and terrain_builder::rule_image_variant::tods.
Referenced by terrain_builder::get_terrain_at().
| std::set<std::string> terrain_builder::tile::flags |
The list of flags present in this tile.
Definition at line 302 of file builder.hpp.
Referenced by terrain_builder::apply_rule(), and gui2::dialogs::terrain_layers::pre_show().
| std::vector<rule_image_rand> terrain_builder::tile::images |
The list of rule_images and random seeds associated to this tile.
Definition at line 323 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 334 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 329 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 = "invalid_tod" |
The time-of-day to which the image caches correspond.
Definition at line 338 of file builder.hpp.
Referenced by terrain_builder::get_terrain_at().
| bool terrain_builder::tile::sorted_images = false |
Indicates if 'images' is sorted.
Definition at line 341 of file builder.hpp.