Browse Source

Merge pull request #1742 from rilian-la-te/effects-no-open-code

vcmi: no open-code NO_APPROPRIATE_TARGET
Ivan Savenko 2 years ago
parent
commit
36ab8d4011
2 changed files with 2 additions and 13 deletions
  1. 1 6
      lib/spells/effects/Sacrifice.cpp
  2. 1 7
      lib/spells/effects/UnitEffect.cpp

+ 1 - 6
lib/spells/effects/Sacrifice.cpp

@@ -76,12 +76,7 @@ bool Sacrifice::applicable(Problem & problem, const Mechanics * m) const
 	}
 
 	if(!(targetExists && targetToSacrificeExists))
-	{
-		MetaString text;
-		text.addTxt(MetaString::GENERAL_TXT, 185);
-		problem.add(std::move(text), Problem::NORMAL);
-		return false;
-	}
+		return m->adaptProblem(ESpellCastProblem::NO_APPROPRIATE_TARGET, problem);
 
 	return true;
 }

+ 1 - 7
lib/spells/effects/UnitEffect.cpp

@@ -46,13 +46,7 @@ bool UnitEffect::applicable(Problem & problem, const Mechanics * m) const
 	auto targets = m->battle()->battleGetUnitsIf(mainFilter);
 	vstd::erase_if(targets, predicate);
 	if(targets.empty())
-	{
-		MetaString text;
-		text.addTxt(MetaString::GENERAL_TXT, 185);
-		problem.add(std::move(text), Problem::NORMAL);
-		return false;
-	}
-
+		return m->adaptProblem(ESpellCastProblem::NO_APPROPRIATE_TARGET, problem);
 
 	return true;
 }