JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
Loading...
Searching...
No Matches
core::Level Class Reference

#include <Level.h>

Public Member Functions

 Level (LevelData data)
 Construit un niveau à partir de ses composantes nommées.
const std::string & name () const noexcept
const TileMaptileMap () const noexcept
const std::vector< TileLayer > & layers () const noexcept
const std::vector< MapEntity > & entities () const noexcept
GridPosition entry () const noexcept
GridPosition exit () const noexcept
const std::vector< Mechanism > & mechanisms () const noexcept
const std::optional< std::string > & background () const noexcept
const std::optional< std::string > & skinSet () const noexcept
const std::vector< TileTextureOverride > & textureOverrides () const noexcept
const std::vector< Plane > & planes () const noexcept
bool parallaxEnabled () const noexcept
const CameraFramingConfigcameraFraming () const noexcept

Private Attributes

std::string _name
TileMap _tileMap
std::vector< TileLayer_layers
std::vector< MapEntity_entities
GridPosition _entry
GridPosition _exit
std::vector< Mechanism_mechanisms
std::optional< std::string > _background
std::optional< std::string > _skinSet
std::vector< TileTextureOverride_textureOverrides
CameraFramingConfig _cameraFraming
std::vector< Plane_planes
bool _parallaxEnabled = true

Constructor & Destructor Documentation

◆ Level()

core::Level::Level ( LevelData data)
inlineexplicit

Construit un niveau à partir de ses composantes nommées.

Parameters
dataComposantes du niveau (déplacées).

Member Function Documentation

◆ background()

const std::optional< std::string > & core::Level::background ( ) const
inlinenodiscardnoexcept
Returns
Le nom de l'asset de fond du niveau (EX-REN-044), absent si aucun n'est configuré. Une chaîne, jamais un handle : Core n'a pas accès au dossier d'assets.

◆ cameraFraming()

const CameraFramingConfig & core::Level::cameraFraming ( ) const
inlinenodiscardnoexcept
Returns
Le cadrage de caméra résolu du niveau (EX-LVL-006), jamais un champ optionnel "peut-être absent" : la règle de repli (resolveCameraFraming) a déjà été appliquée par le chargeur avant de construire ce Level.

◆ entities()

const std::vector< MapEntity > & core::Level::entities ( ) const
inlinenodiscardnoexcept
Returns
Les entités placées sur la carte (LOT-04).

◆ entry()

GridPosition core::Level::entry ( ) const
inlinenodiscardnoexcept
Returns
La position d'apparition.

◆ exit()

GridPosition core::Level::exit ( ) const
inlinenodiscardnoexcept
Returns
La position de sortie.

◆ layers()

const std::vector< TileLayer > & core::Level::layers ( ) const
inlinenodiscardnoexcept
Returns
Les couches de tuiles de la carte (LOT-04), dans leur ordre de superposition, la grille de collision en tête (voir LevelData::layers).

◆ mechanisms()

const std::vector< Mechanism > & core::Level::mechanisms ( ) const
inlinenodiscardnoexcept
Returns
Les liaisons de mécanismes du niveau.

◆ name()

const std::string & core::Level::name ( ) const
inlinenodiscardnoexcept
Returns
Le nom du niveau.

◆ parallaxEnabled()

bool core::Level::parallaxEnabled ( ) const
inlinenodiscardnoexcept
Returns
true si la parallaxe des plans s'applique dans ce niveau (EX-DEC-043). Le mode de cadrage peut la neutraliser malgré ce drapeau : c'est une règle du moteur, pas une propriété du niveau (hmi::planeParallaxActive).

◆ planes()

const std::vector< Plane > & core::Level::planes ( ) const
inlinenodiscardnoexcept
Returns
Les plans picturaux du niveau (EX-DEC-040), dans leur ordre de superposition.

◆ skinSet()

const std::optional< std::string > & core::Level::skinSet ( ) const
inlinenodiscardnoexcept
Returns
Le nom du jeu de skins du niveau (EX-EDIT-024), absent si le niveau utilise le jeu par défaut.

◆ textureOverrides()

const std::vector< TileTextureOverride > & core::Level::textureOverrides ( ) const
inlinenodiscardnoexcept
Returns
Les textures assignées par instance du niveau (EX-EDIT-043).

◆ tileMap()

const TileMap & core::Level::tileMap ( ) const
inlinenodiscardnoexcept
Returns
La grille de tuiles du niveau.

Member Data Documentation

◆ _background

std::optional<std::string> core::Level::_background
private

◆ _cameraFraming

CameraFramingConfig core::Level::_cameraFraming
private

◆ _entities

std::vector<MapEntity> core::Level::_entities
private

◆ _entry

GridPosition core::Level::_entry
private

◆ _exit

GridPosition core::Level::_exit
private

◆ _layers

std::vector<TileLayer> core::Level::_layers
private

◆ _mechanisms

std::vector<Mechanism> core::Level::_mechanisms
private

◆ _name

std::string core::Level::_name
private

◆ _parallaxEnabled

bool core::Level::_parallaxEnabled = true
private

◆ _planes

std::vector<Plane> core::Level::_planes
private

◆ _skinSet

std::optional<std::string> core::Level::_skinSet
private

◆ _textureOverrides

std::vector<TileTextureOverride> core::Level::_textureOverrides
private

◆ _tileMap

TileMap core::Level::_tileMap
private

The documentation for this class was generated from the following file:
  • /home/runner/work/JustAnotherDnDGame/JustAnotherDnDGame/Source/Core/Levels/Level.h