CardGame
Rogue-like card videogame
Loading...
Searching...
No Matches
Effect Class Referenceabstract

Abstract base class for all card effects. More...

#include <effect.h>

Inheritance diagram for Effect:
Collaboration diagram for Effect:

Public Member Functions

virtual void resolve (CombatContext &combatContext, const CardParams &effectParams)=0
 Applies the effect during card resolution.
 
virtual ~Effect ()=default
 Virtual destructor.
 

Detailed Description

Abstract base class for all card effects.

Effects define behavior that is executed when a card is played. They do not store any numeric values or state — all values are read from the CardInstance.

Effects request actions from CardMatch, but never modify entity state directly.

All derived effects must implement the apply() method.

Constructor & Destructor Documentation

◆ ~Effect()

virtual Effect::~Effect ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ resolve()

virtual void Effect::resolve ( CombatContext combatContext,
const CardParams effectParams 
)
pure virtual

Applies the effect during card resolution.

Parameters
card_matchReference to the combat authority managing the encounter.
cardThe card instance triggering this effect.

Implemented in DrawCardsEffect, GainActionsEffect, GainArmorEffect, GainAttackEffect, HostageCardEffect, and LimitCardToPlayEffect.


The documentation for this class was generated from the following file: