mirror of
https://github.com/magefree/mage.git
synced 2026-01-24 20:29:19 -08:00
added sourceId to Watchers
This commit is contained in:
parent
ccea6d06d7
commit
981bdf5bfa
31 changed files with 101 additions and 63 deletions
|
|
@ -63,7 +63,7 @@ public class AshenSkinZubera extends CardImpl<AshenSkinZubera> {
|
|||
Ability ability = new DiesTriggeredAbility(new DiscardTargetEffect(new AshenSkinZuberaDynamicValue()));
|
||||
ability.addTarget(new TargetOpponent());
|
||||
this.addAbility(ability);
|
||||
this.watchers.add(new AshenSkinZuberaWatcher(ownerId));
|
||||
this.addWatcher(new AshenSkinZuberaWatcher());
|
||||
}
|
||||
|
||||
public AshenSkinZubera(final AshenSkinZubera card) {
|
||||
|
|
@ -81,8 +81,8 @@ class AshenSkinZuberaWatcher extends WatcherImpl<AshenSkinZuberaWatcher> {
|
|||
|
||||
public int zuberasDiedThisTurn = 0;
|
||||
|
||||
public AshenSkinZuberaWatcher(UUID controllerId) {
|
||||
super("ZuberasDiedAshenSkinZubera", controllerId);
|
||||
public AshenSkinZuberaWatcher() {
|
||||
super("ZuberasDiedAshenSkinZubera");
|
||||
}
|
||||
|
||||
public AshenSkinZuberaWatcher(final AshenSkinZuberaWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ public class DrippingTongueZubera extends CardImpl<DrippingTongueZubera> {
|
|||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(2);
|
||||
this.addAbility(new DiesTriggeredAbility(new CreateTokenEffect(new SpiritToken(), new DrippingTongueZuberaDynamicValue()), false));
|
||||
this.watchers.add(new DrippingTongueZuberaWatcher(ownerId));
|
||||
this.addWatcher(new DrippingTongueZuberaWatcher());
|
||||
}
|
||||
|
||||
public DrippingTongueZubera (final DrippingTongueZubera card) {
|
||||
|
|
@ -80,8 +80,8 @@ class DrippingTongueZuberaWatcher extends WatcherImpl<DrippingTongueZuberaWatche
|
|||
|
||||
public int zuberasDiedThisTurn = 0;
|
||||
|
||||
public DrippingTongueZuberaWatcher(UUID controllerId) {
|
||||
super("ZuberasDiedDrippingTongueZubera", controllerId);
|
||||
public DrippingTongueZuberaWatcher() {
|
||||
super("ZuberasDiedDrippingTongueZubera");
|
||||
}
|
||||
|
||||
public DrippingTongueZuberaWatcher(final DrippingTongueZuberaWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ public class EmberFistZubera extends CardImpl<EmberFistZubera> {
|
|||
Ability ability = new DiesTriggeredAbility(new DamageTargetEffect(new EmberFistZuberaDynamicValue()));
|
||||
ability.addTarget(new TargetCreatureOrPlayer());
|
||||
this.addAbility(ability);
|
||||
this.watchers.add(new EmberFistZuberaWatcher(ownerId));
|
||||
this.addWatcher(new EmberFistZuberaWatcher());
|
||||
}
|
||||
|
||||
public EmberFistZubera (final EmberFistZubera card) {
|
||||
|
|
@ -82,8 +82,8 @@ class EmberFistZuberaWatcher extends WatcherImpl<EmberFistZuberaWatcher> {
|
|||
|
||||
public int zuberasDiedThisTurn = 0;
|
||||
|
||||
public EmberFistZuberaWatcher(UUID controllerId) {
|
||||
super("ZuberasDiedEmberFistZubera", controllerId);
|
||||
public EmberFistZuberaWatcher() {
|
||||
super("ZuberasDiedEmberFistZubera");
|
||||
}
|
||||
|
||||
public EmberFistZuberaWatcher(final EmberFistZuberaWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ public class FloatingDreamZubera extends CardImpl<FloatingDreamZubera> {
|
|||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(2);
|
||||
this.addAbility(new DiesTriggeredAbility(new DrawCardControllerEffect(new FloatingDreamZuberaDynamicValue())));
|
||||
this.watchers.add(new FloatingDreamZuberaWatcher(ownerId));
|
||||
this.addWatcher(new FloatingDreamZuberaWatcher());
|
||||
}
|
||||
|
||||
public FloatingDreamZubera(final FloatingDreamZubera card) {
|
||||
|
|
@ -79,8 +79,8 @@ class FloatingDreamZuberaWatcher extends WatcherImpl<FloatingDreamZuberaWatcher>
|
|||
|
||||
public int zuberasDiedThisTurn = 0;
|
||||
|
||||
public FloatingDreamZuberaWatcher(UUID controllerId) {
|
||||
super("ZuberasDiedFloatingDreamZubera", controllerId);
|
||||
public FloatingDreamZuberaWatcher() {
|
||||
super("ZuberasDiedFloatingDreamZubera");
|
||||
}
|
||||
|
||||
public FloatingDreamZuberaWatcher(final FloatingDreamZuberaWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ public class SilentChantZubera extends CardImpl<SilentChantZubera> {
|
|||
this.toughness = new MageInt(2);
|
||||
Ability ability = new DiesTriggeredAbility(new GainLifeEffect(new SilentChantZuberaDynamicValue()));
|
||||
this.addAbility(ability);
|
||||
this.watchers.add(new AshenSkinZuberaWatcher(ownerId));
|
||||
this.addWatcher(new AshenSkinZuberaWatcher());
|
||||
}
|
||||
|
||||
public SilentChantZubera (final SilentChantZubera card) {
|
||||
|
|
@ -80,8 +80,8 @@ class SilentChantZuberaWatcher extends WatcherImpl<SilentChantZuberaWatcher> {
|
|||
|
||||
public int zuberasDiedThisTurn = 0;
|
||||
|
||||
public SilentChantZuberaWatcher(UUID controllerId) {
|
||||
super("ZuberasDiedSilentChantZubera", controllerId);
|
||||
public SilentChantZuberaWatcher() {
|
||||
super("ZuberasDiedSilentChantZubera");
|
||||
}
|
||||
|
||||
public SilentChantZuberaWatcher(final SilentChantZuberaWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -61,8 +61,8 @@ public class AngelicArbiter extends CardImpl<AngelicArbiter> {
|
|||
this.toughness = new MageInt(6);
|
||||
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
this.watchers.add(new AngelicArbiterWatcher1(ownerId));
|
||||
this.watchers.add(new AngelicArbiterWatcher2(ownerId));
|
||||
this.addWatcher(new AngelicArbiterWatcher1());
|
||||
this.addWatcher(new AngelicArbiterWatcher2());
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new AngelicArbiterEffect1()));
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new AngelicArbiterEffect2()));
|
||||
}
|
||||
|
|
@ -80,8 +80,8 @@ public class AngelicArbiter extends CardImpl<AngelicArbiter> {
|
|||
|
||||
class AngelicArbiterWatcher1 extends WatcherImpl<AngelicArbiterWatcher1> {
|
||||
|
||||
public AngelicArbiterWatcher1(UUID controllerId) {
|
||||
super("CastSpell", controllerId);
|
||||
public AngelicArbiterWatcher1() {
|
||||
super("CastSpell");
|
||||
}
|
||||
|
||||
public AngelicArbiterWatcher1(final AngelicArbiterWatcher1 watcher) {
|
||||
|
|
@ -103,8 +103,8 @@ class AngelicArbiterWatcher1 extends WatcherImpl<AngelicArbiterWatcher1> {
|
|||
|
||||
class AngelicArbiterWatcher2 extends WatcherImpl<AngelicArbiterWatcher2> {
|
||||
|
||||
public AngelicArbiterWatcher2(UUID controllerId) {
|
||||
super("Attacked", controllerId);
|
||||
public AngelicArbiterWatcher2() {
|
||||
super("Attacked");
|
||||
}
|
||||
|
||||
public AngelicArbiterWatcher2(final AngelicArbiterWatcher2 watcher) {
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ public class BloodcrazedGoblin extends CardImpl<BloodcrazedGoblin> {
|
|||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(2);
|
||||
|
||||
this.watchers.add(new BloodcrazedGoblinWatcher(ownerId));
|
||||
this.addWatcher(new BloodcrazedGoblinWatcher());
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BloodcrazedGoblinEffect()));
|
||||
}
|
||||
|
||||
|
|
@ -77,8 +77,8 @@ public class BloodcrazedGoblin extends CardImpl<BloodcrazedGoblin> {
|
|||
|
||||
class BloodcrazedGoblinWatcher extends WatcherImpl<BloodcrazedGoblinWatcher> {
|
||||
|
||||
public BloodcrazedGoblinWatcher(UUID controllerId) {
|
||||
super("OpponentDamaged", controllerId);
|
||||
public BloodcrazedGoblinWatcher() {
|
||||
super("OpponentDamaged");
|
||||
}
|
||||
|
||||
public BloodcrazedGoblinWatcher(final BloodcrazedGoblinWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public class BloodOgre extends CardImpl<BloodOgre> {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
this.addAbility(new BloodthirstAbility(1));
|
||||
this.watchers.add(new BloodthirstWatcher(ownerId));
|
||||
this.addWatcher(new BloodthirstWatcher());
|
||||
this.addAbility(FirstStrikeAbility.getInstance());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ public class BloodrageVampire extends CardImpl<BloodrageVampire> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
this.addAbility(new BloodthirstAbility(1));
|
||||
this.watchers.add(new BloodthirstWatcher(ownerId));
|
||||
this.addWatcher(new BloodthirstWatcher());
|
||||
}
|
||||
|
||||
public BloodrageVampire(final BloodrageVampire card) {
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public class CarnageWurm extends CardImpl<CarnageWurm> {
|
|||
this.toughness = new MageInt(6);
|
||||
|
||||
this.addAbility(new BloodthirstAbility(3));
|
||||
this.watchers.add(new BloodthirstWatcher(ownerId));
|
||||
this.addWatcher(new BloodthirstWatcher());
|
||||
this.addAbility(TrampleAbility.getInstance());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public class DuskhunterBat extends CardImpl<DuskhunterBat> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
this.addAbility(new BloodthirstAbility(1));
|
||||
this.watchers.add(new BloodthirstWatcher(ownerId));
|
||||
this.addWatcher(new BloodthirstWatcher());
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public class FurybornHellkite extends CardImpl<FurybornHellkite> {
|
|||
this.toughness = new MageInt(6);
|
||||
|
||||
this.addAbility(new BloodthirstAbility(6));
|
||||
this.watchers.add(new BloodthirstWatcher(ownerId));
|
||||
this.addWatcher(new BloodthirstWatcher());
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public class GorehornMinotaurs extends CardImpl<GorehornMinotaurs> {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
this.addAbility(new BloodthirstAbility(2));
|
||||
this.watchers.add(new BloodthirstWatcher(ownerId));
|
||||
this.addWatcher(new BloodthirstWatcher());
|
||||
}
|
||||
|
||||
public GorehornMinotaurs(final GorehornMinotaurs card) {
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public class LurkingCrocodile extends CardImpl<LurkingCrocodile> {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
this.addAbility(new BloodthirstAbility(1));
|
||||
this.watchers.add(new BloodthirstWatcher(ownerId));
|
||||
this.addWatcher(new BloodthirstWatcher());
|
||||
this.addAbility(new IslandwalkAbility());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public class VampireOutcasts extends CardImpl<VampireOutcasts> {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
this.addAbility(new BloodthirstAbility(2));
|
||||
this.watchers.add(new BloodthirstWatcher(ownerId));
|
||||
this.addWatcher(new BloodthirstWatcher());
|
||||
this.addAbility(LifelinkAbility.getInstance());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ public class Vengevine extends CardImpl<Vengevine> {
|
|||
|
||||
this.addAbility(HasteAbility.getInstance());
|
||||
this.addAbility(new VengevineAbility());
|
||||
this.watchers.add(new VengevineWatcher(ownerId));
|
||||
this.addWatcher(new VengevineWatcher());
|
||||
}
|
||||
|
||||
public Vengevine(final Vengevine card) {
|
||||
|
|
@ -112,8 +112,8 @@ class VengevineWatcher extends WatcherImpl<VengevineWatcher> {
|
|||
|
||||
int creatureSpellCount = 0;
|
||||
|
||||
public VengevineWatcher(UUID controllerId) {
|
||||
super("CreatureCast", controllerId);
|
||||
public VengevineWatcher() {
|
||||
super("CreatureCast");
|
||||
}
|
||||
|
||||
public VengevineWatcher(final VengevineWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ public class FleshAllergy extends CardImpl<FleshAllergy> {
|
|||
this.getSpellAbility().addEffect(new DestroyTargetEffect());
|
||||
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
|
||||
this.getSpellAbility().addEffect(new FleshAllergyEffect());
|
||||
this.watchers.add(new FleshAllergyWatcher(ownerId));
|
||||
this.addWatcher(new FleshAllergyWatcher());
|
||||
}
|
||||
|
||||
public FleshAllergy (final FleshAllergy card) {
|
||||
|
|
@ -82,8 +82,8 @@ class FleshAllergyWatcher extends WatcherImpl<FleshAllergyWatcher> {
|
|||
|
||||
public int creaturesDiedThisTurn = 0;
|
||||
|
||||
public FleshAllergyWatcher(UUID controllerId) {
|
||||
super("CreaturesDiedFleshAllergy", controllerId);
|
||||
public FleshAllergyWatcher() {
|
||||
super("CreaturesDiedFleshAllergy");
|
||||
}
|
||||
|
||||
public FleshAllergyWatcher(final FleshAllergyWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public class MoltenPsyche extends CardImpl<MoltenPsyche> {
|
|||
this.expansionSetCode = "SOM";
|
||||
this.color.setRed(true);
|
||||
this.getSpellAbility().addEffect(new MoltenPsycheEffect());
|
||||
this.watchers.add(new MoltenPsycheWatcher(ownerId));
|
||||
this.addWatcher(new MoltenPsycheWatcher());
|
||||
}
|
||||
|
||||
public MoltenPsyche(final MoltenPsyche card) {
|
||||
|
|
@ -110,8 +110,8 @@ class MoltenPsycheWatcher extends WatcherImpl<MoltenPsycheWatcher> {
|
|||
|
||||
private Map<UUID, Integer> draws = new HashMap<UUID, Integer>();
|
||||
|
||||
public MoltenPsycheWatcher(UUID controllerId) {
|
||||
super("CardsDrawnMoltenPsyche", controllerId);
|
||||
public MoltenPsycheWatcher() {
|
||||
super("CardsDrawnMoltenPsyche");
|
||||
}
|
||||
|
||||
public MoltenPsycheWatcher(final MoltenPsycheWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -143,7 +143,7 @@ class MyrBattlesphereEffect extends OneShotEffect<MyrBattlesphereEffect> {
|
|||
UUID defenderId = game.getCombat().getDefendingPlayer(source.getSourceId());
|
||||
Player defender = game.getPlayer(defenderId);
|
||||
if (defender != null) {
|
||||
defender.damage(source.getCosts().getVariableCosts().get(0).getAmount(), source.getSourceId(), game, false, false);
|
||||
defender.damage(source.getManaCostsToPay().getVariableCosts().get(0).getAmount(), source.getSourceId(), game, false, false);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -67,7 +67,7 @@ public class SteelHellkite extends CardImpl<SteelHellkite> {
|
|||
// {X}: Destroy each nonland permanent with converted mana cost X whose controller was dealt combat damage by Steel Hellkite this turn. Activate this ability only once each turn.
|
||||
this.addAbility(new ActivateOncePerTurnActivatedAbility(Constants.Zone.BATTLEFIELD, new SteelHellkiteDestroyEffect(), new ManaCostsImpl("{X}")));
|
||||
|
||||
this.watchers.add(new SteelHellkiteWatcher(ownerId));
|
||||
this.addWatcher(new SteelHellkiteWatcher());
|
||||
}
|
||||
|
||||
public SteelHellkite(final SteelHellkite card) {
|
||||
|
|
@ -118,8 +118,8 @@ class SteelHellkiteWatcher extends WatcherImpl<SteelHellkiteWatcher> {
|
|||
|
||||
public Map<UUID, Set<UUID>> damagedPlayers = new HashMap<UUID, Set<UUID>>();
|
||||
|
||||
public SteelHellkiteWatcher(UUID controllerId) {
|
||||
super("SteelHellkiteWatcher", controllerId);
|
||||
public SteelHellkiteWatcher() {
|
||||
super("SteelHellkiteWatcher");
|
||||
}
|
||||
|
||||
public SteelHellkiteWatcher(final SteelHellkiteWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ public class TunnelIgnus extends CardImpl<TunnelIgnus> {
|
|||
this.color.setRed(true);
|
||||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(1);
|
||||
this.watchers.add(new TunnelIgnusWatcher(ownerId));
|
||||
this.addWatcher(new TunnelIgnusWatcher());
|
||||
this.addAbility(new TunnelIgnusTriggeredAbility());
|
||||
}
|
||||
|
||||
|
|
@ -76,8 +76,8 @@ public class TunnelIgnus extends CardImpl<TunnelIgnus> {
|
|||
class TunnelIgnusWatcher extends WatcherImpl {
|
||||
int count = 0;
|
||||
|
||||
public TunnelIgnusWatcher(UUID controllerId) {
|
||||
super("LandPlayedCount", controllerId);
|
||||
public TunnelIgnusWatcher() {
|
||||
super("LandPlayedCount");
|
||||
}
|
||||
|
||||
public TunnelIgnusWatcher(final TunnelIgnusWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ public class Groundswell extends CardImpl<Groundswell> {
|
|||
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
|
||||
this.getSpellAbility().addEffect(new GroundswellEffect(Duration.EndOfTurn));
|
||||
|
||||
this.watchers.add(new GroundswellWatcher(ownerId));
|
||||
this.addWatcher(new GroundswellWatcher());
|
||||
}
|
||||
|
||||
public Groundswell(final Groundswell card) {
|
||||
|
|
@ -78,8 +78,8 @@ public class Groundswell extends CardImpl<Groundswell> {
|
|||
|
||||
class GroundswellWatcher extends WatcherImpl<GroundswellWatcher> {
|
||||
|
||||
public GroundswellWatcher(UUID controllerId) {
|
||||
super("LandPlayed", controllerId);
|
||||
public GroundswellWatcher() {
|
||||
super("LandPlayed");
|
||||
}
|
||||
|
||||
public GroundswellWatcher(final GroundswellWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ public class SearingBlaze extends CardImpl<SearingBlaze> {
|
|||
//TODO: change this to only allow creatures controlled by first target
|
||||
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
|
||||
this.getSpellAbility().addEffect(new SearingBlazeEffect());
|
||||
this.watchers.add(new SearingBlazeWatcher(ownerId));
|
||||
this.addWatcher(new SearingBlazeWatcher());
|
||||
}
|
||||
|
||||
public SearingBlaze(final SearingBlaze card) {
|
||||
|
|
@ -77,8 +77,8 @@ public class SearingBlaze extends CardImpl<SearingBlaze> {
|
|||
|
||||
class SearingBlazeWatcher extends WatcherImpl<SearingBlazeWatcher> {
|
||||
|
||||
public SearingBlazeWatcher(UUID controllerId) {
|
||||
super("LandPlayed", controllerId);
|
||||
public SearingBlazeWatcher() {
|
||||
super("LandPlayed");
|
||||
}
|
||||
|
||||
public SearingBlazeWatcher(final SearingBlazeWatcher watcher) {
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ public class ArchiveTrap extends CardImpl<ArchiveTrap> {
|
|||
this.getSpellAbility().addTarget(new TargetOpponent());
|
||||
this.getSpellAbility().addEffect(new PutLibraryIntoGraveTargetEffect(13));
|
||||
this.getSpellAbility().addAlternativeCost(new ArchiveTrapAlternativeCost());
|
||||
this.watchers.add(new ArchiveTrapWatcher(ownerId));
|
||||
this.addWatcher(new ArchiveTrapWatcher());
|
||||
}
|
||||
|
||||
public ArchiveTrap(final ArchiveTrap card) {
|
||||
|
|
@ -72,8 +72,8 @@ public class ArchiveTrap extends CardImpl<ArchiveTrap> {
|
|||
|
||||
class ArchiveTrapWatcher extends WatcherImpl<ArchiveTrapWatcher> {
|
||||
|
||||
public ArchiveTrapWatcher(UUID controllerId) {
|
||||
super("LibrarySearched", controllerId);
|
||||
public ArchiveTrapWatcher() {
|
||||
super("LibrarySearched");
|
||||
}
|
||||
|
||||
public ArchiveTrapWatcher(final ArchiveTrapWatcher watcher) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue