Browse Source

Merge pull request #3613 from Alexander-Wilms/redundant-override

Remove more redundant virtual specifiers
Ivan Savenko 1 year ago
parent
commit
a9dc03e6e3
47 changed files with 79 additions and 79 deletions
  1. 2 2
      AI/Nullkiller/Behaviors/BuildingBehavior.h
  2. 2 2
      AI/Nullkiller/Behaviors/BuyArmyBehavior.h
  3. 2 2
      AI/Nullkiller/Behaviors/CaptureObjectsBehavior.h
  4. 1 1
      AI/Nullkiller/Behaviors/ClusterBehavior.h
  5. 2 2
      AI/Nullkiller/Behaviors/DefenceBehavior.h
  6. 1 1
      AI/Nullkiller/Behaviors/GatherArmyBehavior.h
  7. 1 1
      AI/Nullkiller/Behaviors/RecruitHeroBehavior.h
  8. 1 1
      AI/Nullkiller/Behaviors/StartupBehavior.h
  9. 1 1
      AI/Nullkiller/Behaviors/StayAtTownBehavior.h
  10. 9 9
      AI/Nullkiller/Engine/PriorityEvaluator.cpp
  11. 1 1
      AI/Nullkiller/Goals/BuildThis.h
  12. 1 1
      AI/Nullkiller/Goals/BuyArmy.h
  13. 1 1
      AI/Nullkiller/Goals/CGoal.h
  14. 2 2
      AI/Nullkiller/Goals/CaptureObject.h
  15. 2 2
      AI/Nullkiller/Goals/CompleteQuest.h
  16. 1 1
      AI/Nullkiller/Goals/Composition.h
  17. 1 1
      AI/Nullkiller/Goals/Invalid.h
  18. 1 1
      AI/Nullkiller/Goals/RecruitHero.h
  19. 1 1
      AI/Nullkiller/Goals/StayAtTown.h
  20. 1 1
      AI/Nullkiller/Markers/ArmyUpgrade.h
  21. 1 1
      AI/Nullkiller/Markers/DefendTown.h
  22. 1 1
      AI/Nullkiller/Markers/HeroExchange.h
  23. 1 1
      AI/Nullkiller/Markers/UnlockCluster.h
  24. 1 1
      AI/Nullkiller/Pathfinding/AINodeStorage.h
  25. 1 1
      AI/Nullkiller/Pathfinding/Actions/AdventureSpellCastMovementActions.h
  26. 1 1
      AI/Nullkiller/Pathfinding/Actions/BattleAction.h
  27. 3 3
      AI/Nullkiller/Pathfinding/Actions/BoatActions.h
  28. 2 2
      AI/Nullkiller/Pathfinding/Actions/QuestAction.h
  29. 1 1
      AI/Nullkiller/Pathfinding/Actions/TownPortalAction.h
  30. 3 3
      AI/Nullkiller/Pathfinding/Actors.h
  31. 1 1
      AI/VCAI/Pathfinding/AINodeStorage.h
  32. 1 1
      AI/VCAI/Pathfinding/Actions/BattleAction.h
  33. 2 2
      AI/VCAI/Pathfinding/Actions/BoatActions.h
  34. 1 1
      AI/VCAI/Pathfinding/Actions/TownPortalAction.h
  35. 1 1
      client/gui/CIntObject.h
  36. 1 1
      config/filesystem.json
  37. 1 1
      docs/modders/Difficulty.md
  38. 2 2
      lib/BattleFieldHandler.h
  39. 1 1
      lib/CCreatureSet.h
  40. 1 1
      lib/CGameInfoCallback.h
  41. 4 4
      lib/CGameInterface.h
  42. 2 2
      lib/RiverHandler.h
  43. 2 2
      lib/RoadHandler.h
  44. 2 2
      lib/TerrainHandler.h
  45. 5 5
      lib/bonuses/Updaters.h
  46. 1 1
      lib/pathfinder/NodeStorage.h
  47. 2 2
      lib/rmg/CRmgTemplateStorage.h

+ 2 - 2
AI/Nullkiller/Behaviors/BuildingBehavior.h

@@ -25,8 +25,8 @@ namespace Goals
 		{
 		}
 
-		virtual Goals::TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		Goals::TGoalVec decompose() const override;
+		std::string toString() const override;
 		bool operator==(const BuildingBehavior & other) const override
 		{
 			return true;

+ 2 - 2
AI/Nullkiller/Behaviors/BuyArmyBehavior.h

@@ -24,8 +24,8 @@ namespace Goals
 		{
 		}
 
-		virtual Goals::TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		Goals::TGoalVec decompose() const override;
+		std::string toString() const override;
 		bool operator==(const BuyArmyBehavior & other) const override
 		{
 			return true;

+ 2 - 2
AI/Nullkiller/Behaviors/CaptureObjectsBehavior.h

@@ -48,8 +48,8 @@ namespace Goals
 			specificObjects = true;
 		}
 
-		virtual Goals::TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		Goals::TGoalVec decompose() const override;
+		std::string toString() const override;
 
 		CaptureObjectsBehavior & ofType(int type)
 		{

+ 1 - 1
AI/Nullkiller/Behaviors/ClusterBehavior.h

@@ -29,7 +29,7 @@ namespace Goals
 		}
 
 		TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		bool operator==(const ClusterBehavior & other) const override
 		{

+ 2 - 2
AI/Nullkiller/Behaviors/DefenceBehavior.h

@@ -29,8 +29,8 @@ namespace Goals
 		{
 		}
 
-		virtual Goals::TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		Goals::TGoalVec decompose() const override;
+		std::string toString() const override;
 
 		bool operator==(const DefenceBehavior & other) const override
 		{

+ 1 - 1
AI/Nullkiller/Behaviors/GatherArmyBehavior.h

@@ -26,7 +26,7 @@ namespace Goals
 		}
 
 		TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		bool operator==(const GatherArmyBehavior & other) const override
 		{

+ 1 - 1
AI/Nullkiller/Behaviors/RecruitHeroBehavior.h

@@ -26,7 +26,7 @@ namespace Goals
 		}
 
 		TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		bool operator==(const RecruitHeroBehavior & other) const override
 		{

+ 1 - 1
AI/Nullkiller/Behaviors/StartupBehavior.h

@@ -26,7 +26,7 @@ namespace Goals
 		}
 
 		TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		bool operator==(const StartupBehavior & other) const override
 		{

+ 1 - 1
AI/Nullkiller/Behaviors/StayAtTownBehavior.h

@@ -26,7 +26,7 @@ namespace Goals
 		}
 
 		TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		bool operator==(const StayAtTownBehavior & other) const override
 		{

+ 9 - 9
AI/Nullkiller/Engine/PriorityEvaluator.cpp

@@ -702,7 +702,7 @@ int32_t RewardEvaluator::getGoldReward(const CGObjectInstance * target, const CG
 class HeroExchangeEvaluator : public IEvaluationContextBuilder
 {
 public:
-	virtual void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
+	void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
 	{
 		if(task->goalType != Goals::HERO_EXCHANGE)
 			return;
@@ -719,7 +719,7 @@ public:
 class ArmyUpgradeEvaluator : public IEvaluationContextBuilder
 {
 public:
-	virtual void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
+	void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
 	{
 		if(task->goalType != Goals::ARMY_UPGRADE)
 			return;
@@ -736,7 +736,7 @@ public:
 class StayAtTownManaRecoveryEvaluator : public IEvaluationContextBuilder
 {
 public:
-	virtual void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
+	void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
 	{
 		if(task->goalType != Goals::STAY_AT_TOWN)
 			return;
@@ -771,7 +771,7 @@ void addTileDanger(EvaluationContext & evaluationContext, const int3 & tile, uin
 class DefendTownEvaluator : public IEvaluationContextBuilder
 {
 public:
-	virtual void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
+	void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
 	{
 		if(task->goalType != Goals::DEFEND_TOWN)
 			return;
@@ -821,7 +821,7 @@ private:
 public:
 	ExecuteHeroChainEvaluationContextBuilder(const Nullkiller * ai) : ai(ai) {}
 
-	virtual void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
+	void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
 	{
 		if(task->goalType != Goals::EXECUTE_HERO_CHAIN)
 			return;
@@ -879,7 +879,7 @@ class ClusterEvaluationContextBuilder : public IEvaluationContextBuilder
 public:
 	ClusterEvaluationContextBuilder(const Nullkiller * ai) {}
 
-	virtual void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
+	void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
 	{
 		if(task->goalType != Goals::UNLOCK_CLUSTER)
 			return;
@@ -926,7 +926,7 @@ public:
 class ExchangeSwapTownHeroesContextBuilder : public IEvaluationContextBuilder
 {
 public:
-	virtual void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
+	void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
 	{
 		if(task->goalType != Goals::EXCHANGE_SWAP_TOWN_HEROES)
 			return;
@@ -954,7 +954,7 @@ private:
 public:
 	DismissHeroContextBuilder(const Nullkiller * ai) : ai(ai) {}
 
-	virtual void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
+	void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
 	{
 		if(task->goalType != Goals::DISMISS_HERO)
 			return;
@@ -974,7 +974,7 @@ public:
 class BuildThisEvaluationContextBuilder : public IEvaluationContextBuilder
 {
 public:
-	virtual void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
+	void buildEvaluationContext(EvaluationContext & evaluationContext, Goals::TSubgoal task) const override
 	{
 		if(task->goalType != Goals::BUILD_STRUCTURE)
 			return;

+ 1 - 1
AI/Nullkiller/Goals/BuildThis.h

@@ -40,7 +40,7 @@ namespace Goals
 		BuildThis(BuildingID Bid, const CGTownInstance * tid);
 
 		bool operator==(const BuildThis & other) const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 		void accept(AIGateway * ai) override;
 	};
 }

+ 1 - 1
AI/Nullkiller/Goals/BuyArmy.h

@@ -38,7 +38,7 @@ namespace Goals
 
 		bool operator==(const BuyArmy & other) const override;
 
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		void accept(AIGateway * ai) override;
 	};

+ 1 - 1
AI/Nullkiller/Goals/CGoal.h

@@ -92,7 +92,7 @@ namespace Goals
 
 		bool isElementar() const override { return true; }
 
-		virtual HeroPtr getHero() const override { return AbstractGoal::hero; }
+		HeroPtr getHero() const override { return AbstractGoal::hero; }
 
 		int getHeroExchangeCount() const override { return 0; }
 	};

+ 2 - 2
AI/Nullkiller/Goals/CaptureObject.h

@@ -35,8 +35,8 @@ namespace Goals
 		}
 
 		bool operator==(const CaptureObject & other) const override;
-		virtual Goals::TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		Goals::TGoalVec decompose() const override;
+		std::string toString() const override;
 		bool hasHash() const override { return true; }
 		uint64_t getHash() const override;
 	};

+ 2 - 2
AI/Nullkiller/Goals/CompleteQuest.h

@@ -29,8 +29,8 @@ namespace Goals
 		{
 		}
 
-		virtual Goals::TGoalVec decompose() const override;
-		virtual std::string toString() const override;
+		Goals::TGoalVec decompose() const override;
+		std::string toString() const override;
 		bool hasHash() const override { return true; }
 		uint64_t getHash() const override;
 

+ 1 - 1
AI/Nullkiller/Goals/Composition.h

@@ -27,7 +27,7 @@ namespace Goals
 		}
 
 		bool operator==(const Composition & other) const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 		void accept(AIGateway * ai) override;
 		Composition & addNext(const AbstractGoal & goal);
 		Composition & addNext(TSubgoal goal);

+ 1 - 1
AI/Nullkiller/Goals/Invalid.h

@@ -37,7 +37,7 @@ namespace Goals
 			return true;
 		}
 
-		virtual std::string toString() const override
+		std::string toString() const override
 		{
 			return "Invalid";
 		}

+ 1 - 1
AI/Nullkiller/Goals/RecruitHero.h

@@ -43,7 +43,7 @@ namespace Goals
 			return true;
 		}
 
-		virtual std::string toString() const override;
+		std::string toString() const override;
 		void accept(AIGateway * ai) override;
 	};
 }

+ 1 - 1
AI/Nullkiller/Goals/StayAtTown.h

@@ -27,7 +27,7 @@ namespace Goals
 		StayAtTown(const CGTownInstance * town, AIPath & path);
 
 		bool operator==(const StayAtTown & other) const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 		void accept(AIGateway * ai) override;
 		float getMovementWasted() const { return movementWasted; }
 	};

+ 1 - 1
AI/Nullkiller/Markers/ArmyUpgrade.h

@@ -30,7 +30,7 @@ namespace Goals
 		ArmyUpgrade(const CGHeroInstance * targetMain, const CGObjectInstance * upgrader, const ArmyUpgradeInfo & upgrade);
 
 		bool operator==(const ArmyUpgrade & other) const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		uint64_t getUpgradeValue() const { return upgradeValue; }
 		uint64_t getInitialArmyValue() const { return initialValue; }

+ 1 - 1
AI/Nullkiller/Markers/DefendTown.h

@@ -31,7 +31,7 @@ namespace Goals
 		DefendTown(const CGTownInstance * town, const HitMapInfo & treat, const CGHeroInstance * defender);
 
 		bool operator==(const DefendTown & other) const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		const HitMapInfo & getTreat() const { return treat; }
 

+ 1 - 1
AI/Nullkiller/Markers/HeroExchange.h

@@ -29,7 +29,7 @@ namespace Goals
 		}
 
 		bool operator==(const HeroExchange & other) const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		uint64_t getReinforcementArmyStrength() const;
 	};

+ 1 - 1
AI/Nullkiller/Markers/UnlockCluster.h

@@ -37,7 +37,7 @@ namespace Goals
 		}
 
 		bool operator==(const UnlockCluster & other) const override;
-		virtual std::string toString() const override;
+		std::string toString() const override;
 		std::shared_ptr<ObjectCluster> getCluster() const { return cluster; }
 		const AIPath & getPathToCenter() { return pathToCenter; }
 	};

+ 1 - 1
AI/Nullkiller/Pathfinding/AINodeStorage.h

@@ -188,7 +188,7 @@ public:
 	bool selectFirstActor();
 	bool selectNextActor();
 
-	virtual std::vector<CGPathNode *> getInitialNodes() override;
+	std::vector<CGPathNode *> getInitialNodes() override;
 
 	virtual std::vector<CGPathNode *> calculateNeighbours(
 		const PathNodeInfo & source,

+ 1 - 1
AI/Nullkiller/Pathfinding/Actions/AdventureSpellCastMovementActions.h

@@ -40,7 +40,7 @@ namespace AIPathfinding
 
 		bool canAct(const AIPathNode * source) const override;
 
-		virtual std::string toString() const override;
+		std::string toString() const override;
 	};
 
 	class WaterWalkingAction : public AdventureCastAction

+ 1 - 1
AI/Nullkiller/Pathfinding/Actions/BattleAction.h

@@ -30,7 +30,7 @@ namespace AIPathfinding
 
 		void execute(const CGHeroInstance * hero) const override;
 
-		virtual std::string toString() const override;
+		std::string toString() const override;
 	};
 }
 

+ 3 - 3
AI/Nullkiller/Pathfinding/Actions/BoatActions.h

@@ -38,7 +38,7 @@ namespace AIPathfinding
 
 		const ChainActor * getActor(const ChainActor * sourceActor) const override;
 
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 	private:
 		int32_t getManaCost(const CGHeroInstance * hero) const;
@@ -60,11 +60,11 @@ namespace AIPathfinding
 
 		void execute(const CGHeroInstance * hero) const override;
 
-		virtual Goals::TSubgoal decompose(const CGHeroInstance * hero) const override;
+		Goals::TSubgoal decompose(const CGHeroInstance * hero) const override;
 
 		const ChainActor * getActor(const ChainActor * sourceActor) const override;
 
-		virtual std::string toString() const override;
+		std::string toString() const override;
 
 		const CGObjectInstance * targetObject() const override;
 	};

+ 2 - 2
AI/Nullkiller/Pathfinding/Actions/QuestAction.h

@@ -30,11 +30,11 @@ namespace AIPathfinding
 
 		bool canAct(const AIPathNode * node) const override;
 
-		virtual Goals::TSubgoal decompose(const CGHeroInstance * hero) const override;
+		Goals::TSubgoal decompose(const CGHeroInstance * hero) const override;
 
 		void execute(const CGHeroInstance * hero) const override;
 
-		virtual std::string toString() const override;
+		std::string toString() const override;
 	};
 }
 

+ 1 - 1
AI/Nullkiller/Pathfinding/Actions/TownPortalAction.h

@@ -31,7 +31,7 @@ namespace AIPathfinding
 
 		void execute(const CGHeroInstance * hero) const override;
 
-		virtual std::string toString() const override;
+		std::string toString() const override;
 	};
 }
 

+ 3 - 3
AI/Nullkiller/Pathfinding/Actors.h

@@ -136,7 +136,7 @@ private:
 
 public:
 	ObjectActor(const CGObjectInstance * obj, const CCreatureSet * army, uint64_t chainMask, int initialTurn);
-	virtual std::string toString() const override;
+	std::string toString() const override;
 	const CGObjectInstance * getActorObject() const override;
 };
 
@@ -154,7 +154,7 @@ private:
 public:
 	DwellingActor(const CGDwelling * dwelling, uint64_t chainMask, bool waitForGrowth, int dayOfWeek);
 	~DwellingActor();
-	virtual std::string toString() const override;
+	std::string toString() const override;
 
 protected:
 	int getInitialTurn(bool waitForGrowth, int dayOfWeek);
@@ -168,7 +168,7 @@ private:
 
 public:
 	TownGarrisonActor(const CGTownInstance * town, uint64_t chainMask);
-	virtual std::string toString() const override;
+	std::string toString() const override;
 };
 
 }

+ 1 - 1
AI/VCAI/Pathfinding/AINodeStorage.h

@@ -87,7 +87,7 @@ public:
 
 	void initialize(const PathfinderOptions & options, const CGameState * gs) override;
 
-	virtual std::vector<CGPathNode *> getInitialNodes() override;
+	std::vector<CGPathNode *> getInitialNodes() override;
 
 	virtual std::vector<CGPathNode *> calculateNeighbours(
 		const PathNodeInfo & source,

+ 1 - 1
AI/VCAI/Pathfinding/Actions/BattleAction.h

@@ -25,6 +25,6 @@ namespace AIPathfinding
 		{
 		}
 
-		virtual Goals::TSubgoal whatToDo(const HeroPtr & hero) const override;
+		Goals::TSubgoal whatToDo(const HeroPtr & hero) const override;
 	};
 }

+ 2 - 2
AI/VCAI/Pathfinding/Actions/BoatActions.h

@@ -40,7 +40,7 @@ namespace AIPathfinding
 		{
 		}
 
-		virtual Goals::TSubgoal whatToDo(const HeroPtr & hero) const override;
+		Goals::TSubgoal whatToDo(const HeroPtr & hero) const override;
 
 		virtual void applyOnDestination(
 			const CGHeroInstance * hero,
@@ -66,6 +66,6 @@ namespace AIPathfinding
 		{
 		}
 
-		virtual Goals::TSubgoal whatToDo(const HeroPtr & hero) const override;
+		Goals::TSubgoal whatToDo(const HeroPtr & hero) const override;
 	};
 }

+ 1 - 1
AI/VCAI/Pathfinding/Actions/TownPortalAction.h

@@ -27,6 +27,6 @@ namespace AIPathfinding
 		{
 		}
 
-		virtual Goals::TSubgoal whatToDo(const HeroPtr & hero) const override;
+		Goals::TSubgoal whatToDo(const HeroPtr & hero) const override;
 	};
 }

+ 1 - 1
client/gui/CIntObject.h

@@ -108,7 +108,7 @@ public:
 	bool isPopupWindow() const override;
 
 	/// called only for windows whenever screen size changes
-	/// default behavior is to re-center, can be overriden
+	/// default behavior is to re-center, can be overridden
 	void onScreenResize() override;
 
 	/// returns true if UI elements wants to handle event of specific type (LCLICK, SHOW_POPUP ...)

+ 1 - 1
config/filesystem.json

@@ -28,7 +28,7 @@
 			{"type" : "snd", "path" : "Data/H3ab_ahd.snd"},
 			{"type" : "snd", "path" : "Data/Heroes3.snd"},
 			{"type" : "snd", "path" : "Data/Heroes3-cd2.snd"},
-			//WoG have overriden sounds with .82m extension in Data
+			//WoG have overridden sounds with .82m extension in Data
 			{"type" : "dir",  "path" : "Data", "depth": 0}
 		],
 		"MUSIC/":

+ 1 - 1
docs/modders/Difficulty.md

@@ -4,7 +4,7 @@
 Since VCMI 1.4.0 there are more capabilities to configure difficulty parameters.
 It means, that modders can give different bonuses to AI or human players depending on selected difficulty
 
-Difficulty configuration is located in [config/difficulty.json](../config/difficulty.json) file and can be overriden by mods.
+Difficulty configuration is located in [config/difficulty.json](../config/difficulty.json) file and can be overridden by mods.
 
 ## Format summary
 

+ 2 - 2
lib/BattleFieldHandler.h

@@ -70,8 +70,8 @@ public:
 		const std::string & identifier,
 		size_t index) override;
 
-	virtual const std::vector<std::string> & getTypeNames() const override;
-	virtual std::vector<JsonNode> loadLegacyData() override;
+	const std::vector<std::string> & getTypeNames() const override;
+	std::vector<JsonNode> loadLegacyData() override;
 };
 
 VCMI_LIB_NAMESPACE_END

+ 1 - 1
lib/CCreatureSet.h

@@ -127,7 +127,7 @@ public:
 	ArtPlacementMap putArtifact(ArtifactPosition pos, CArtifactInstance * art) override;//from CArtifactSet
 	void removeArtifact(ArtifactPosition pos) override;
 	ArtBearer::ArtBearer bearerType() const override; //from CArtifactSet
-	virtual std::string nodeName() const override; //from CBonusSystemnode
+	std::string nodeName() const override; //from CBonusSystemnode
 	void deserializationFix();
 	PlayerColor getOwner() const override;
 };

+ 1 - 1
lib/CGameInfoCallback.h

@@ -185,7 +185,7 @@ public:
 	//objects
 	const CGObjectInstance * getObj(ObjectInstanceID objid, bool verbose = true) const override;
 	virtual std::vector <const CGObjectInstance * > getBlockingObjs(int3 pos)const;
-	virtual std::vector <const CGObjectInstance * > getVisitableObjs(int3 pos, bool verbose = true) const override;
+	std::vector <const CGObjectInstance * > getVisitableObjs(int3 pos, bool verbose = true) const override;
 	virtual std::vector <const CGObjectInstance * > getFlaggableObjects(int3 pos) const;
 	virtual const CGObjectInstance * getTopObj (int3 pos) const;
 	virtual PlayerColor getOwner(ObjectInstanceID heroID) const;

+ 4 - 4
lib/CGameInterface.h

@@ -150,17 +150,17 @@ public:
 	void battleNewRound(const BattleID & battleID) override;
 	void battleCatapultAttacked(const BattleID & battleID, const CatapultAttack & ca) override;
 	void battleStart(const BattleID & battleID, const CCreatureSet *army1, const CCreatureSet *army2, int3 tile, const CGHeroInstance *hero1, const CGHeroInstance *hero2, bool side, bool replayAllowed) override;
-	virtual void battleStacksAttacked(const BattleID & battleID, const std::vector<BattleStackAttacked> & bsa, bool ranged) override;
+	void battleStacksAttacked(const BattleID & battleID, const std::vector<BattleStackAttacked> & bsa, bool ranged) override;
 	void actionStarted(const BattleID & battleID, const BattleAction &action) override;
 	void battleNewRoundFirst(const BattleID & battleID) override;
 	void actionFinished(const BattleID & battleID, const BattleAction &action) override;
 	void battleStacksEffectsSet(const BattleID & battleID, const SetStackEffect & sse) override;
-	virtual void battleObstaclesChanged(const BattleID & battleID, const std::vector<ObstacleChanges> & obstacles) override;
-	virtual void battleStackMoved(const BattleID & battleID, const CStack * stack, std::vector<BattleHex> dest, int distance, bool teleport) override;
+	void battleObstaclesChanged(const BattleID & battleID, const std::vector<ObstacleChanges> & obstacles) override;
+	void battleStackMoved(const BattleID & battleID, const CStack * stack, std::vector<BattleHex> dest, int distance, bool teleport) override;
 	void battleAttack(const BattleID & battleID, const BattleAttack *ba) override;
 	void battleSpellCast(const BattleID & battleID, const BattleSpellCast *sc) override;
 	void battleEnd(const BattleID & battleID, const BattleResult *br, QueryID queryID) override;
-	virtual void battleUnitsChanged(const BattleID & battleID, const std::vector<UnitChanges> & units) override;
+	void battleUnitsChanged(const BattleID & battleID, const std::vector<UnitChanges> & units) override;
 
 	void saveGame(BinarySerializer & h) override;
 	void loadGame(BinaryDeserializer & h) override;

+ 2 - 2
lib/RiverHandler.h

@@ -69,8 +69,8 @@ public:
 
 	RiverTypeHandler();
 
-	virtual const std::vector<std::string> & getTypeNames() const override;
-	virtual std::vector<JsonNode> loadLegacyData() override;
+	const std::vector<std::string> & getTypeNames() const override;
+	std::vector<JsonNode> loadLegacyData() override;
 };
 
 VCMI_LIB_NAMESPACE_END

+ 2 - 2
lib/RoadHandler.h

@@ -59,8 +59,8 @@ public:
 
 	RoadTypeHandler();
 
-	virtual const std::vector<std::string> & getTypeNames() const override;
-	virtual std::vector<JsonNode> loadLegacyData() override;
+	const std::vector<std::string> & getTypeNames() const override;
+	std::vector<JsonNode> loadLegacyData() override;
 };
 
 VCMI_LIB_NAMESPACE_END

+ 2 - 2
lib/TerrainHandler.h

@@ -107,8 +107,8 @@ public:
 		const std::string & identifier,
 		size_t index) override;
 
-	virtual const std::vector<std::string> & getTypeNames() const override;
-	virtual std::vector<JsonNode> loadLegacyData() override;
+	const std::vector<std::string> & getTypeNames() const override;
+	std::vector<JsonNode> loadLegacyData() override;
 };
 
 VCMI_LIB_NAMESPACE_END

+ 5 - 5
lib/bonuses/Updaters.h

@@ -48,7 +48,7 @@ public:
 	}
 
 	std::shared_ptr<Bonus> createUpdatedBonus(const std::shared_ptr<Bonus> & b, const CBonusSystemNode & context) const override;
-	virtual std::string toString() const override;
+	std::string toString() const override;
 	JsonNode toJsonNode() const override;
 };
 
@@ -61,7 +61,7 @@ public:
 	}
 
 	std::shared_ptr<Bonus> createUpdatedBonus(const std::shared_ptr<Bonus> & b, const CBonusSystemNode & context) const override;
-	virtual std::string toString() const override;
+	std::string toString() const override;
 	JsonNode toJsonNode() const override;
 };
 
@@ -74,7 +74,7 @@ public:
 	}
 
 	std::shared_ptr<Bonus> createUpdatedBonus(const std::shared_ptr<Bonus> & b, const CBonusSystemNode & context) const override;
-	virtual std::string toString() const override;
+	std::string toString() const override;
 	JsonNode toJsonNode() const override;
 };
 
@@ -97,7 +97,7 @@ public:
 	}
 
 	std::shared_ptr<Bonus> createUpdatedBonus(const std::shared_ptr<Bonus> & b, const CBonusSystemNode & context) const override;
-	virtual std::string toString() const override;
+	std::string toString() const override;
 	JsonNode toJsonNode() const override;
 };
 
@@ -110,7 +110,7 @@ public:
 	}
 
 	std::shared_ptr<Bonus> createUpdatedBonus(const std::shared_ptr<Bonus>& b, const CBonusSystemNode& context) const override;
-	virtual std::string toString() const override;
+	std::string toString() const override;
 	JsonNode toJsonNode() const override;
 };
 

+ 1 - 1
lib/pathfinder/NodeStorage.h

@@ -34,7 +34,7 @@ public:
 	void initialize(const PathfinderOptions & options, const CGameState * gs) override;
 	virtual ~NodeStorage() = default;
 
-	virtual std::vector<CGPathNode *> getInitialNodes() override;
+	std::vector<CGPathNode *> getInitialNodes() override;
 
 	virtual std::vector<CGPathNode *> calculateNeighbours(
 		const PathNodeInfo & source,

+ 2 - 2
lib/rmg/CRmgTemplateStorage.h

@@ -27,8 +27,8 @@ public:
 	std::vector<JsonNode> loadLegacyData() override;
 
 	/// loads single object into game. Scope is namespace of this object, same as name of source mod
-	virtual void loadObject(std::string scope, std::string name, const JsonNode & data) override;
-	virtual void loadObject(std::string scope, std::string name, const JsonNode & data, size_t index) override;
+	void loadObject(std::string scope, std::string name, const JsonNode & data) override;
+	void loadObject(std::string scope, std::string name, const JsonNode & data, size_t index) override;
 
 	void afterLoadFinalization() override;