added MagicAbility.Modular. added Arcbound Overseer
parent
5168bdc6f5
commit
653993e6ba
|
@ -12175,6 +12175,7 @@ type=Artifact,Creature
|
|||
subtype=Golem
|
||||
converted=5
|
||||
cost={5}
|
||||
ability=modular
|
||||
timing=main
|
||||
|
||||
>Arcbound Hybrid
|
||||
|
@ -12185,7 +12186,7 @@ type=Artifact,Creature
|
|||
subtype=Beast
|
||||
converted=4
|
||||
cost={4}
|
||||
ability=haste
|
||||
ability=haste,modular
|
||||
timing=main
|
||||
|
||||
>Arcbound Crusher
|
||||
|
@ -12196,7 +12197,7 @@ type=Artifact,Creature
|
|||
subtype=Juggernaut
|
||||
converted=4
|
||||
cost={4}
|
||||
ability=trample
|
||||
ability=trample,modular
|
||||
timing=fmain
|
||||
|
||||
>Arcbound Fiend
|
||||
|
@ -12207,7 +12208,7 @@ type=Artifact,Creature
|
|||
subtype=Horror
|
||||
converted=6
|
||||
cost={6}
|
||||
ability=fear
|
||||
ability=fear,modular
|
||||
timing=main
|
||||
|
||||
>Arcbound Lancer
|
||||
|
@ -12218,7 +12219,7 @@ type=Artifact,Creature
|
|||
subtype=Beast
|
||||
converted=7
|
||||
cost={7}
|
||||
ability=first strike
|
||||
ability=first strike,modular
|
||||
timing=main
|
||||
|
||||
>Arcbound Ravager
|
||||
|
@ -12229,4 +12230,16 @@ type=Artifact,Creature
|
|||
subtype=Beast
|
||||
converted=2
|
||||
cost={2}
|
||||
ability=modular
|
||||
timing=main
|
||||
|
||||
>Arcbound Overseer
|
||||
image=http://magiccards.info/scans/en/ds/99.jpg
|
||||
value=5
|
||||
rarity=R
|
||||
type=Artifact,Creature
|
||||
subtype=Golem
|
||||
converted=8
|
||||
cost={8}
|
||||
ability=modular
|
||||
timing=main
|
||||
|
|
|
@ -0,0 +1,55 @@
|
|||
package magic.card;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import magic.model.MagicCounterType;
|
||||
import magic.model.MagicGame;
|
||||
import magic.model.MagicPermanent;
|
||||
import magic.model.MagicPlayer;
|
||||
import magic.model.action.MagicChangeCountersAction;
|
||||
import magic.model.event.MagicEvent;
|
||||
import magic.model.target.MagicTarget;
|
||||
import magic.model.target.MagicTargetFilter;
|
||||
import magic.model.trigger.MagicAtUpkeepTrigger;
|
||||
import magic.model.trigger.MagicComesIntoPlayWithCounterTrigger;
|
||||
import magic.model.trigger.MagicModularTrigger;
|
||||
|
||||
public class Arcbound_Overseer {
|
||||
public static final MagicComesIntoPlayWithCounterTrigger T1 =
|
||||
new MagicComesIntoPlayWithCounterTrigger(MagicCounterType.PlusOne,"+1/+1",6);
|
||||
|
||||
public static final MagicModularTrigger T2 = new MagicModularTrigger();
|
||||
|
||||
public static final MagicAtUpkeepTrigger T3 = new MagicAtUpkeepTrigger() {
|
||||
@Override
|
||||
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicPlayer data) {
|
||||
final MagicPlayer player = permanent.getController();
|
||||
return (player == data) ?
|
||||
new MagicEvent(
|
||||
permanent,
|
||||
player,
|
||||
new Object[]{player},
|
||||
this,
|
||||
player + " puts a +1/+1 counter on each creature " +
|
||||
"with modular he or she controls."):
|
||||
MagicEvent.NONE;
|
||||
}
|
||||
@Override
|
||||
public void executeEvent(
|
||||
final MagicGame game,
|
||||
final MagicEvent event,
|
||||
final Object data[],
|
||||
final Object[] choiceResults) {
|
||||
final MagicPlayer player = (MagicPlayer)data[0];
|
||||
final Collection<MagicTarget> targets =
|
||||
game.filterTargets(player,MagicTargetFilter.TARGET_MODULAR_CREATURE_YOU_CONTROL);
|
||||
for (final MagicTarget target : targets) {
|
||||
game.doAction(new MagicChangeCountersAction(
|
||||
(MagicPermanent)target,
|
||||
MagicCounterType.PlusOne,
|
||||
1,
|
||||
true));
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
|
@ -55,7 +55,8 @@ public enum MagicAbility {
|
|||
Intimidate("intimidate",45),
|
||||
BattleCry("battle cry",0),
|
||||
Infect("infect",35),
|
||||
LivingWeapon("living weapon", 10);
|
||||
LivingWeapon("living weapon", 10),
|
||||
Modular("modular",0);
|
||||
;
|
||||
|
||||
public static final long PROTECTION_FLAGS=
|
||||
|
|
|
@ -959,6 +959,17 @@ public interface MagicTargetFilter {
|
|||
}
|
||||
};
|
||||
|
||||
MagicTargetFilter TARGET_MODULAR_CREATURE_YOU_CONTROL = new MagicTargetFilter() {
|
||||
public boolean accept(final MagicGame game,final MagicPlayer player,final MagicTarget target) {
|
||||
return target.getController() == player &&
|
||||
((MagicPermanent)target).isCreature(game) &&
|
||||
((MagicPermanent)target).hasAbility(game,MagicAbility.Modular);
|
||||
}
|
||||
public boolean acceptType(final MagicTargetType targetType) {
|
||||
return targetType == MagicTargetType.Permanent;
|
||||
}
|
||||
};
|
||||
|
||||
MagicTargetFilter TARGET_CREATURE_YOUR_OPPONENT_CONTROLS=new MagicTargetFilter() {
|
||||
|
||||
public boolean accept(final MagicGame game,final MagicPlayer player,final MagicTarget target) {
|
||||
|
|
Loading…
Reference in New Issue