diff --git a/include/vcmi/Entity.h b/include/vcmi/Entity.h index 1f4e6c5b4..7e6a1e029 100644 --- a/include/vcmi/Entity.h +++ b/include/vcmi/Entity.h @@ -31,7 +31,7 @@ public: virtual bool isNativeTerrain(Identifier terrain) const; }; -class DLL_LINKAGE IConstBonusNativeTerrainProvider: public IConstBonusProvider, public INativeTerrainProvider +class DLL_LINKAGE IFactionMember: public IConstBonusProvider, public INativeTerrainProvider { public: /** @@ -69,7 +69,7 @@ class DLL_LINKAGE EntityWithBonuses : public EntityT, public IConstBonus }; template -class DLL_LINKAGE EntityWithNativeTerrain : public EntityT, public IConstBonusNativeTerrainProvider +class DLL_LINKAGE EntityWithNativeTerrain : public EntityT, public IFactionMember { }; diff --git a/lib/BasicTypes.cpp b/lib/BasicTypes.cpp index 1dc6753b3..b5b8b93ae 100644 --- a/lib/BasicTypes.cpp +++ b/lib/BasicTypes.cpp @@ -26,7 +26,7 @@ bool INativeTerrainProvider::isNativeTerrain(TerrainId terrain) const return native == terrain || native == ETerrainId::ANY_TERRAIN; } -TerrainId IConstBonusNativeTerrainProvider::getNativeTerrain() const +TerrainId IFactionMember::getNativeTerrain() const { constexpr auto any = TerrainId(ETerrainId::ANY_TERRAIN); const std::string cachingStringNoTerrainPenalty = "type_NO_TERRAIN_PENALTY_sANY"; diff --git a/lib/CCreatureSet.h b/lib/CCreatureSet.h index c1011b85f..33ab903c8 100644 --- a/lib/CCreatureSet.h +++ b/lib/CCreatureSet.h @@ -63,7 +63,7 @@ public: void serializeJson(JsonSerializeFormat & handler); }; -class DLL_LINKAGE CStackInstance : public CBonusSystemNode, public CStackBasicDescriptor, public CArtifactSet, public IConstBonusNativeTerrainProvider +class DLL_LINKAGE CStackInstance : public CBonusSystemNode, public CStackBasicDescriptor, public CArtifactSet, public IFactionMember { protected: const CArmedInstance *_armyObj; //stack must be part of some army, army must be part of some object diff --git a/lib/battle/Unit.h b/lib/battle/Unit.h index 894037ad7..122839877 100644 --- a/lib/battle/Unit.h +++ b/lib/battle/Unit.h @@ -41,7 +41,7 @@ namespace BattlePhases class CUnitState; -class DLL_LINKAGE Unit : public IUnitInfo, public spells::Caster, public virtual IBonusBearer, public IConstBonusNativeTerrainProvider +class DLL_LINKAGE Unit : public IUnitInfo, public spells::Caster, public virtual IBonusBearer, public IFactionMember { public: virtual ~Unit(); diff --git a/lib/mapObjects/CGHeroInstance.h b/lib/mapObjects/CGHeroInstance.h index acca5873e..58cc1c529 100644 --- a/lib/mapObjects/CGHeroInstance.h +++ b/lib/mapObjects/CGHeroInstance.h @@ -41,7 +41,7 @@ public: }; -class DLL_LINKAGE CGHeroInstance : public CArmedInstance, public IBoatGenerator, public CArtifactSet, public spells::Caster, public IConstBonusNativeTerrainProvider +class DLL_LINKAGE CGHeroInstance : public CArmedInstance, public IBoatGenerator, public CArtifactSet, public spells::Caster, public IFactionMember { // We serialize heroes into JSON for crossover friend class CCampaignState;