todo others...
This commit is contained in:
Anthony Calosa
2016-06-09 15:35:59 +08:00
parent 76e7827ebf
commit 06fdf3f0a5
8 changed files with 115 additions and 9 deletions

View File

@@ -687,6 +687,46 @@ void GameObserver::gameStateBasedEffects()
card->myPair->myPair = NULL;
card->myPair = NULL;
}
///clear imprints
if(isInPlay(card) && card->imprintedCards.size())
{
for(size_t ic = 0; ic < card->imprintedCards.size(); ic++)
{
if(!isInExile(card->imprintedCards[ic]))
card->imprintedCards.erase(card->imprintedCards.begin() + ic);
}
}
//reset imprints
if(isInPlay(card))
{
card->imprintG = 0;
card->imprintU = 0;
card->imprintR = 0;
card->imprintB = 0;
card->imprintW = 0;
card->currentimprintName = "";
if (card->imprintedCards.size())
{
for(size_t i = 0; i < card->imprintedCards.size(); i++)
{
if (card->imprintedCards[i]->hasColor(Constants::MTG_COLOR_GREEN))
card->imprintG += 1;
if (card->imprintedCards[i]->hasColor(Constants::MTG_COLOR_BLUE))
card->imprintU += 1;
if (card->imprintedCards[i]->hasColor(Constants::MTG_COLOR_RED))
card->imprintR += 1;
if (card->imprintedCards[i]->hasColor(Constants::MTG_COLOR_BLACK))
card->imprintB += 1;
if (card->imprintedCards[i]->hasColor(Constants::MTG_COLOR_WHITE))
card->imprintW += 1;
if (card->imprintedCards[i]->getName().size())
{
card->currentimprintName = card->imprintedCards[i]->getName();
card->imprintedNames.push_back(card->imprintedCards[i]->getName());
}
}
}
}
card->bypassTC = false; //turn off bypass
////////////////////////////////////////////////////
//Unattach Equipments that dont have valid targets//