100 std::optional<DrawData> m_drawData;
102 std::vector<std::string>* m_effectMessage;
113 std::string messageTarget(
Target target)
const;
Definition: combatContext.h:79
EffectMessageScope(EffectMessageScope &&)=delete
~EffectMessageScope()
Definition: combatContext.cpp:29
EffectMessageScope & operator=(const EffectMessageScope &)=delete
EffectMessageScope(const EffectMessageScope &)=delete
EffectMessageScope & operator=(EffectMessageScope &&)=delete
Execution context for resolving combat effects.
Definition: combatContext.h:30
void gainActions(int amount)
Definition: combatContext.cpp:141
void gainArmor(Target target, int amount)
Grants armor to the selected logical target.
Definition: combatContext.cpp:98
void resetEffectMessage()
Definition: combatContext.cpp:39
void gainAttack(Target target, int amount)
Grants attack to the selected logical target.
Definition: combatContext.cpp:107
DamageResult dealDamage(Target target, int amount, bool ignoreArmor=false)
Definition: combatContext.cpp:116
void takeCardHostage()
Definition: combatContext.cpp:168
void limitCardToPlay(int amount)
Definition: combatContext.cpp:150
void drawMultipleCardFromEffect(int amount)
Definition: combatContext.cpp:121
std::optional< DrawData > getDrawData()
Definition: combatContext.cpp:134
void setEffectMessage(std::vector< std::string > *effectMessage)
Definition: combatContext.cpp:34
Central authority for combat rules and state mutation.
Definition: combatSystem.h:18
Manages all card piles during a single combat.
Definition: deckCombat.h:38
Base class representing a combat-capable entity.
Definition: entity.h:18
Target
Logical target selector used during effect resolution.
Definition: combatTarget.h:14
Definition: combatEvents.h:22
Definition: matchData.h:22