Removed Workarounds, Added support for Can't Gain life...
spellmastery - can play as though had flash used in conjunction for alternative cost. nolifegain, nolifegainopponent - cannot gain life.
This commit is contained in:
@@ -139,7 +139,10 @@ const char* Constants::MTGBasicAbilities[] = {
|
||||
"librarydeath",
|
||||
"shufflelibrarydeath",
|
||||
"offering",
|
||||
"evadebigger"
|
||||
"evadebigger",
|
||||
"spellmastery",
|
||||
"nolifegain",
|
||||
"nolifegainopponent"
|
||||
};
|
||||
|
||||
map<string,int> Constants::MTGBasicAbilitiesMap;
|
||||
|
||||
@@ -651,7 +651,7 @@ int MTGAlternativeCostRule::isReactingToClick(MTGCardInstance * card, ManaCost *
|
||||
)
|
||||
return 1;
|
||||
}
|
||||
else if ((card->hasType(Subtypes::TYPE_INSTANT)) || card->has(Constants::FLASH) || card->has(Constants::OFFERING)
|
||||
else if ((card->hasType(Subtypes::TYPE_INSTANT)) || card->has(Constants::FLASH) || card->has(Constants::SPELLMASTERY) || card->has(Constants::OFFERING)
|
||||
|| (player == card->controller() && !game->isInterrupting
|
||||
&& (game->getCurrentGamePhase() == MTG_PHASE_FIRSTMAIN
|
||||
|| game->getCurrentGamePhase() == MTG_PHASE_SECONDMAIN))
|
||||
|
||||
@@ -147,6 +147,8 @@ int Player::gainOrLoseLife(int value)
|
||||
{
|
||||
if (!value)
|
||||
return 0; //Don't do anything if there's no actual life change
|
||||
if (value>0 && (opponent()->game->battlefield->hasAbility(Constants::NOLIFEGAINOPPONENT)||game->battlefield->hasAbility(Constants::NOLIFEGAIN)))//nolifegain
|
||||
return 0;
|
||||
|
||||
thatmuch = abs(value); //the value that much is a variable to be used with triggered abilities.
|
||||
//ie:when ever you gain life, draw that many cards. when used in a trigger draw:thatmuch, will return the value
|
||||
|
||||
Reference in New Issue
Block a user