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

Ce qu'un personnage porte : son sac, et ce qu'il a sur lui. More...

#include <Inventory.h>

Public Member Functions

const std::string & at (EquipmentSlot slot) const
bool isEquipped (EquipmentSlot slot) const

Public Attributes

std::array< std::string, EQUIPMENT_SLOT_COUNTequipped {}
 L'équipement porté, par emplacement : un identifiant de catalogue, ou une chaîne vide.
std::vector< InventoryStackbackpack
 Le sac, dans l'ordre où il a été rempli.
int purseCopper = 0
 Bourse, en pièces de cuivre — la même unité que les prix du catalogue.

Detailed Description

Ce qu'un personnage porte : son sac, et ce qu'il a sur lui.

Aucune statistique n'est stockée ici

C'est tout le lot. La classe d'armure, les dégâts de l'arme, la vitesse encombrée ne sont pas des champs de cette structure : ce sont des fonctions de ce qu'elle contient, recalculées à chaque lecture (derivedStatsFor). Le défaut classique consiste à appliquer un bonus en l'ajoutant à la volée (ca += 2) et à le retrancher au retrait ; après trois équipements et deux retraits dans le désordre, la classe d'armure a dérivé, et rien ne le signale — le personnage est simplement devenu un peu plus, ou un peu moins, résistant.

Une valeur qu'on ne stocke pas ne peut pas dériver. C'est un critère d'acceptation du lot, pas une préférence de style.

Member Function Documentation

◆ at()

const std::string & core::Inventory::at ( EquipmentSlot slot) const
inlinenodiscard
Returns
L'identifiant porté à cet emplacement, ou une chaîne vide.

◆ isEquipped()

bool core::Inventory::isEquipped ( EquipmentSlot slot) const
inlinenodiscard
Returns
Vrai si cet emplacement porte quelque chose.

Member Data Documentation

◆ backpack

std::vector<InventoryStack> core::Inventory::backpack

Le sac, dans l'ordre où il a été rempli.

◆ equipped

std::array<std::string, EQUIPMENT_SLOT_COUNT> core::Inventory::equipped {}

L'équipement porté, par emplacement : un identifiant de catalogue, ou une chaîne vide.

◆ purseCopper

int core::Inventory::purseCopper = 0

Bourse, en pièces de cuivre — la même unité que les prix du catalogue.


The documentation for this struct was generated from the following file:
  • /home/runner/work/JustAnotherDnDGame/JustAnotherDnDGame/Source/Core/Rpg/Inventory.h