Improved implementation for isCommander and RingBearer card status (now they are no longer basic abilities but inner card properties in order to avoid conflicts with abilitiy modificators), added a white border on commanders to highlight them during match in the various game zones.
This commit is contained in:
@@ -257,9 +257,11 @@ void CardGui::Render()
|
||||
if(game)
|
||||
{
|
||||
if(card->has(Constants::PAYZERO) ||
|
||||
((card->has(Constants::CANPLAYFROMGRAVEYARD) || card->has(Constants::TEMPFLASHBACK) || card->getManaCost()->getFlashback() || card->getManaCost()->getRetrace()) && game->isInGrave(card)) ||
|
||||
(((card->has(Constants::FORETELL) && card->foretellTurn > -1 && game->turn > card->foretellTurn) || card->has(Constants::CANPLAYFROMEXILE)) && game->isInExile(card)))
|
||||
fakeborder->SetColor(ARGB((int)(actA),7,235,7));//green border
|
||||
((card->has(Constants::CANPLAYFROMGRAVEYARD) || card->has(Constants::TEMPFLASHBACK) || card->getManaCost()->getFlashback() || card->getManaCost()->getRetrace()) && game->isInGrave(card)) ||
|
||||
(((card->has(Constants::FORETELL) && card->foretellTurn > -1 && game->turn > card->foretellTurn) || card->has(Constants::CANPLAYFROMEXILE)) && game->isInExile(card)))
|
||||
fakeborder->SetColor(ARGB((int)(actA),7,235,7)); //green border
|
||||
else if(card->isCommander)
|
||||
fakeborder->SetColor(ARGB((int)(actA),255,255,255)); //white border for commanders
|
||||
else
|
||||
fakeborder->SetColor(ARGB((int)(actA),15,15,15));
|
||||
}
|
||||
@@ -1616,6 +1618,30 @@ bool CardGui::FilterCard(MTGCard * _card,string filter)
|
||||
cd.isFlipped = 1;
|
||||
}
|
||||
}
|
||||
//Card is commander
|
||||
else if (attribute.find("iscommander") != string::npos)
|
||||
{
|
||||
if (minus)
|
||||
{
|
||||
cd.isCommander = -1;
|
||||
}
|
||||
else
|
||||
{
|
||||
cd.isCommander = 1;
|
||||
}
|
||||
}
|
||||
//Card is Ring bearer
|
||||
else if (attribute.find("ringbearer") != string::npos)
|
||||
{
|
||||
if (minus)
|
||||
{
|
||||
cd.isRingBearer = -1;
|
||||
}
|
||||
else
|
||||
{
|
||||
cd.isRingBearer = 1;
|
||||
}
|
||||
}
|
||||
//Has x in cost
|
||||
else if (attribute.find("hasx") != string::npos)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user