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

Charge un niveau au format JSON (objet {name, width, height, tiles}tiles est une liste d'objets {x, y, type, …}), EX-LVL-001/EX-LVL-003. More...

#include <LevelLoader.h>

Static Public Member Functions

static LevelLoadResult loadFromString (std::string_view json)
 Charge un niveau depuis une chaîne JSON.
static LevelLoadResult loadFromFile (const std::filesystem::path &path)
 Charge un niveau depuis un fichier.

Detailed Description

Charge un niveau au format JSON (objet {name, width, height, tiles}tiles est une liste d'objets {x, y, type, …}), EX-LVL-001/EX-LVL-003.

Le chargement ne lève aucune exception vers l'appelant : toute erreur (JSON malformé, champ manquant, type de tuile inconnu, tuile hors bornes, liaison de mécanisme non résolue…) est renvoyée dans le LevelLoadResult. La validation métier additionnelle (unicité de l'entrée/sortie, positions en double) relève de la validation du niveau.

Member Function Documentation

◆ loadFromFile()

LevelLoadResult core::LevelLoader::loadFromFile ( const std::filesystem::path & path)
staticnodiscard

Charge un niveau depuis un fichier.

Parameters
pathChemin du fichier.
Returns
Résultat.

◆ loadFromString()

LevelLoadResult core::LevelLoader::loadFromString ( std::string_view json)
staticnodiscard

Charge un niveau depuis une chaîne JSON.

Parameters
jsonContenu JSON.
Returns
Résultat.

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