Explorar o código

vcmi: a bunch of forward definitions

Konstantin %!s(int64=2) %!d(string=hai) anos
pai
achega
e60a4318c3

+ 1 - 0
lib/BasicTypes.cpp

@@ -13,6 +13,7 @@
 #include "VCMI_Lib.h"
 #include "GameConstants.h"
 #include "GameSettings.h"
+#include "JsonNode.h"
 #include "bonuses/BonusList.h"
 #include "bonuses/Bonus.h"
 #include "bonuses/IBonusBearer.h"

+ 1 - 0
lib/BattleFieldHandler.cpp

@@ -11,6 +11,7 @@
 
 #include <vcmi/Entity.h>
 #include "BattleFieldHandler.h"
+#include "JsonNode.h"
 
 VCMI_LIB_NAMESPACE_BEGIN
 

+ 0 - 1
lib/CModHandler.cpp

@@ -7,7 +7,6 @@
  * Full text of license available in license.txt file, in main folder
  *
  */
-#include "GameConstants.h"
 #include "StdInc.h"
 #include "CModHandler.h"
 #include "mapObjects/CObjectClassesHandler.h"

+ 1 - 0
lib/bonuses/Bonus.h

@@ -20,6 +20,7 @@ class ILimiter;
 class IPropagator;
 class IUpdater;
 class BonusList;
+class CSelector;
 
 using TBonusSubtype = int32_t;
 using TBonusListPtr = std::shared_ptr<BonusList>;

+ 2 - 0
lib/bonuses/BonusEnum.cpp

@@ -13,6 +13,8 @@
 
 #include "BonusEnum.h"
 
+#include "../JsonNode.h"
+
 VCMI_LIB_NAMESPACE_BEGIN
 
 #define BONUS_NAME(x) { #x, BonusType::x },

+ 2 - 2
lib/bonuses/BonusEnum.h

@@ -10,10 +10,10 @@
 
 #pragma once
 
-#include "../JsonNode.h"
-
 VCMI_LIB_NAMESPACE_BEGIN
 
+class JsonNode;
+
 #define BONUS_LIST										\
 	BONUS_NAME(NONE) 									\
 	BONUS_NAME(LEVEL_COUNTER) /* for commander artifacts*/ \

+ 2 - 0
lib/bonuses/BonusList.cpp

@@ -11,6 +11,8 @@
 #include "StdInc.h"
 #include "CBonusSystemNode.h"
 
+#include "../JsonNode.h"
+
 VCMI_LIB_NAMESPACE_BEGIN
 
 BonusList::BonusList(bool BelongsToTree) : belongsToTree(BelongsToTree)

+ 2 - 0
lib/bonuses/CBonusSystemNode.h

@@ -9,6 +9,8 @@
  */
 #pragma once
 
+#include "GameConstants.h"
+
 #include "BonusList.h"
 #include "IBonusBearer.h"
 

+ 5 - 1
lib/bonuses/Limiters.h

@@ -9,10 +9,14 @@
  */
 
 #include "Bonus.h"
-#include "battle/BattleHex.h"
+
+#include "../GameConstants.h"
+#include "../battle/BattleHex.h"
 
 VCMI_LIB_NAMESPACE_BEGIN
 
+class CCreature;
+
 extern DLL_LINKAGE const std::map<std::string, TLimiterPtr> bonusLimiterMap;
 
 struct BonusLimitationContext

+ 2 - 0
scripting/lua/api/BonusSystem.cpp

@@ -11,6 +11,8 @@
 
 #include "BonusSystem.h"
 
+#include "../../../lib/JsonNode.h"
+
 #include "../../../lib/bonuses/BonusList.h"
 #include "../../../lib/bonuses/Bonus.h"
 #include "../../../lib/bonuses/IBonusBearer.h"

+ 1 - 0
test/mock/mock_spells_Spell.h

@@ -11,6 +11,7 @@
 #pragma once
 
 #include <vcmi/spells/Spell.h>
+#include "GameConstants.h"
 
 namespace spells
 {