Page 1 of 1

Hermit Druid => next card, next problem

PostPosted: 13 Dec 2010, 21:26
by IceManOnline
I tried to create my second card today.
Creation, pic etc no problem, but the effect is the problem (maybe I'm trying the wrong cards ^^)

I tried Hermit Druid and simply copied the effect of Oath of Druids.
After some changes it works almost. It draws cards, until there is a land. My problem is, I don't know how to specify the "basic land" part.
My code looks as follows (simple copy of Oath => dirty code):
Code: Select all
<!--
///////////////////////////////////////////////////////////////////////////////////

 CARD INFORMATIONS

///////////////////////////////////////////////////////////////////////////////////
-->

    <FILENAME         text = "HERMIT_DRUID" />
    <ARTID           value = "hermdru" />

    <TITLE            text = "HERMIT_DRUID_TITLE" />
   <TYPE         metaname = "Creature" />
   <SUB_TYPE      metaname = "Druid" />
   
    <CASTING_COST     cost = "{1}{G}" />
    <COLOR           value = "G" />
    <FRAMECOLOUR      name = "G" />
   <POWER          value = "1" />
   <TOUGHNESS       value = "1" />

    <EXPANSION    metaname = "6789" />
    <RARITY       metaname = "Rare" />
    <COLLECTIONMAX   value = "0" />
    <COLLECTORNUMBER value = "0" />
    <CARDNUMBER      value = "0" />
    <ARTIST           name = "Heater Hudson" />
    <FLAVOURTEXT      text = "HERMIT_DRUID_FLAVOUR" />

<!--
///////////////////////////////////////////////////////////////////////////////////

 START OF CARD ABILITIES

///////////////////////////////////////////////////////////////////////////////////
-->
       
        <ACTIVATED_ABILITY tag="HERMIT_DRUID_RULE_1" auto_skip="1" >
         <COST type="Mana" cost="{G}" />
         <COST type="TapSelf" />
           <PRE_EFFECT>
           Object():Register_Player_Set( 0, Object():GetOwner() )
         
         Object():GetFilter():Clear()
         Object():GetFilter():SetPlayer( Object():Register_Player_Get(0) )
         Object():GetFilter():SetOwner( Object():Register_Player_Get(0) )
         Object():GetFilter():SetFilterType( FILTER_TYPE_PLAYERS + FILTER_TYPE_OPPONENTS )
         Object():GetFilter():PlayerAntiHint( Object():Register_Player_Get(0) )
         Object():Register_Player_Get(0):ChooseTarget( "ChooseOpponent" )
         
        </PRE_EFFECT>
         
         <EFFECT>
         Object():Register_Player_Set( 1, Object():GetTargetPlayer() )
         Object():Register_Set( 2, 1 )
         
         </EFFECT>
      
      </ACTIVATED_ABILITY>
      
      <TRIGGERED_ABILITY tag="_COMMON_BLANKLINE" auto_skip="1" layer="0" zone="any" >
   <TRIGGER value="ABILITY_RESOLVED">
            return SelfTriggered() and Object():Register_Get( 2 ) == 1   
         </TRIGGER>
         <PLAYTIME>
            Object():Register_Set( 2, 0 )
         </PLAYTIME>
         <PRE_EFFECT>
            ClearFilter()
            Object():GetFilter():SetPlayer( Object():Register_Player_Get(0) )
         </PRE_EFFECT>
                  
         <EFFECT>
            if Object():GetMultipleChoiceResult() == 0 then
            
            local count = 0
              for i=0, 100 do
                 local card = Object():Register_Player_Get(0):Library_GetNth(0)

                 if card == nil then
                      return
                 else

                 if card:GetCardType():Test(CARD_TYPE_LAND) == 1 then
                    card:PutInHand( Object():Register_Player_Get(0) )
                  card:GuidedReveal( ZONE_LIBRARY, ZONE_HAND )
               break
                 else
               card:PutInGraveyard()
                 count = count + 1
               end
                 end

              end               
               
            end
            
         
         </EFFECT>
   </TRIGGERED_ABILITY>
               
   

<!--
///////////////////////////////////////////////////////////////////////////////////

 END OF CARD ABILITIES

///////////////////////////////////////////////////////////////////////////////////
-->

  </CARD>
</MULTICARDS>
The problem is this part:
Code: Select all
if card:GetCardType():Test(CARD_TYPE_LAND) == 1 then
                    card:PutInHand( Object():Register_Player_Get(0) )
                  card:GuidedReveal( ZONE_LIBRARY, ZONE_HAND )
Please help me ;)

Re: Hermit Druid => next card, next problem

PostPosted: 14 Dec 2010, 14:07
by IceManOnline
Okay, seems like I overlooked the "GetSuperType" method.

Will try it tonight and look, what happens ^^