JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
Loading...
Searching...
No Matches
Multiclassing.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 Valentin Eloy
2// SPDX-License-Identifier: GPL-3.0-or-later
3
4#pragma once
5
10
11#include <optional>
12#include <span>
13#include <string_view>
14
15namespace core {
16
42
44struct ClassLevel {
45 int level = 0;
47};
48
70[[nodiscard]] int multiclassCasterLevel(std::span<const ClassLevel> classes);
71
78[[nodiscard]] std::optional<CasterProgression> parseCasterProgression(std::string_view name);
79
81[[nodiscard]] std::string_view casterProgressionName(CasterProgression progression);
82
83} // namespace core
Espace de noms du moteur et de la logique de jeu.
Definition Bootstrap.h:9
@ None
Pas d'erreur.
Definition JsonDocument.h:29
int multiclassCasterLevel(std::span< const ClassLevel > classes)
Niveau de lanceur cumulé d'un personnage multiclassé.
Definition Multiclassing.cpp:46
std::optional< CasterProgression > parseCasterProgression(std::string_view name)
Convertit le nom d'une progression, tel que la donnée l'écrit, en valeur.
Definition Multiclassing.cpp:71
CasterProgression
Rythme auquel une classe fait progresser le niveau de lanceur.
Definition Multiclassing.h:30
@ Third
Un tiers des niveaux, arrondi à l'inférieur — guerrier et roublard, sous archétype.
Definition Multiclassing.h:34
@ None
La classe n'apporte rien au niveau de lanceur — barbare, moine.
Definition Multiclassing.h:32
@ Full
La totalité des niveaux — barde, clerc, druide, ensorceleur, magicien.
Definition Multiclassing.h:38
@ Half
La moitié des niveaux, arrondie à l'inférieur — paladin, rôdeur.
Definition Multiclassing.h:36
@ Pact
Magie de pacte : n'entre pas dans la somme (EX-RPG-052).
Definition Multiclassing.h:40
std::string_view casterProgressionName(CasterProgression progression)
Nom textuel d'une progression, tel que multiclassing.json l'écrit.
Definition Multiclassing.cpp:54
int level
Definition CharacterOptions.h:88
CasterProgression progression
Definition Multiclassing.h:46