Implements running from battle.
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
25
src/Battling/Models/BattleResult.hpp
Normal file
25
src/Battling/Models/BattleResult.hpp
Normal file
@@ -0,0 +1,25 @@
|
||||
#ifndef CREATURELIB_BATTLERESULT_HPP
|
||||
#define CREATURELIB_BATTLERESULT_HPP
|
||||
|
||||
#include <cstdint>
|
||||
namespace CreatureLib::Battling {
|
||||
class BattleResult {
|
||||
bool _conclusiveResult;
|
||||
uint8_t _winningSide;
|
||||
|
||||
BattleResult(bool conclusiveResult, uint8_t winningSide)
|
||||
: _conclusiveResult(conclusiveResult), _winningSide(winningSide) {}
|
||||
|
||||
public:
|
||||
static BattleResult Inconclusive() { return BattleResult(false, 0); }
|
||||
static BattleResult Conclusive(uint8_t winner) { return BattleResult(true, winner); }
|
||||
static BattleResult Empty() { return BattleResult(false, 0); }
|
||||
|
||||
/// Whether or not the battle has ended with a conclusive result.
|
||||
bool IsConclusiveResult() const { return _conclusiveResult; }
|
||||
/// Get the index of the side that has won the battle. Only valid if the battle has a conclusive result.
|
||||
uint8_t GetWinningSide() const { return _winningSide; }
|
||||
};
|
||||
}
|
||||
|
||||
#endif // CREATURELIB_BATTLERESULT_HPP
|
||||
Reference in New Issue
Block a user