pub struct TileDatabase { /* private fields */ }Expand description
In-memory representation of a decoded tile database file.
Contains all terrain tile definitions and related configuration data used by the game’s terrain system.
§Fields
serialise_version- Format version (currently only 1 is supported).render_params- Global rendering parameters for terrain tiles.conversion_params- Parameters for tile format conversion.climates- Climate-specific tile configurations.tile_sets- Groups of related tiles.tiles- Individual tile definitions.
Implementations§
Source§impl TileDatabase
impl TileDatabase
Sourcepub fn from_assembly_kit(
settings: &str,
tiles: &[&str],
order: Option<&[String]>,
add_user_tile_set: bool,
) -> Result<Self>
pub fn from_assembly_kit( settings: &str, tiles: &[&str], order: Option<&[String]>, add_user_tile_set: bool, ) -> Result<Self>
Builds a tile database from its sources in the Assembly Kit.
Tile sets that tiles use but _settings.xml doesn’t define are added after the defined ones, with empty values,
and so is the user set if requested: the battle database always has it, the campaign one doesn’t.
§Arguments
settings- The contents of_settings.xml.tiles- The contents of each tile’s XML.order- Locations of the tiles, in the order they go in the database. If None, larger tiles go first, then by location.add_user_tile_set- If theusertile set is added.
§Returns
The tile database.
§Errors
Returns RLibError::DecodingTileDatabaseXml if any source is malformed, or a tile is missing from order.
Source§impl TileDatabase
impl TileDatabase
Sourcepub fn serialise_version(&self) -> &u16
pub fn serialise_version(&self) -> &u16
Serialisation format version.
Sourcepub fn render_params(&self) -> &RenderParams
pub fn render_params(&self) -> &RenderParams
Global rendering parameters.
Sourcepub fn conversion_params(&self) -> &ConversionParams
pub fn conversion_params(&self) -> &ConversionParams
Tile conversion parameters.
Source§impl TileDatabase
impl TileDatabase
Sourcepub fn serialise_version_mut(&mut self) -> &mut u16
pub fn serialise_version_mut(&mut self) -> &mut u16
Serialisation format version.
Sourcepub fn render_params_mut(&mut self) -> &mut RenderParams
pub fn render_params_mut(&mut self) -> &mut RenderParams
Global rendering parameters.
Sourcepub fn conversion_params_mut(&mut self) -> &mut ConversionParams
pub fn conversion_params_mut(&mut self) -> &mut ConversionParams
Tile conversion parameters.
Sourcepub fn climates_mut(&mut self) -> &mut Vec<Climate>
pub fn climates_mut(&mut self) -> &mut Vec<Climate>
Climate definitions with tile variations.
Sourcepub fn tile_sets_mut(&mut self) -> &mut Vec<TileSet>
pub fn tile_sets_mut(&mut self) -> &mut Vec<TileSet>
Tile set groupings.
Source§impl TileDatabase
impl TileDatabase
Sourcepub fn set_serialise_version(&mut self, val: u16) -> &mut Self
pub fn set_serialise_version(&mut self, val: u16) -> &mut Self
Serialisation format version.
Sourcepub fn set_render_params(&mut self, val: RenderParams) -> &mut Self
pub fn set_render_params(&mut self, val: RenderParams) -> &mut Self
Global rendering parameters.
Sourcepub fn set_conversion_params(&mut self, val: ConversionParams) -> &mut Self
pub fn set_conversion_params(&mut self, val: ConversionParams) -> &mut Self
Tile conversion parameters.
Sourcepub fn set_climates(&mut self, val: Vec<Climate>) -> &mut Self
pub fn set_climates(&mut self, val: Vec<Climate>) -> &mut Self
Climate definitions with tile variations.
Sourcepub fn set_tile_sets(&mut self, val: Vec<TileSet>) -> &mut Self
pub fn set_tile_sets(&mut self, val: Vec<TileSet>) -> &mut Self
Tile set groupings.
Trait Implementations§
Source§impl Clone for TileDatabase
impl Clone for TileDatabase
Source§fn clone(&self) -> TileDatabase
fn clone(&self) -> TileDatabase
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TileDatabase
impl Debug for TileDatabase
Source§impl Decodeable for TileDatabase
impl Decodeable for TileDatabase
Source§impl Default for TileDatabase
impl Default for TileDatabase
Source§fn default() -> TileDatabase
fn default() -> TileDatabase
Source§impl<'de> Deserialize<'de> for TileDatabase
impl<'de> Deserialize<'de> for TileDatabase
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Encodeable for TileDatabase
impl Encodeable for TileDatabase
Source§fn encode<W: WriteBytes>(
&mut self,
buffer: &mut W,
extra_data: &Option<EncodeableExtraData<'_>>,
) -> Result<()>
fn encode<W: WriteBytes>( &mut self, buffer: &mut W, extra_data: &Option<EncodeableExtraData<'_>>, ) -> Result<()>
Source§impl PartialEq for TileDatabase
impl PartialEq for TileDatabase
Source§impl Serialize for TileDatabase
impl Serialize for TileDatabase
impl StructuralPartialEq for TileDatabase
Auto Trait Implementations§
impl Freeze for TileDatabase
impl RefUnwindSafe for TileDatabase
impl Send for TileDatabase
impl Sync for TileDatabase
impl Unpin for TileDatabase
impl UnsafeUnpin for TileDatabase
impl UnwindSafe for TileDatabase
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().impl<T> Scalar for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.