Board index Programs with AI or Rules Enforcement Magic: The Gathering - Duels of the Planeswalkers Programming Talk
"Clash with an opponent"
Moderator: CCGHQ Admins
"Clash with an opponent"
by spiwy » 26 Apr 2011, 23:07
I kinda got this working, the only thing is that it doesn't trigger CLASH triggers (TRIGGER_CLASH | TRIGGER_LOST_CLASH | TRIGGER_WON_CLASH ) because i don't know how to make them trigger.
Anyway, it matters in 3 cards so i'll think about something, in the meanwhile here you have it:
Anyway, it matters in 3 cards so i'll think about something, in the meanwhile here you have it:
- Code: Select all
<TRIGGERED_ABILITY tag="ADDER_STAFF_BOGGART_RULE_1" forced_skip="1" layer="0">
<TRIGGER value="COMES_INTO_PLAY">
return SelfTriggered()
</TRIGGER>
<TARGET_DETERMINATION>
return ChooseAnOpponent( Object():GetPlayer() )
</TARGET_DETERMINATION>
<PLAYTIME>
ChooseTargetOpponent( )
</PLAYTIME>
<PRE_EFFECT>
</PRE_EFFECT>
<EFFECT>
Object():Register_Player_Set( 0, Object():GetTargetPlayer() )
Object():Register_Set(0,1)
</EFFECT>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY auto_skip="1" layer="0">
<TRIGGER value="ABILITY_RESOLVED">
return SelfTriggered() and Object():Register_Get(0) == 1
</TRIGGER>
<PRE_EFFECT>
PlayerRevealTopNCardsOfLibrary( Object():Register_Player_Get(0), { "LOOKATCARDS" } )
Object():Register_Clear(0)
</PRE_EFFECT>
<EFFECT>
if Object():GetNthTargetCard(0) ~= nil then
Object():Register_Object_Set( 0, Object():GetNthTargetCard( 0 ) )
Object():Register_Set(5,Object():GetNthTargetCard(0):GetConvertedManaCost())
Object():Register_Set( 1, 1 )
end
</EFFECT>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY layer="0" zone="any" auto_skip="1" >
<TRIGGER value="ABILITY_RESOLVED">
return SelfTriggered() and Object():Register_Get(1) == 1
</TRIGGER>
<PLAYTIME>
Object():Register_Clear(1)
ClearFilter()
Object():GetFilter():SetPlayer( Object():Register_Player_Get(0) )
Object():Object():Register_Player_Get(0):BeginNewMultipleChoice( true )
Object():Object():Register_Player_Get(0):AddMultipleChoiceAnswer( "MJTOP" )
Object():Object():Register_Player_Get(0):AddMultipleChoiceAnswer( "MJBOTTOM" )
Object():Object():Register_Player_Get(0):AskMultipleChoiceQuestion( "MJTITLE" )
</PLAYTIME>
<EFFECT>
if (Object():GetMultipleChoiceResult() == 0) then
Object():Register_Object_Get(0):PutInLibrary( 0 )
Object():Register_Object_Get(0):GuidedReveal( ZONE_LIBRARY, ZONE_LIBRARY )
else
Object():Register_Object_Get(0):PutInLibrary( -1 )
Object():Register_Object_Get(0):GuidedReveal( ZONE_LIBRARY, ZONE_LIBRARY )
end
Object():Register_Set( 2, 1 )
</EFFECT>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY auto_skip="1" layer="0">
<TRIGGER value="ABILITY_RESOLVED">
return SelfTriggered() and Object():Register_Get(2) == 1
</TRIGGER>
<PRE_EFFECT>
PlayerRevealTopNCardsOfLibrary( Object():GetPlayer(), { "LOOKATCARDS" } )
Object():Register_Set(2,0)
</PRE_EFFECT>
<EFFECT>
if Object():GetNthTargetCard(0) ~= nil then
Object():Register_Object_Set( 0, Object():GetNthTargetCard( 0 ) )
Object():Register_Set( 3, 1 )
Object():Register_Set(6,Object():GetNthTargetCard(0):GetConvertedManaCost())
end
</EFFECT>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY layer="0" zone="any" auto_skip="1" >
<TRIGGER value="ABILITY_RESOLVED">
return SelfTriggered() and Object():Register_Get(3) == 1
</TRIGGER>
<PLAYTIME>
Object():Register_Set(3,0)
ClearFilter()
Object():GetFilter():SetPlayer( Object():GetPlayer() )
Object():GetPlayer():BeginNewMultipleChoice( true )
Object():GetPlayer():AddMultipleChoiceAnswer( "MJTOP" )
Object():GetPlayer():AddMultipleChoiceAnswer( "MJBOTTOM" )
Object():GetPlayer():AskMultipleChoiceQuestion( "MJTITLE" )
</PLAYTIME>
<EFFECT>
if (Object():GetMultipleChoiceResult() == 0) then
Object():Register_Object_Get(0):PutInLibrary( 0 )
else
Object():Register_Object_Get(0):PutInLibrary( -1 )
end
Object():Register_Set( 4, 1 )
</EFFECT>
</TRIGGERED_ABILITY>
<TRIGGERED_ABILITY layer="8" zone="any" auto_skip="1">
<TRIGGER value="ABILITY_RESOLVED">
return SelfTriggered() and Object():Register_Get(4) == 1
</TRIGGER>
<PRE_EFFECT>
Object():Register_Clear(4)
</PRE_EFFECT>
<EFFECT>
if (Object():Register_Get(6) > Object():Register_Get(5)) then
AddPlusOnePlusOneCounterToSelf() <!-- THE EFFECT HERE -->
end
</EFFECT>
</TRIGGERED_ABILITY>
1 post
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 26 guests