1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-22 22:13:35 +02:00
vcmi/lib/TurnTimerInfo.h
2023-12-07 16:36:44 +02:00

56 lines
1.4 KiB
C++

/*
* TurnTimerInfo.h, part of VCMI engine
*
* Authors: listed in file AUTHORS in main folder
*
* License: GNU General Public License v2.0 or later
* Full text of license available in license.txt file, in main folder
*
*/
#pragma once
VCMI_LIB_NAMESPACE_BEGIN
struct DLL_LINKAGE TurnTimerInfo
{
int turnTimer = 0; //in ms, counts down when player is making his turn on adventure map
int baseTimer = 0; //in ms, counts down only when turn timer runs out
int battleTimer = 0; //in ms, counts down during battles when creature timer runs out
int unitTimer = 0; //in ms, counts down when player is choosing action in battle
bool accumulatingTurnTimer = false;
bool accumulatingUnitTimer = false;
bool isActive = false; //is being counting down
bool isBattle = false; //indicator for current timer mode
bool isEnabled() const;
bool isBattleEnabled() const;
bool operator == (const TurnTimerInfo & other) const
{
return turnTimer == other.turnTimer &&
baseTimer == other.baseTimer &&
battleTimer == other.battleTimer &&
unitTimer == other.unitTimer &&
accumulatingTurnTimer == other.accumulatingTurnTimer &&
accumulatingUnitTimer == other.accumulatingUnitTimer;
}
template <typename Handler>
void serialize(Handler &h, const int version)
{
h & turnTimer;
h & baseTimer;
h & battleTimer;
h & unitTimer;
h & accumulatingTurnTimer;
h & accumulatingUnitTimer;
h & isActive;
h & isBattle;
}
};
VCMI_LIB_NAMESPACE_END