Base Power/Toughness Template as of M15

208.4. Effects that set a creature’s power and/or toughness to specific
values may refer to that creature’s
“base power,” “base toughness,” or “base power and toughness.” Other
continuous effects may
further modify the creature’s power and toughness. See rule 613,
“Interaction of Continuous
Effects.”
This commit is contained in:
Anthony Calosa
2015-09-09 22:18:13 +08:00
parent 93ed2b3bff
commit 62dd54c886
3 changed files with 11 additions and 12 deletions

View File

@@ -534,6 +534,7 @@ prowess_of_the_fair.txt
prowess_of_the_fair2.txt
prowess_of_the_fair3.txt
PTInstant.txt
PT_M15_errata.txt
pygmy_troll.txt
pyknite_i426.txt
pyroclasm.txt

View File

@@ -4307,10 +4307,10 @@ public:
string newpower;
bool newpowerfound;
int oldpower;
int oldpowerbonus;
string newtoughness;
bool newtoughnessfound;
int oldtoughness;
int oldtoughnessbonus;
map<Damageable *, vector<MTGAbility *> > newAbilities;
vector<string> newAbilitiesList;
bool newAbilityFound;

View File

@@ -4181,20 +4181,18 @@ for (it = types.begin(); it != types.end(); it++)
}
}
if(newpowerfound )
{
{//setting p/t only overrides base p/t as of M15 changes
WParsedInt * val = NEW WParsedInt(newpower,NULL, source);
oldpower = _target->power;
_target->power += val->getValue();
_target->power -= oldpower;
oldpowerbonus = _target->power - _target->origpower;//keep bonus if any
_target->setPower(oldpowerbonus + val->getValue());
_target->power += reapplyCountersBonus(_target,false,true);
delete val;
}
if(newtoughnessfound )
{
{//setting p/t only overrides base p/t as of M15 changes
WParsedInt * val = NEW WParsedInt(newtoughness,NULL, source);
oldtoughness = _target->toughness;
_target->addToToughness(val->getValue());
_target->addToToughness(-oldtoughness);
oldtoughnessbonus = _target->toughness - _target->origtoughness;// keep bonus if any
_target->setToughness(oldtoughnessbonus + val->getValue());
_target->addToToughness(reapplyCountersBonus(_target,true,false));
_target->life = _target->toughness;
delete val;
@@ -4283,11 +4281,11 @@ int ATransformer::destroy()
if(newpowerfound )
{
_target->power = oldpower;
_target->setPower(oldpowerbonus + _target->origpower);
}
if(newtoughnessfound )
{
_target->setToughness(oldtoughness);
_target->setToughness(oldtoughnessbonus + _target->origtoughness);
}
if(newAbilityFound)
{