Page 1 of 1

Help

PostPosted: 23 Mar 2012, 03:50
by Madara
i can not make vendilion clique and snapcaster mage #-o , someone could help me :?:

Re: Help

PostPosted: 23 Mar 2012, 06:26
by Eglin
Madara wrote:i can not make vendilion clique and snapcaster mage #-o , someone could help me :?:
Snapcaster Mage may not be possible to implement correctly. As far as I know, nobody has yet figured out a way to grant abilities to other cards. You could certainly make a card in your graveyard playable, but exacting a mana cost for it is far trickier. You can certainly include a <cost> block with a conditional qualifier just about anywhere, but I am under the impression that the argument has to be static. You'll have to play with that one on your own. If it were me, I'd probably take a shortcut - unless your deck plans require the card to be in the graveyard, you could just return it to your hand. This would make for a MUCH simpler card to code without significantly changing the theme or power-level, IMHO.

Vendilion Clique is pretty straightforward, as long as you use a <SPELL_ABILITY> for the discard. I couldn't make the opponent discard from within a COMES_INTO_PLAY trigger for some reason. This also alleviates the problem with making sure your trigger goes off before the legendary rule kicks in. My code is below.

In the future, you'll probably get better help if you show what you've got so far and say what problems you're running into.

Good luck,
Eglin

Code: Select all
<?xml version='1.0'?>
<CARD_V2 custom="true">
  <FILENAME text="VENDILION_CLIQUE_888263082" />
  <CARDNAME text="VENDILION_CLIQUE" />
  <TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Vendilion Clique]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[]]></LOCALISED_TEXT>
  </TITLE>
  <MULTIVERSEID value="888263082" />
  <ARTID value="VENDILION CLIQUE" />
  <FRAMECOLOUR name="U" />
  <COLOUR value="Z" />
  <ARTIST name="Michael Sutfin" />
  <CASTING_COST cost="{1}{U}{U}" />
  <TYPE metaname="Creature" order_de-DE="0" order_es-ES="0" order_fr-FR="0" order_it-IT="0" order_jp-JA="0" />
  <SUB_TYPE metaname="Faerie" order_de-DE="0" order_es-ES="0" order_fr-FR="0" order_it-IT="0" order_jp-JA="0" />
  <SUB_TYPE metaname="Wizard" order_de-DE="0" order_es-ES="0" order_fr-FR="0" order_it-IT="0" order_jp-JA="0" />
  <SUPERTYPE metaname="Legendary" order_de-DE="0" order_es-ES="0" order_fr-FR="0" order_it-IT="0" order_jp-JA="0" />
  <EXPANSION value="MOR" />
  <RARITY metaname="R" />
  <POWER value="3" />
  <TOUGHNESS value="1" />
 
 
  <STATIC_ABILITY zone="hand">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Flash]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[瞬速]]></LOCALISED_TEXT>
    <CONTINUOUS_ACTION>
    Object():GetCurrentCharacteristics():Bool_Set( CHARACTERISTIC_FLASH, 1 )
    </CONTINUOUS_ACTION>
    <AI_BASE_SCORE score="1050" zone="hand" />
  </STATIC_ABILITY>
  <STATIC_ABILITY>
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Flying]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[]]></LOCALISED_TEXT>
    <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[飛行]]></LOCALISED_TEXT>
    <CONTINUOUS_ACTION>
    local characteristics = Object():GetCurrentCharacteristics()
    characteristics:Badge_Set( BADGE_FLYING )
    characteristics:FX_Set( SPECIAL_EFFECT_FLYING)
    characteristics:CanOnlyBeBlockedBy_Set(EVASION_INDEX_FLYING )
    characteristics:CanBlock_Set( EVASION_INDEX_FLYING )
    </CONTINUOUS_ACTION>
  </STATIC_ABILITY>
  <SPELL_ABILITY suppress_fizzle="1" zone="player">
    <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[When Vendilion Clique enters the battlefield, look at target player's hand. You may choose a nonland card from it. If you do, that player reveals the chosen card, puts it on the bottom of his or her library, then draws a card.]]></LOCALISED_TEXT>
    <TARGET_DETERMINATION>
   --choose target (this could be set to neutral instead of bad, depending on the deck that the card is going to be most often used in)
    local filter = Object():GetFilter()
    filter:Clear()
    filter:SetFilterType( FILTER_TYPE_PLAYERS )
    return TargetBadF()
    </TARGET_DETERMINATION>
    <PLAY_TIME_ACTION target_choosing="1">
    ChooseTarget( "CARD_QUERY_CHOOSE_PLAYER" )
    </PLAY_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
   --set a filter for non-land cards in targetPlayer's hand
    local targetPlayer = Object():GetTargetPlayer()
    if targetPlayer ~= nil then
        MTG():ObjectDataChest():Set_PlayerPtr( COMPARTMENT_ID_PLR_REGISTER_0, targetPlayer )
       local filter = Object():GetFilter()
       filter:Clear()
       filter:NotTargetted()
        filter:AddCardType( CARD_TYPE_LAND )
        filter:AddExtra( FILTER_EXTRA_FLIP_CARD_TYPES )
       filter:SetZone( ZONE_HAND )
       filter:SetPlayer( targetPlayer )
       filter:PlayerAntiHint( targetPlayer )
      --todo fix string - make it match something in your glossary
      --prompt for card
       Object():GetPlayer():ChooseTarget( "CARD_QUERY_CHOOSE_CARD_TO_PUT_ON_BOTTOM" )
    end
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
   --make card go bye-bye and draw a new card
    local targetPlayer = MTG():ObjectDataChest():Get_PlayerPtr( COMPARTMENT_ID_PLR_REGISTER_0 )
    local targetCard = Object():GetTargetCard()
    if (targetCard ~= nil) then
      targetCard:Discard()
       targetCard:PutInLibrary( -1 )
      targetPlayer:DrawCard()
    else
      --allow us to peek at player's hand, even though there were no valid cards to chuck
        if targetPlayer ~= nil then
        local filter = Object():GetFilter()
        filter:Clear()
       filter:NotTargetted()
       filter:SetZone( ZONE_HAND )
       filter:SetPlayer( targetPlayer )
       filter:PlayerAntiHint( targetPlayer )
        filter:May()
        Object():GetPlayer():ChooseTarget( "CARD_QUERY_LOOK_AT_CARDS" )
        end
    end
    </RESOLUTION_TIME_ACTION>
    <SFX text="TARGET_LIGHTNING_ABILITY_RESOLVED_PLAY" />
  </SPELL_ABILITY>
  <HELP title="MORE_INFO_TITLE_KICKER" body="MORE_INFO_BODY_KICKER" zone="Any" />
</CARD_V2>

Re: Help

PostPosted: 23 Mar 2012, 13:06
by sadlyblue
The problem with Snapcaster Mage is how to the the mana cost, and not the converted mana cost. The rest is easy.

Re: Help

PostPosted: 26 Mar 2012, 06:27
by Madara
thanks guys