Ver código fonte

Add more descriptive error messages

Ivan Savenko 1 ano atrás
pai
commit
f963b827e9
1 arquivos alterados com 6 adições e 0 exclusões
  1. 6 0
      lib/gameState/CGameStateCampaign.cpp

+ 6 - 0
lib/gameState/CGameStateCampaign.cpp

@@ -392,9 +392,15 @@ void CGameStateCampaign::transferMissingArtifacts(const CampaignTravel & travelO
 
 		auto * donorHero = campaignHeroReplacement.hero;
 
+		if (!donorHero)
+			throw std::runtime_error("Failed to find hero to take artifacts from! Scenario: " + gameState->map->name.toString());
+
 		for (auto const & artLocation : campaignHeroReplacement.transferrableArtifacts)
 		{
 			auto * artifact = donorHero->getArt(artLocation);
+			if (!donorHero)
+				throw std::runtime_error("Failed to find artifacts to transfer to travelling hero! Scenario: " + gameState->map->name.toString());
+
 			artifact->removeFrom(*donorHero, artLocation);
 
 			if (receiver)