2017-07-20 06:08:49 +02:00
|
|
|
/*
|
|
|
|
* mock_battle_IBattleState.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
|
|
|
|
|
|
|
|
#include "../../lib/battle/IBattleState.h"
|
2024-08-31 23:04:32 +02:00
|
|
|
#include "../../lib/battle/BattleLayout.h"
|
2023-08-31 22:36:39 +02:00
|
|
|
#include "../../lib/int3.h"
|
2017-07-20 06:08:49 +02:00
|
|
|
|
|
|
|
class BattleStateMock : public IBattleState
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
MOCK_CONST_METHOD0(getActiveStackID, int32_t());
|
2023-11-18 21:17:40 +02:00
|
|
|
MOCK_CONST_METHOD1(getStacksIf, TStacks(const TStackFilter&));
|
|
|
|
MOCK_CONST_METHOD1(getUnitsIf, battle::Units(const battle::UnitFilter &));
|
2022-06-22 10:41:02 +02:00
|
|
|
MOCK_CONST_METHOD0(getBattlefieldType, BattleField());
|
2022-09-29 11:44:46 +02:00
|
|
|
MOCK_CONST_METHOD0(getTerrainType, TerrainId());
|
2017-07-20 06:08:49 +02:00
|
|
|
MOCK_CONST_METHOD0(getAllObstacles, IBattleInfo::ObstacleCList());
|
|
|
|
MOCK_CONST_METHOD0(getDefendedTown, const CGTownInstance *());
|
2023-02-28 13:29:35 +02:00
|
|
|
MOCK_CONST_METHOD1(getWallState, EWallState(EWallPart));
|
2017-07-20 06:08:49 +02:00
|
|
|
MOCK_CONST_METHOD0(getGateState, EGateState());
|
2024-08-11 22:22:35 +02:00
|
|
|
MOCK_CONST_METHOD1(getSidePlayer, PlayerColor(BattleSide));
|
|
|
|
MOCK_CONST_METHOD1(getSideArmy, const CArmedInstance *(BattleSide));
|
|
|
|
MOCK_CONST_METHOD1(getSideHero, const CGHeroInstance *(BattleSide));
|
|
|
|
MOCK_CONST_METHOD1(getCastSpells, uint32_t(BattleSide));
|
|
|
|
MOCK_CONST_METHOD1(getEnchanterCounter, int32_t(BattleSide));
|
2017-07-20 06:08:49 +02:00
|
|
|
MOCK_CONST_METHOD0(getTacticDist, ui8());
|
2024-08-11 22:22:35 +02:00
|
|
|
MOCK_CONST_METHOD0(getTacticsSide, BattleSide());
|
2023-04-05 02:26:29 +02:00
|
|
|
MOCK_CONST_METHOD0(getBonusBearer, const IBonusBearer *());
|
2017-07-20 06:08:49 +02:00
|
|
|
MOCK_CONST_METHOD0(nextUnitId, uint32_t());
|
2023-03-23 11:01:13 +02:00
|
|
|
MOCK_CONST_METHOD3(getActualDamage, int64_t(const DamageRange &, int32_t, vstd::RNG &));
|
2023-08-31 22:36:39 +02:00
|
|
|
MOCK_CONST_METHOD0(getBattleID, BattleID());
|
|
|
|
MOCK_CONST_METHOD0(getLocation, int3());
|
2024-08-31 23:04:32 +02:00
|
|
|
MOCK_CONST_METHOD0(getLayout, BattleLayout());
|
2024-08-11 22:22:35 +02:00
|
|
|
MOCK_CONST_METHOD1(getUsedSpells, std::vector<SpellID>(BattleSide));
|
2017-07-20 06:08:49 +02:00
|
|
|
|
2023-08-31 22:36:39 +02:00
|
|
|
MOCK_METHOD0(nextRound, void());
|
2017-07-20 06:08:49 +02:00
|
|
|
MOCK_METHOD1(nextTurn, void(uint32_t));
|
|
|
|
MOCK_METHOD2(addUnit, void(uint32_t, const JsonNode &));
|
|
|
|
MOCK_METHOD3(setUnitState, void(uint32_t, const JsonNode &, int64_t));
|
|
|
|
MOCK_METHOD2(moveUnit, void(uint32_t, BattleHex));
|
|
|
|
MOCK_METHOD1(removeUnit, void(uint32_t));
|
Entities redesign and a few ERM features
* Made most Handlers derived from CHandlerBase and moved service API there.
* Declared existing Entity APIs.
* Added basic script context caching
* Started Lua script module
* Started Lua spell effect API
* Started script state persistence
* Started battle info callback binding
* CommitPackage removed
* Extracted spells::Caster to own header; Expanded Spell API.
* implemented !!MC:S, !!FU:E, !!FU:P, !!MA, !!VR:H, !!VR:C
* !!BU:C, !!BU:E, !!BU:G, !!BU:M implemented
* Allow use of "MC:S@varName@" to declare normal variable (technically v-variable with string key)
* Re-enabled VERM macros.
* !?GM0 added
* !?TM implemented
* Added !!MF:N
* Started !?OB, !!BM, !!HE, !!OW, !!UN
* Added basic support of w-variables
* Added support for ERM indirect variables
* Made !?FU regular trigger
* !!re (ERA loop receiver) implemented
* Fixed ERM receivers with zero args.
2018-03-17 16:58:30 +02:00
|
|
|
MOCK_METHOD2(updateUnit, void(uint32_t, const JsonNode &));
|
2017-07-20 06:08:49 +02:00
|
|
|
MOCK_METHOD2(addUnitBonus, void(uint32_t, const std::vector<Bonus> &));
|
|
|
|
MOCK_METHOD2(updateUnitBonus, void(uint32_t, const std::vector<Bonus> &));
|
|
|
|
MOCK_METHOD2(removeUnitBonus, void(uint32_t, const std::vector<Bonus> &));
|
2023-02-28 13:29:35 +02:00
|
|
|
MOCK_METHOD2(setWallState, void(EWallPart, EWallState));
|
2017-07-20 06:08:49 +02:00
|
|
|
MOCK_METHOD1(addObstacle, void(const ObstacleChanges &));
|
|
|
|
MOCK_METHOD1(removeObstacle, void(uint32_t));
|
2020-02-12 19:12:12 +02:00
|
|
|
MOCK_METHOD1(updateObstacle, void(const ObstacleChanges &));
|
2017-07-20 06:08:49 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|