蘑菇之神 发表于 2012-12-11 09:14

当场上存在B,C,D,E,F时,转化A成为G异能怎么写来着~

本帖最后由 蘑菇之神 于 2012-12-11 09:28 编辑


   <TOKEN_REGISTRATION reservation="1" type="目标A" />
<TOKEN_REGISTRATION reservation="2" type="目标G" />

<ACTIVATED_ABILITY filter_zone="ZONE_IN_PLAY">
    <LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>

    <COST type="Mana" cost="{费用待定}" />
    <AVAILABILITY>
    if
??????
    end
    return false
    </AVAILABILITY>
    <RESOLUTION_TIME_ACTION>
    Transform( Object() )
    </RESOLUTION_TIME_ACTION>
    <AI_AVAILABILITY type="in_response" />
    <AI_AVAILABILITY type="in_response_dangerous" />
    <AI_AVAILABILITY step="main_1" turn="my_turn" />
    <AI_AVAILABILITY step="declare_attackers" turn="their_turn" />
    <AI_AVAILABILITY step="declare_blockers" />
    <AI_AVAILABILITY step="end_of_turn" />
</ACTIVATED_ABILITY>问号部分求解OTZ
如果能 没有A,直接牺牲BCDEF而将牌组外的G放入场 就更好了~~

已知牺牲B,变出G的
<ACTIVATED_ABILITY auto_skip="1" filter_zone="ZONE_IN_PLAY">
<LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>

<COST type="Mana" cost="{费用待定}" />
<COST type="TapSelf" />
<COST type="SacrificeSelf" />
<AVAILABILITY>

return EffectController():CanAfford("{待定+1}") == 1

</AVAILABILITY>
<RESOLUTION_TIME_ACTION>
local token_count = 1
if token_count > 0 then
MTG():PutTokensIntoPlay( "G", token_count, EffectController() )
end
</RESOLUTION_TIME_ACTION>
<AI_AVAILABILITY type="in_response" />
<AI_AVAILABILITY step="declare_attackers" turn="their_turn" />
<AI_AVAILABILITY step="end_of_turn" turn="their_turn" />
<AI_AVAILABILITY behaviour="MakeCreature" />
</ACTIVATED_ABILITY>

josbrd 发表于 2012-12-11 09:47

来帮忙一下了,附上if you control 的笔记。
    local filter = Object():GetFilter()
    filter:Clear()
    filter:SetZone(ZONE_IN_PLAY)
    filter:AddCardType(CARD_TYPE_LAND)
    filter:SetController( EffectController() )
    filter:NotTargetted()
    local land_count = filter:CountStopAt( 4 )
    if land_count > 3 then
            return true           
    else   
            return false           
    end
   

josbrd 发表于 2012-12-11 09:54

附上可以找特定牌名的笔记。
    local total = 0
    local filter = Object():GetFilter()
    filter:Clear()
    filter:NotTargetted()
    filter:SetZone( ZONE_GRAVEYARD )
    filter:AddCardName( "RITE_OF_FLAME" )
    total = filter:Count()   
    if total > 0 then
      MTG():PutTokensIntoPlay( "_TOKEN_R_624997", total, EffectController() )
    end
   

蘑菇之神 发表于 2012-12-11 10:00

<TOKEN_REGISTRATION reservation="5" type="G" />

<TRIGGERED_ABILITY LKI_shield_effect_source="1" auto_skip="1" filter_zone="ZONE_IN_PLAY">

<LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>


<TRIGGER value="BEGINNING_OF_STEP" simple_qualifier="controller">
        return MyUpkeep()
</TRIGGER>

<COST type="Sacrifice">

<TARGET_DEFINITION id="6">
local filter = Object():GetFilter()
filter:Clear()
filter:AddCardType( CARD_TYPE_XXX )
filter:AddExtra( FILTER_EXTRA_FLIP_SUB_TYPES )
filter:SetPlayer( EffectController() )
filter:SetZone( ZONE_IN_PLAY )
filter:SetHint( HINT_ENEMY, EffectController() )
filter:NotTargetted()
</TARGET_DEFINITION>

<TARGET_DETERMINATION>
return AtLeastOneTargetFromDefinition(6)
</TARGET_DETERMINATION>
<PLAYTIME>
EffectController():ChooseTarget( 6, "CARD_QUERY_CHOOSE_XXX_TO_SACRIFICE", EffectDC():Make_Targets(0) )
</PLAYTIME>

</COST>
<RESOLUTION_TIME_ACTION>
        MTG():PutTokensIntoPlay( "G", 1, EffectController() )
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>

josbrd 发表于 2012-12-11 10:04

附上sacrifice场上物的笔记。<COST type="Sacrifice"><TARGET_DEFINITION id="6">
      local filter = Object():GetFilter()
      filter:Clear()
      filter:AddCardType( CARD_TYPE_ARTIFACT )
      filter:SetPlayer( EffectController() )
      filter:SetZone( ZONE_IN_PLAY )
      filter:SetHint( HINT_ENEMY, EffectController() )
      filter:NotTargetted()
      </TARGET_DEFINITION><TARGET_DETERMINATION>
      return AtLeastOneTargetFromDefinition(6)
      </TARGET_DETERMINATION><PLAYTIME>
      EffectController():ChooseTarget( 6, "CARD_QUERY_CHOOSE_ARTIFACT_TO_SACRIFICE", EffectDC():Make_Targets(0) )
      </PLAYTIME></COST>

josbrd 发表于 2012-12-11 10:12

附上转化条件。<AVAILABILITY>
    if not IsTransformed( Object() ) then
            local filter = Object():GetFilter()
            filter:Clear()
            filter:SetZone( ZONE_IN_PLAY )
            filter:AddSubType( CREATURE_TYPE_VAMPIRE )
            filter:SetController( EffectController() )
            filter:NotTargetted()
            return filter:CountStopAt( 5 ) == 5
    end
    return false
    </AVAILABILITY>

josbrd 发表于 2012-12-11 10:19


            local filter = Object():GetFilter()
            filter:Clear()
            filter:SetZone( ZONE_IN_PLAY )
            filter:AddCardName( "A" )
            filter:AddCardName( "B" )
            filter:AddCardName( "C" )
            filter:AddCardName( "D" )
            filter:AddCardName( "E" )
            filter:SetController( EffectController() )
            filter:NotTargetted()
            return filter:CountStopAt( 5 ) == 5
if you control ABCDE

蘑菇之神 发表于 2012-12-11 10:23

<ACTIVATED_ABILITY auto_skip="1" filter_zone="ZONE_IN_PLAY">

    <LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>

    <COST type="TapSelf"/>
    <COST type="Sacrifice" number="某数量">

   <TARGET_DEFINITION id="6">
      local filter = Object():GetFilter()
      filter:Clear()
filter:AddCardType( CARD_TYPE_ARTIFACT )
      filter:SetPlayer( EffectController() )
      filter:SetZone( ZONE_IN_PLAY )
      filter:SetHint( HINT_ENEMY, EffectController() )
filter:IgnoreIfChangingZone()
--filter:May()
      filter:NotTargetted()
      </TARGET_DEFINITION>

      <TARGET_DETERMINATION>
      return AtLeastOneTargetFromDefinition(6)
      </TARGET_DETERMINATION>

      <PLAYTIME>
      EffectController():ChooseTarget( 6, "CARD_QUERY_CHOOSE_ARTIFACT_TO_SACRIFICE", EffectDC():Make_Targets(0) )
      </PLAYTIME></COST>

    <RESOLUTION_TIME_ACTION>
    local token_count = 1
    if token_count &gt; 0 then
            MTG():PutTokensIntoPlay( "G", token_count, EffectController() )
    end
    </RESOLUTION_TIME_ACTION>

</ACTIVATED_ABILITY>

josbrd 发表于 2012-12-11 10:29


<AVAILABILITY>
            local filter = Object():GetFilter()
            filter:Clear()
            filter:SetZone( ZONE_IN_PLAY )
            filter:AddCardName( "A" )
            filter:AddCardName( "B" )
            filter:AddCardName( "C" )
            filter:AddCardName( "D" )
            filter:AddCardName( "E" )
            filter:SetController( EffectController() )
            filter:NotTargetted()
            local ABCDE_count = filter:CountStopAt( 5 )
            if ABCDE_count > 4 then
                        return true            
            else   
                        return false            
            end
</AVAILABILITY>


AVAILABILITY部分应改是这样,试试看。

蘑菇之神 发表于 2012-12-11 10:35

   <TOKEN_REGISTRATION reservation="1" type="目标A" />
<TOKEN_REGISTRATION reservation="2" type="目标G" />

<ACTIVATED_ABILITY filter_zone="ZONE_IN_PLAY">
    <LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>

    <COST type="Mana" cost="{费用待定}" />

<AVAILABILITY>
            local filter = Object():GetFilter()
            filter:Clear()
            filter:SetZone( ZONE_IN_PLAY )
            filter:AddCardName( "B" )
            filter:AddCardName( "C" )
            filter:AddCardName( "D" )
            filter:AddCardName( "E" )
            filter:AddCardName( "F" )
            filter:SetController( EffectController() )
            filter:NotTargetted()
            local ABCDE_count = filter:CountStopAt( 5 )
            if ABCDE_count > 4 then
                        return true            
            else   
                        return false            
            end
</AVAILABILITY>

    <RESOLUTION_TIME_ACTION>
    Transform( Object() )
    </RESOLUTION_TIME_ACTION>
    <AI_AVAILABILITY type="in_response" />
    <AI_AVAILABILITY type="in_response_dangerous" />
    <AI_AVAILABILITY step="main_1" turn="my_turn" />
    <AI_AVAILABILITY step="declare_attackers" turn="their_turn" />
    <AI_AVAILABILITY step="declare_blockers" />
    <AI_AVAILABILITY step="end_of_turn" />
</ACTIVATED_ABILITY>

蘑菇之神 发表于 2012-12-11 12:06

josbrd 发表于 2012-12-11 10:29 static/image/common/back.gif
AVAILABILITY部分应改是这样,试试看。

3Q,成功了

<?xml version='1.0'?>
<CARD_V2>
<FILENAME text="AAAAA_24000" />
<CARDNAME text="AAAAA" />
<TITLE>
    <LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>
</TITLE>
<MULTIVERSEID value="24000" />
<ARTID value="24000" />
<ARTIST name="蘑菇之神" />
<CASTING_COST cost="{2}" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="Creature" />
<EXPANSION value="DPG" />
<RARITY metaname="R" />
<POWER value="2" />
<TOUGHNESS value="2" />
<TOKEN_REGISTRATION reservation="1" type="GGGGG_24006" />
<TRIGGERED_ABILITY internal="1" active_zone="ZONE_ANY">
    <TRIGGER value="ZONECHANGE_BEGIN" simple_qualifier="self" to_zone="ZONE_IN_PLAY" />
    <RESOLUTION_TIME_ACTION>
    MTG():CreateDelayedTrigger(1, nil)
    </RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY resource_id="1" forced_skip="1" filter_zone="ZONE_IN_PLAY">
    <CLEANUP fire_once="1" />
    <TRIGGER value="ZONECHANGE_END" simple_qualifier="self" to_zone="ZONE_IN_PLAY" />
    <RESOLUTION_TIME_ACTION>
    GetTransformData_Step1("GGGGG_24006")
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    GetTransformData_Step2()
    </RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<STATIC_ABILITY filter_zone="ZONE_IN_PLAY">
    <CONTINUOUS_ACTION layer="1">
    if IsTransformed( Object() ) then
   ApplyTransformation( 1, 1, CARD_TYPE_CREATURE, CREATURE_TYPE_VAMPIRE )
    end
    </CONTINUOUS_ACTION>
</STATIC_ABILITY>
<ACTIVATED_ABILITY filter_zone="ZONE_IN_PLAY">
    <LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>
    <COST type="Mana" cost="{1}" />
<AVAILABILITY>
local filter = Object():GetFilter()
filter:Clear()
filter:SetZone( ZONE_IN_PLAY )
filter:AddCardName( "BBBBB" )
filter:AddCardName( "CCCCC" )
filter:AddCardName( "DDDDD" )
filter:AddCardName( "EEEEEE" )
filter:AddCardName( "FFFFF" )
filter:SetController( EffectController() )
filter:NotTargetted()
local ABCDE_count = filter:CountStopAt( 5 )
if ABCDE_count > 4 then
            return true            
else   
            return false            
end
</AVAILABILITY>
    <RESOLUTION_TIME_ACTION>
    Transform( Object() )
    </RESOLUTION_TIME_ACTION>
    <AI_AVAILABILITY type="in_response" />
    <AI_AVAILABILITY type="in_response_dangerous" />
    <AI_AVAILABILITY step="main_1" turn="my_turn" />
    <AI_AVAILABILITY step="declare_attackers" turn="their_turn" />
    <AI_AVAILABILITY step="declare_blockers" />
    <AI_AVAILABILITY step="end_of_turn" />
</ACTIVATED_ABILITY>
<HELP title="MORE_INFO_BADGE_TITLE_10" body="MORE_INFO_BADGE_BODY_10" zone="ZONE_ANY" />
<SFX text="COMBAT_FANG_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
<SFX text="COMBAT_FANG_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>

<?xml version='1.0'?>
<CARD_V2 custom="true">
<FILENAME text="GGGGG_24006" />
<CARDNAME text="GGGGG" />
<TITLE>
<LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>

</TITLE>
<MULTIVERSEID value="24006" />
<ARTID value="24006" />
<COLOUR value="B" />
<ARTIST name="蘑菇之神" />
<CASTING_COST cost="" />
<FLAVOURTEXT>
<LOCALISED_TEXT LanguageCode="en-US"><!]></LOCALISED_TEXT>
</FLAVOURTEXT>
<TYPE metaname="" />
<EXPANSION value="DPG" />
<RARITY metaname="R" />
<POWER value="5" />
<TOUGHNESS value="5" />

<SFX text="COMBAT_FANG_LARGE_ATTACK" power_boundary_min="4" power_boundary_max="-1" />
<SFX text="COMBAT_FANG_SMALL_ATTACK" power_boundary_min="1" power_boundary_max="3" />
</CARD_V2>


蘑菇之神 发表于 2012-12-11 12:23

不过BCDEF神器必须是传奇的,不然其实只要那5种神器数量到达5个就会生效,而不是每个一个的时候。

蘑菇之神 发表于 2012-12-11 12:42

@sumomole for语句不会,求大神赐教0.0~~~~
页: [1]
查看完整版本: 当场上存在B,C,D,E,F时,转化A成为G异能怎么写来着~