Re: Adding new cards with Groovy
It does make sense. Thank you
High Quality Resources for Collectible Card Games and Home of the CCGHQ Team
https://www.slightlymagic.net/forum/
https://www.slightlymagic.net/forum/viewtopic.php?f=82&t=10323
Yep, needs to be put on the stack, then when it resolves you look and choose.frank wrote:I got a timing Question about cards like Silent-Blade Oni .
The way I implemented it:
The Oni damages a player in combat, the triggered ability is put on stack and as soon its there, you get to see opponents hand and get to choose the card ( or decide not to, working on that).
But that's wrong isn't it? It needs to be put on stack to be there to be countered, and as it resolves you get to see the hand and choose, right?

name=Damia, Sage of Stone
url=http://magiccards.info/cmd/en/191.html
image=http://magiccards.info/scans/en/cmd/191.jpg
value=4.021
rarity=M
type=Legendary,Creature
subtype=Gorgon,Wizard
cost={4}{G}{U}{B}
pt=4/4
ability=deadtouch
timing=main
requires_groovy_code
[
new MagicAtUpkeepTrigger() {
@Override
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent, final MagicPlayer upkeepPlayer) {
return (permanent.getController() == upkeepPlayer && permanent.getController().getHandSize()<7) ? new MagicEvent(
permanent,
permanent.getController(),
this,
"if PN have fewer than seven cards in hand, draw cards equal to the difference."
):
MagicEvent.NONE
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
final MagicPlayer player = event.getPlayer();
final int amount = 7 - player.getHandSize() ;
game.doAction(new MagicDrawAction(event.getPlayer(),amount));
}
}
]We're sorry, but something went wrong.
If you are the application owner check the logs for more information.

name=Wight of Precinct Six
url=http://magiccards.info/ddm/en/46.html
image=http://magiccards.info/scans/en/ddm/46.jpg
value=3.778
rarity=U
type=Creature
subtype=Zombie
cost={1}{B}
pt=1/1
timing=fmain
requires_groovy_code[
new MagicStatic(MagicLayer.ModPT) {
@Override
public void modPowerToughness(final MagicPermanent source,final MagicPermanent permanent,final MagicPowerToughness pt) {
final MagicGame game = source.getGame();
final int size =
game.filterCards(player,MagicTargetFilterFactory.CREATURE_CARD_FROM_OPPONENT_GRAVEYARDS).size();
pt.add(size,size);
}
}
]
hong yie wrote:
Damia__Sage_of_Stone.txtDamia__Sage_of_Stone.groovy
- Code: Select all
name=Damia, Sage of Stone
url=http://magiccards.info/cmd/en/191.html
image=http://magiccards.info/scans/en/cmd/191.jpg
value=4.021
rarity=M
type=Legendary,Creature
subtype=Gorgon,Wizard
cost={4}{G}{U}{B}
pt=4/4
ability=deadtouch
timing=main
requires_groovy_codei just need a reference to script "skip your draw phase" to complete this card. i tried to search in firemind.ch but the page shows this message:
- Code: Select all
[
new MagicAtUpkeepTrigger() {
@Override
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent, final MagicPlayer upkeepPlayer) {
return (permanent.getController() == upkeepPlayer && permanent.getController().getHandSize()<7) ? new MagicEvent(
permanent,
permanent.getController(),
this,
"if PN have fewer than seven cards in hand, draw cards equal to the difference."
):
MagicEvent.NONE
}
@Override
public void executeEvent(final MagicGame game, final MagicEvent event) {
final MagicPlayer player = event.getPlayer();
final int amount = 7 - player.getHandSize() ;
game.doAction(new MagicDrawAction(event.getPlayer(),amount));
}
}
]We're sorry, but something went wrong.
If you are the application owner check the logs for more information.
That is not implementable at the moment.hong yie wrote:i just need a reference to script "skip your draw phase" to complete this card.
Unfortunately, as yet, no.hong yie wrote:does magarena have a public variable that keeps amount of life gained in a turn, then reset at the end phase? needed for some cards.

name=Nighthowler
url=http://magiccards.info/ths/en/98.html
image=http://magiccards.info/scans/en/ths/98.jpg
value=3.603
rarity=R
type=Enchantment,Creature
subtype=Horror
cost={1}{B}{B}
pt=0/0
ability=bestow {2}{B}{B}
timing=main
requires_groovy_code[
new MagicStatic(MagicLayer.ModPT) {
@Override
public void modPowerToughness(final MagicPermanent source, final MagicPermanent permanent, final MagicPowerToughness pt) {
final int size =
game.filterCards(player,MagicTargetFilterFactory.CREATURE_CARD_FROM_ALL_GRAVEYARDS).size();
pt.add(size,size);
}
@Override
public boolean accept(final MagicGame game,final MagicPermanent source,final MagicPermanent target) {
return source == target || MagicStatic.acceptLinked(game, source, target);
}
}
]name=Alabaster Dragon
url=http://magiccards.info/wl/en/.html
image=http://magiccards.info/scans/en/wl/.jpg
value=3.269
rarity=R
type=Creature
subtype=Dragon
cost={4}{W}{W}
pt=4/4
ability=flying;\
When SN is put into a graveyard from anywhere, shuffle it into its owner's library.
timing=mainThis isn't quite right - Alabaster Dragon shouldn't get shuffled in if you discard it.hong yie wrote:Alabaster_Dragon.txttried submitting through firemind.ch, failed...
- Code: Select all
name=Alabaster Dragon
url=http://magiccards.info/wl/en/.html
image=http://magiccards.info/scans/en/wl/.jpg
value=3.269
rarity=R
type=Creature
subtype=Dragon
cost={4}{W}{W}
pt=4/4
ability=flying;\
When SN is put into a graveyard from anywhere, shuffle it into its owner's library.
timing=main
need specific ability that only trigger when the dragon dies?ShawnieBoy wrote:This isn't quite right - Alabaster Dragon shouldn't get shuffled in if you discard it.
try looking into Solemn Simulacrum or Viridian Emissary, they both have a "when dies" trigger. Worldspine Wurm alsohong yie wrote:need specific ability that only trigger when the dragon dies?ShawnieBoy wrote:This isn't quite right - Alabaster Dragon shouldn't get shuffled in if you discard it.