simplified MagicCardDefinition.setAbility, separate ability name and arg in CardDefinitions
parent
53b1657058
commit
25442651de
|
@ -99,7 +99,9 @@ public class CardDefinitions {
|
|||
} else if ("ability".equals(property)) {
|
||||
final String names[]=value.split(",");
|
||||
for (final String name : names) {
|
||||
card.setAbility(MagicAbility.getAbility(name));
|
||||
final MagicAbility ability = MagicAbility.getAbility(name);
|
||||
final String arg = name.substring(ability.toString().length()).trim();
|
||||
card.setAbility(ability, arg);
|
||||
}
|
||||
} else if ("given_pt".equals(property)) {
|
||||
if (!card.isEquipment() && !card.isAura()) {
|
||||
|
|
|
@ -13,12 +13,6 @@ import magic.model.event.MagicPlayCardEvent;
|
|||
import magic.model.event.MagicSpellCardEvent;
|
||||
import magic.model.event.MagicTapManaActivation;
|
||||
import magic.model.event.MagicTiming;
|
||||
import magic.model.trigger.MagicBattleCryTrigger;
|
||||
import magic.model.trigger.MagicExaltedTrigger;
|
||||
import magic.model.trigger.MagicLivingWeaponTrigger;
|
||||
import magic.model.trigger.MagicEchoTrigger;
|
||||
import magic.model.trigger.MagicTappedIntoPlayTrigger;
|
||||
import magic.model.trigger.MagicModularTrigger;
|
||||
import magic.model.trigger.MagicTrigger;
|
||||
import magic.model.mstatic.MagicStatic;
|
||||
import magic.model.mstatic.MagicCDA;
|
||||
|
@ -602,20 +596,12 @@ public class MagicCardDefinition {
|
|||
}
|
||||
|
||||
public void setAbility(final MagicAbility ability) {
|
||||
abilityFlags|=ability.getMask();
|
||||
if (ability==MagicAbility.Exalted) {
|
||||
add(MagicExaltedTrigger.getInstance());
|
||||
} else if (ability==MagicAbility.BattleCry) {
|
||||
add(MagicBattleCryTrigger.getInstance());
|
||||
} else if (ability==MagicAbility.LivingWeapon) {
|
||||
add(MagicLivingWeaponTrigger.getInstance());
|
||||
} else if (ability==MagicAbility.Echo) {
|
||||
add(MagicEchoTrigger.create());
|
||||
} else if (ability==MagicAbility.EntersTapped) {
|
||||
add(MagicTappedIntoPlayTrigger.create());
|
||||
} else if (ability==MagicAbility.Modular) {
|
||||
add(MagicModularTrigger.create());
|
||||
}
|
||||
setAbility(ability, "");
|
||||
}
|
||||
|
||||
public void setAbility(final MagicAbility ability, final String arg) {
|
||||
abilityFlags |= ability.getMask();
|
||||
ability.addAbilityImpl(this, arg);
|
||||
}
|
||||
|
||||
public long getAbilityFlags() {
|
||||
|
|
Loading…
Reference in New Issue