It is currently 19 Jul 2025, 07:55
   
Text Size

Age of Dodekatheon - UPDATED 01/09/2014 DXT1 (183 cards)

Moderator: CCGHQ Admins

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby NeoAnderson » 04 Nov 2013, 22:48

Hi Savage- i sent to you the download link. Just a suggestion the deck inside the link is just a test deck, so it not include all the 92 cards, is just used to test the latest cards, you will find all the 92 cards into core wad. To make a themed deck is prefered to use riiak deck editor. When the set will be completed i will make also some themed decks. To avoid any working problem install riiak mods and core fixes, and also Tfm mod.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby NeoAnderson » 05 Nov 2013, 03:54

Sorry to disturb again Riiak but i have a question, i tried to search on the forum but without any result.

I have to make a multiple choice, and i want to check a condition for each answer to enable or disable it.
Inside your card you use the follow syntax : oPlayer:AddMultipleChoiceAnswer( "RSN_MODE_PRODUCE_W", RSN_GetCanProduceMana( oCard, COLOUR_WHITE ) )
RSN_GetCanProduceMana is your boolean function and it return true or false.

So i tried to make my multiple choice using a local variable set to true or false example oPlayer:AddMultipleChoiceAnswer( "CUSTOM_QUERY", local variable ) but in this way it doesn't work.
Also using 0 and 1.

To be more clear i have stored a value with LinkedDC and now when this value is "1" i have to enable the corresponding answer.

Could you please help me ?
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby RiiakShiNal » 05 Nov 2013, 13:41

AddMultipleChoiceAnswer() accepts only true or false for the second parameter so if you want it to be enabled when your local variable is 1 then you need to structure it like this:
Code: Select all
EffectController():AddMultipleChoiceAnswer( "YOUR_QUERY_CHOICE", (localVariable == 1) )
0 and 1 do not correspond to false and true so you need to convert it using logical comparison. You can combine comparisions here just like you can with "if" statements (local1 == 1 and local2 == 1).

If for example you stored the value in the LinkedDC() register 45 then it should look like this:
Code: Select all
EffectController():AddMultipleChoiceAnswer( "YOUR_QUERY_CHOICE", (LinkedDC():Int_Get(45) == 1) )
If you want to store a count in the variable and want to enable the option for any count other than 0 you could do:
Code: Select all
EffectController():AddMultipleChoiceAnswer( "YOUR_QUERY_CHOICE", (LinkedDC():Int_Get(45) ~= 0) )
If you wanted to limit it to only work if there are 2 or more in the count then either of these will work:
Code: Select all
EffectController():AddMultipleChoiceAnswer( "YOUR_QUERY_CHOICE", (LinkedDC():Int_Get(45) >= 2) )
Code: Select all
EffectController():AddMultipleChoiceAnswer( "YOUR_QUERY_CHOICE", (LinkedDC():Int_Get(45) > 1) )
RiiakShiNal
Programmer
 
Posts: 2188
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby NeoAnderson » 05 Nov 2013, 13:54

Thank you Riiak as i wrote on another topic I think i am going to be crazy.
I know i have to pass true or false value but it doesn't work.


I have stored a value with LinkedDC and now when this value is "1" i have to enable the corresponding answer into a multiple choice.
I have defined a simple function :
Folder = \DATA_DLC_DECK_BUILDER_CUSTOM\DATA_ALL_PLATFORMS\FUNCTIONS
Fileaname = D14_560_GENERAL_FUNCTIONS.LOL

Function code
NEO_CheckOne | Open
Code: Select all
NEO_CheckOne = function(oValue)
-- returns true if oValue is 1
   return oValue == 1
end
The function works i have tested on simple code with DisplayMessage.

When i use this function inside the multiple choice the game freeze!

Code: Select all
<PLAY_TIME_ACTION>
      local oPlayer = EffectController()
      local oCard = EffectSource()
      local oFly = LinkedDC():Int_Get( 0 )
      local oFirstStrike = LinkedDC():Int_Get( 1 )
      local oTrample = LinkedDC():Int_Get( 2 )
      local oHaste = LinkedDC():Int_Get( 3 )
      local oVigilance = LinkedDC():Int_Get( 4 )
      local oLifelink = LinkedDC():Int_Get( 5 )
      local oDeathTouch = LinkedDC():Int_Get( 6 )
          if (oPlayer ~= nil) then
      oPlayer:BeginNewMultipleChoice()
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING", NEO_CheckOne(oFly) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FIRST_STIRKE", NEO_CheckOne(oFirstStrike) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_TRAMPLE", NEO_CheckOne(oTrample) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_HASTE", NEO_CheckOne(oHaste) )
                oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_VIGILANCE", NEO_CheckOne(oVigilance) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_LIFELINK", NEO_CheckOne(oLifelink) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_DEATHTOUCH", NEO_CheckOne(oDeathTouch) )
           oPlayer:AskMultipleChoiceQuestion( "MODE_CHOOSE_ONE", oCard )
      
       end
</PLAY_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
      local oAbility = EffectController():GetMultipleChoiceResult()
            LinkedDC():Int_Set( oAbility, 2 )
      </RESOLUTION_TIME_ACTION>
I try to describe to you the whole situation :

1. LinkedDC works properly because if i check the variables are correctly passed, and if i remove the boolean check from the multiple choice it works.

2. I tried both PLAY_TIME_ACTION and RESOLUTION_ACTION, the first one freeze with the card magnified in foreground, the second one freeze with the card on the battelfied. Both solution doesn't show any choice box!

3. Before to make this dump function, i thought to pass directly a boolean variable, so i used all my imagination to pass many different syntax, examples :
Code: Select all
local oFly = LinkedDC():Int_Get( 0 )
if oFly == 1 then
local bFly = true
else
local bFly = false
end
......
oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING", bFly )
......
Code: Select all
local oFly = LinkedDC():Int_Get( 0 ) == 1
.......
oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING", oFly )
Code: Select all
local oFly = LinkedDC():Int_Get( 0 )
.......
oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING", oFly == 1 )
Code: Select all
local oFly = LinkedDC():Int_Get( 0 )
.......
oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING", return oFly == 1 )
4. I also tried to filter AddMultipleChoiceAnswer with a condition before to add it but i receive a strange result. In this case i have all 7 answer without the right custom text, all answer are "player" and all enabled.
the code was something like this :
Code: Select all
...........
oPlayer:BeginNewMultipleChoice()
local oFly = LinkedDC():Int_Get( 0 )
if oFly == 1 then
oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING" )
end
if oFirstStrike == 1 then
oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FIRST_STRIKE" )
end
............
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby RiiakShiNal » 05 Nov 2013, 14:06

Why don't you post the entire card that is causing problems, that way we can see if the problem is in something specific you are doing or if you have stumbled upon a specific scenario in which the AddMultipleChoiceAnswer() function fails.

Though the example you have in point 3 with bFly should fail because bFly is not valid by the time you reach AddMultipleChoiceAnswer() due to scope rules. Also the 4th example where you have "return oFly == 1" should also fail as you prematurely return without asking any questions. Using return will skip any remaining lines in the function/action and immediately end execution for that function/action.

In point 4 I don't see you adding any choices in the case that the variables are not equal to 1 so I assume none of the choices are being added and the AskMultipleChoiceQuestion() function just gives 7 nonsense answers to actually give the user a possibility to answer. This also raises the question of whether you are trying to ask the user a question with no valid answers (you have all the answers set to false) which could potentially cause the game to lock up.
RiiakShiNal
Programmer
 
Posts: 2188
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby NeoAnderson » 05 Nov 2013, 14:23

You're right watching the entire card probably will be helpful i haven't posted before because it is a working progress, so it needs some adjustments.

Anyway the base idea is this :

ANDROMEDA | Open
Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="14">
   <FILENAME text="ANDROMEDA_3_3_U_7272209" />
   <CARDNAME text="ANDROMEDA_3_3_U_7272209" />
   <TITLE>
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Andromeda]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Chevalier de requin]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Caballero de los Tiburones]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Hai-Ritter]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Andromeda]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[シャークス騎士]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[상어의 기사]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Акулы рыцаря]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Cavaleiro do tubarão]]></LOCALISED_TEXT>
   </TITLE>
   <MULTIVERSEID value="7272209" />
   <ARTID value="7227209" />
   <ARTIST name="Applibot© Legends of Cryptids" />
   <CASTING_COST cost="{2}{U}{U}{U}" />
   <TYPE metaname="Creature" />
   <SUB_TYPE metaname="Nymph" />
   <EXPANSION value="DPI" />
   <RARITY metaname="R" />
   <POWER value="3" />
   <TOUGHNESS value="3" />



<TRIGGERED_ABILITY linked_ability_group="1" forced_skip="1">
      <TRIGGER value="ZONECHANGE_END" simple_qualifier="self" to_zone="ZONE_BATTLEFIELD" />
      <RESOLUTION_TIME_ACTION>
         LinkedDC():Int_Set( 0, 0 )
         LinkedDC():Int_Set( 1, 0 )
         LinkedDC():Int_Set( 2, 0 )
         LinkedDC():Int_Set( 3, 2 )
         LinkedDC():Int_Set( 4, 0 )
         LinkedDC():Int_Set( 5, 0 )
         LinkedDC():Int_Set( 6, 0 )
    </RESOLUTION_TIME_ACTION>
   </TRIGGERED_ABILITY>



<ACTIVATED_ABILITY  linked_ability_group="1">
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{0}:Gain an ability choosing from abilities of the creatures on battefiled.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{0}:Scegli un'abilità tra le creature che sono sul campo di battaglia,]]></LOCALISED_TEXT>
      <COST mana_cost="{0}" type="Mana" />

<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_FLYING)
    filter:Add( FE_CARD_INSTANCE, OP_NOT, EffectSource())
    local number = filter:Count()
    if number &gt; 0 then
       LinkedDC():Int_Set( 0, 1 )
    end
</RESOLUTION_TIME_ACTION>


<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_FIRST_STRIKE)
    filter:Add( FE_CARD_INSTANCE, OP_NOT, EffectSource())
    local number = filter:Count()
    if number &gt; 0 then
       LinkedDC():Int_Set( 1, 1 )
    end
</RESOLUTION_TIME_ACTION>

<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_TRAMPLE)
    filter:Add( FE_CARD_INSTANCE, OP_NOT, EffectSource())
    local number = filter:Count()
    if number &gt; 0 then
       LinkedDC():Int_Set( 2, 1 )
    end
</RESOLUTION_TIME_ACTION>

<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_HASTE)
    filter:Add( FE_CARD_INSTANCE, OP_NOT, EffectSource())
    local number = filter:Count()
    if number &gt; 0 then
       LinkedDC():Int_Set( 3, 1 )
    end
</RESOLUTION_TIME_ACTION>


<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_VIGILANCE)
    filter:Add( FE_CARD_INSTANCE, OP_NOT, EffectSource())
    local number = filter:Count()
    if number &gt; 0 then
       LinkedDC():Int_Set( 4, 1 )
    end
</RESOLUTION_TIME_ACTION>


<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_LIFELINK)
    filter:Add( FE_CARD_INSTANCE, OP_NOT, EffectSource())
    local number = filter:Count()
    if number &gt; 0 then
       LinkedDC():Int_Set( 5, 1 )
    end
</RESOLUTION_TIME_ACTION>

<RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
    filter:Add(FE_CHARACTERISTIC, OP_HAS, CHARACTERISTIC_DEATHTOUCH)
    filter:Add( FE_CARD_INSTANCE, OP_NOT, EffectSource())
    local number = filter:Count()
    if number &gt; 0 then
       LinkedDC():Int_Set( 6, 1 )
    end
</RESOLUTION_TIME_ACTION>


<PLAY_TIME_ACTION>
      local oPlayer = EffectController()
      local oCard = EffectSource()
      local oFly = LinkedDC():Int_Get( 0 )
      local oFirstStrike = LinkedDC():Int_Get( 1 )
      local oTrample = LinkedDC():Int_Get( 2 )
      local oHaste = LinkedDC():Int_Get( 3 )
      local oVigilance = LinkedDC():Int_Get( 4 )
      local oLifelink = LinkedDC():Int_Get( 5 )
      local oDeathTouch = LinkedDC():Int_Get( 6 )
          if (oPlayer ~= nil) then
         oPlayer:BeginNewMultipleChoice()

      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING", (LinkedDC():Int_Get(0) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FIRST_STIRKE", (LinkedDC():Int_Get(1) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_TRAMPLE", (LinkedDC():Int_Get(2) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_HASTE",(LinkedDC():Int_Get(3) == 1) )
                oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_VIGILANCE", (LinkedDC():Int_Get(4) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_LIFELINK", (LinkedDC():Int_Get(5) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_DEATHTOUCH", (LinkedDC():Int_Get(6) == 1) )
           oPlayer:AskMultipleChoiceQuestion( "MODE_CHOOSE_ONE", oCard )
      
       end
</PLAY_TIME_ACTION>

      <RESOLUTION_TIME_ACTION>
      local oAbility = EffectController():GetMultipleChoiceResult()
            LinkedDC():Int_Set( oAbility, 2 )
      </RESOLUTION_TIME_ACTION>
<CONTINUOUS_ACTION layer="6">
      local oFly = LinkedDC():Int_Get( 0 )
      local oFirstStrike = LinkedDC():Int_Get( 1 )
      local oTrample = LinkedDC():Int_Get( 2 )
      local oHaste = LinkedDC():Int_Get( 3 )
      local oVigilance = LinkedDC():Int_Get( 4 )
      local oLifelink = LinkedDC():Int_Get( 5 )
      local oDeathTouch = LinkedDC():Int_Get( 6 )
          local characteristics = EffectSource():GetCurrentCharacteristics()
if oFly == 2 then
   characteristics:Bool_Set( CHARACTERISTIC_FLYING, 1 )
end

if oFirstStrike == 2 then
   characteristics:Bool_Set( CHARACTERISTIC_FIRST_STRIKE, 1 )
end

if oTrample == 2 then
       local characteristics = EffectSource():GetCurrentCharacteristics()
   characteristics:Bool_Set( CHARACTERISTIC_TRAMPLE, 1 )
end

if oHaste == 2 then
       local characteristics = EffectSource():GetCurrentCharacteristics()
   characteristics:Bool_Set( CHARACTERISTIC_HASTE, 1 )
end

if oVigilance == 2 then
       local characteristics = EffectSource():GetCurrentCharacteristics()
   characteristics:Bool_Set( CHARACTERISTIC_VIGILANCE, 1 )
end

if oLifelink == 2 then
       local characteristics = EffectSource():GetCurrentCharacteristics()
   characteristics:Bool_Set( CHARACTERISTIC_LIFELINK, 1 )
end
if oDeathTouch == 2 then
       local characteristics = EffectSource():GetCurrentCharacteristics()
   characteristics:Bool_Set( CHARACTERISTIC_DEATHTOUCH, 1 )
end
</CONTINUOUS_ACTION>

 <DURATION>
    return (EffectSource() == nil)
    </DURATION>

   </ACTIVATED_ABILITY>

<HELP title="MORE_INFO_OCEANDROP_TITLE_1" body="MORE_INFO_OCEANDROP_BODY_1" zone="ZONE_ANY" />
</CARD_V2>
As you can see i just tried your syntax suggestion the resul is the same game freeze with card in foreground. No choice displayed.

The code works if i remove the boolean checks into answers, just adding the custom answers, but in this way i can use some answer not needed.

The values are correctly passed into LinkedDC i checked also with a display message and all the filters works fine!

Inside the trigger the initialization LinkedDC():Int_Set( 3, 2 ) is just to test the card it give the HASTE ability.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby MC Brodie » 05 Nov 2013, 14:38

You might be getting a crash because there are no true answers for the multiple choice question. The etb effect sets everything to 0 or 2. Then the activated ability had the multiple choice question in a play time action which occurs before the resolution time actions that check for other creature abilities.
-----------------------------------------------------------------------
Song of the Day: 46 and 2 (cover)
MC Brodie
 
Posts: 310
Joined: 01 Jun 2013, 00:10
Has thanked: 44 times
Been thanked: 34 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby NeoAnderson » 05 Nov 2013, 14:48

Thanks MC Brodie
But i also tried to put it into a RESOLUTION_TIME_ACTION block but the only difference is that the game freeze with the card on battlefield instead of the card in foreground.

I post some scenario screen shoot :


1. MULTIPLE CHOICE INTO A PLAY_TIME BLOCK
ON BATTLEFIELD : ANDROMEDA CREATURE AND SPARTAN SOLDIER CREATURE (FIRST STRIKE)
Code: Select all
<PLAY_TIME_ACTION>
      local oPlayer = EffectController()
      local oCard = EffectSource()
      local oFly = LinkedDC():Int_Get( 0 )
      local oFirstStrike = LinkedDC():Int_Get( 1 )
      local oTrample = LinkedDC():Int_Get( 2 )
      local oHaste = LinkedDC():Int_Get( 3 )
      local oVigilance = LinkedDC():Int_Get( 4 )
      local oLifelink = LinkedDC():Int_Get( 5 )
      local oDeathTouch = LinkedDC():Int_Get( 6 )
          if (oPlayer ~= nil) then
         oPlayer:BeginNewMultipleChoice()

      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING", (LinkedDC():Int_Get(0) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FIRST_STIRKE", (LinkedDC():Int_Get(1) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_TRAMPLE", (LinkedDC():Int_Get(2) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_HASTE",(LinkedDC():Int_Get(3) == 1) )
                oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_VIGILANCE", (LinkedDC():Int_Get(4) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_LIFELINK", (LinkedDC():Int_Get(5) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_DEATHTOUCH", (LinkedDC():Int_Get(6) == 1) )
           oPlayer:AskMultipleChoiceQuestion( "MODE_CHOOSE_ONE", oCard )
     
       end
</PLAY_TIME_ACTION>
Image


2. MULTIPLE CHOICE INTO A PLAY_TIME BLOCK WITHOUT CHECK
ON BATTLEFIELD : ANDROMEDA CREATURE AND SPARTAN SOLDIER CREATURE (FIRST STRIKE)
Code: Select all
<PLAY_TIME_ACTION>
      local oPlayer = EffectController()
      local oCard = EffectSource()

          if (oPlayer ~= nil) then
         oPlayer:BeginNewMultipleChoice()

      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING" )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FIRST_STIRKE" )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_TRAMPLE" )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_HASTE" )
                oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_VIGILANCE" )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_LIFELINK" )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_DEATHTOUCH" )
           oPlayer:AskMultipleChoiceQuestion( "MODE_CHOOSE_ONE", oCard )
      
       end
</PLAY_TIME_ACTION>
Image
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby RiiakShiNal » 05 Nov 2013, 14:53

According to the code you currently have all of your choices are false which is probably why the game freezes.

Your choices are all in a PLAY_TIME_ACTION, but you don't set the values to 1 until you start processing the RESOLUTION_TIME_ACTIONs so you are giving the player a choice of nothing.

I currently don't see any point in using a LinkedDC() given what you currently have, but then again I don't know what you are aiming for either. Also you can simplify your ability checks by creating a function:
Code: Select all
CheckCreaturesForCharacteristic = function(nCharacteristic)
  local oFilter = ClearFilter()
  oFilter:Add(FE_TYPE, OP_IS, CARD_TYPE_CREATURE)
  oFilter:Add(FE_CHARACTERISTIC, OP_HAS, nCharacteristic)
  oFilter:Add(FE_CARD_INSTANCE, OP_NOT, EffectSource())
  if (oFilter:Count() > 0) then
    return 1
  end
  return 0
end
Then you can make your checks:
Code: Select all
<PLAY_TIME_ACTION>
  LinkedDC():Int_Set( 0, CheckCreaturesForCharacteristic( CHARACTERISTIC_FLYING ) )
  LinkedDC():Int_Set( 1, CheckCreaturesForCharacteristic( CHARACTERISTIC_FIRST_STRIKE ) )
  LinkedDC():Int_Set( 2, CheckCreaturesForCharacteristic( CHARACTERISTIC_TRAMPLE ) )
  LinkedDC():Int_Set( 3, CheckCreaturesForCharacteristic( CHARACTERISTIC_HASTE ) )
  LinkedDC():Int_Set( 4, CheckCreaturesForCharacteristic( CHARACTERISTIC_VIGILANCE ) )
  LinkedDC():Int_Set( 5, CheckCreaturesForCharacteristic( CHARACTERISTIC_LIFELINK ) )
  LinkedDC():Int_Set( 6, CheckCreaturesForCharacteristic( CHARACTERISTIC_DEATHTOUCH ) )
</PLAY_TIME_ACTION>
Though before you create a new question and start adding the answers you need to make sure that at least one of the answers will be available to the player otherwise the ability should do nothing since there are no valid answers. For example when you do the nil check on oPlayer you should also do a check on the abilities:
Code: Select all
if (oPlayer ~= nil) and
  ((LinkedDC():Int_Get(0) == 1) or
  (LinkedDC():Int_Get(1) == 1) or
  (LinkedDC():Int_Get(2) == 1) or
  (LinkedDC():Int_Get(3) == 1) or
  (LinkedDC():Int_Get(4) == 1) or
  (LinkedDC():Int_Get(5) == 1) or
  (LinkedDC():Int_Get(6) == 1)) then
RiiakShiNal
Programmer
 
Posts: 2188
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby MC Brodie » 05 Nov 2013, 14:57

The game still may give priority to the multiple choice question before the other blocks that check for creatures with abilities. Does it work if you switch the haste linkedDC from 2 to 1? If it does you may have to have the creature ability checking filters in the same resolution time action block as the multiple choice question.

If you tried this already then my bad. I haven't really been following every post
-----------------------------------------------------------------------
Song of the Day: 46 and 2 (cover)
MC Brodie
 
Posts: 310
Joined: 01 Jun 2013, 00:10
Has thanked: 44 times
Been thanked: 34 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby NeoAnderson » 05 Nov 2013, 15:00

Thanks as always my dear friends, your help is really appreciated i will simplify the code with you help.
Anyway i tried again changing PLAYTIME ACTION with RESOLUTION TIME ACTION, and now it seems to works, so probably as You and MC Brodie say the PlayTime Action occurs before the resolution blocks are evaluated.
The only difference when i tried before was in that case this activated ability was a resource so it was granted by another condition. I have no other explaination.

Now i will recode the card implementing your function and also the needed check to avoid no answer freeze.

Thanks to all of you Riiak, MC Brodie and also to Firemind.
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby RiiakShiNal » 05 Nov 2013, 15:05

There is no problem doing checks in an action block that comes before the action block with the question as long as the order is correct.
These are correct orderings:
  • Code: Select all
    <PLAY_TIME_ACTION>
      -- Checks
    </PLAY_TIME_ACTION>
    <PLAY_TIME_ACTION>
      -- Question
    </PLAY_TIME_ACTION>
  • Code: Select all
    <RESOLUTION_TIME_ACTION>
      -- Checks
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
      -- Question
    </RESOLUTION_TIME_ACTION>
  • Code: Select all
    <PLAY_TIME_ACTION>
      -- Checks
    </PLAY_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
      -- Question
    </RESOLUTION_TIME_ACTION>
This ordering is wrong:
Code: Select all
<RESOLUTION_TIME_ACTION>
  -- Checks
</RESOLUTION_TIME_ACTION>
<PLAY_TIME_ACTION>
  -- Question
</PLAY_TIME_ACTION>
because it equivalates to:
Code: Select all
<PLAY_TIME_ACTION>
  -- Question
</PLAY_TIME_ACTION>
<RESOLUTION_TIME_ACTION>
  -- Checks
</RESOLUTION_TIME_ACTION>
RiiakShiNal
Programmer
 
Posts: 2188
Joined: 16 May 2011, 21:37
Has thanked: 75 times
Been thanked: 497 times

Re: Age of Dodekatheon - NEW UPDATED 11/03/2013 (92 cards)

Postby NeoAnderson » 05 Nov 2013, 16:18

You are always so exhaustive thanks a lot. Hope to not give you too much disturb. :-)
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Age of Dodekatheon - NEW UPDATED 11/035/2013 (97 cards)

Postby NeoAnderson » 05 Nov 2013, 23:31

Thanks to your support i have finished this card.
Riiak your help is always precious.
Here you can find the final card code, probably you will find thousand of thing can be made better, but i'm doing my best! :-)

Note the final card choose between 14 different ability to copy. 2 Multiple choice.
1. Undefined things, if you pay to gain for an ability also if there is no ability to copy the mana will be lost.
2. When you move inside the multiple choice, from first screen "Set selection" to "Ability sub-set selection" you cannot go back.
3. If the card change zone it lose any ability already received. (I don't want to change this because is a good limitation)


Andromeda | Open
Code: Select all
<?xml version="1.0"?>
<CARD_V2 ExportVersion="14">
   <FILENAME text="ANDROMEDA_3_3_U_7272209" />
   <CARDNAME text="ANDROMEDA_3_3_U_7272209" />
   <TITLE>
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Andromeda]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Andromède]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Andrómeda]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Andromeda]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Andromeda]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[アンドロメダ]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[안드로메다]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Андромеда]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Andrômeda]]></LOCALISED_TEXT>
   </TITLE>
   <MULTIVERSEID value="7272209" />
   <ARTID value="7227209" />
   <ARTIST name="Applibot© Legends of Cryptids" />
   <CASTING_COST cost="{2}{U}{U}{U}" />
   <TYPE metaname="Creature" />
   <SUB_TYPE metaname="Nymph" />
   <EXPANSION value="DPI" />
   <RARITY metaname="M" />
   <POWER value="3" />
   <TOUGHNESS value="3" />


   <TRIGGERED_ABILITY linked_ability_group="1" forced_skip="1">
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Ocean Drop]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Goutte d'Océan]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Gota del océano]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Ozeans Tropfen]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Goccia dell'Oceano]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[海のドロップ]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[바다의 드롭]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[океана падение]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[queda do oceano]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[海洋的下降]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[海洋的下降]]></LOCALISED_TEXT>
      <TRIGGER value="DISCARD" simple_qualifier="objectyoucontrol" />
      
      <INTERVENING_IF>
    local SourceCard = EffectSource()
    local total = LinkedDC():Int_Get( 50 )
    if total == 0 and SourceCard:GetOwner() == EffectController() then
       return true
    else
       return false
    end
    </INTERVENING_IF>

          <RESOLUTION_TIME_ACTION>
      LinkedDC():Int_Set( 50, 1 )   
      </RESOLUTION_TIME_ACTION>
      
   </TRIGGERED_ABILITY>




   <ACTIVATED_ABILITY>
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{U}, {T}: Draw a card, then discard a card.]]

></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{U}, {T} : Piochez une carte, puis défaussez-vous

d’une carte.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{U}, {T}: Roba una carta, luego descarta una

carta.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{U}, {T}: Ziehe eine Karte und wirf dann eine Karte

aus deiner Hand ab.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{U}, {T}: Pesca una carta poi scarta una carta dalla

tua mano.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{U}, {T}:カードを1枚引き、その後カードを1枚捨てる。]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{U}, {T}: Draw a card, then discard a card.]]

></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{U}, {T}: возьмите карту, затем сбросьте карту.]]

></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{U}, {T}: Compre um card e depois descarte um

card.]]></LOCALISED_TEXT>
      <COST type="TapSelf" />
      <COST mana_cost="{U}" type="Mana" />
                <RESOLUTION_TIME_ACTION>
    EffectController():DrawCards(1)
    </RESOLUTION_TIME_ACTION>
    <RESOLUTION_TIME_ACTION>
    local filter = ClearFilter()
    filter:SetZone( ZONE_HAND, EffectController())
    EffectController():SetItemCount( 1 )
    for i = 0,(1-1) do
       EffectController():SetItemPrompt (i, "CARD_QUERY_CHOOSE_CARD_TO_DISCARD" )
    end
    EffectController():ChooseItems( EffectDC():Make_Targets(0) )
    </RESOLUTION_TIME_ACTION>
      <RESOLUTION_TIME_ACTION>
    local target_card = EffectDC():Get_Targets(0):Get_CardPtr(0)
    if target_card ~= nil  then
       target_card:Discard()
    end
    </RESOLUTION_TIME_ACTION>
</ACTIVATED_ABILITY>

   <TRIGGERED_ABILITY linked_ability_group="1" forced_skip="1">
      <TRIGGER value="ZONECHANGE_END" simple_qualifier="self" to_zone="ZONE_BATTLEFIELD" />
      <RESOLUTION_TIME_ACTION>
         LinkedDC():Int_Set( 50, 0 )
    </RESOLUTION_TIME_ACTION>
   </TRIGGERED_ABILITY>


      
<STATIC_ABILITY linked_ability_group="1" active_zone="ZONE_ANY">
      
<CONTINUOUS_ACTION layer="6">
         if (EffectSource() ~= nil ) then
               local nState = LinkedDC():Int_Get( 50 )
               if (nState == 1) then
               EffectSource():GetCurrentCharacteristics():GrantAbility(1)
                             else
                              EffectSource():GetCurrentCharacteristics():GrantAbility(2)
                   end
                        end
      </CONTINUOUS_ACTION>
    <DURATION>
    return EffectSource() == nil
    </DURATION>
   </STATIC_ABILITY>

<STATIC_ABILITY resource_id="2"  >
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Additional ability, inactive ({U}{U}{U} {T} : |Gains

an ability choosing from abilities of the creatures on battlefield. You can use this ability once per turn.|)]]

></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Capacité supplémentaire, inactive ({U}{U}{U} {T} : |

Acquérir une capacité choisissant parmi capacités des créatures sur champ de bataille. Vous pouvez utiliser cette

capacité une fois par tour.|)]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Capacidad adicional, inactivo ({U}{U}{U} {T} : |

Obtiene una capacidad de elegir de las habilidades de las criaturas en la batalla. Puedes usar esta habilidad una

vez por turno.|)]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Zusätzliche Fähigkeit, inaktiv ({U}{U}{U} {T} : |

Gewinnt die Fähigkeit der Auswahl von Fähigkeiten der Kreaturen auf dem Schlachtfeld. Sie können diese Fähigkeit

einmal pro Umdrehung.|)]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Abilità addizionale non attiva ({U}{U}{U} {T} : |

Acquisisci un'abilità tra le creature che sono sul campo di battaglia. Puoi usare questa abilità una volta per

turno.|)]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[追加能力、非アクティブ({U}{U}{U} {T} : |戦場で生き物の能力から選択する能力を得る。

あなたは、1ターンに1度、この能力を使用することができます。|)]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[추가 기능을 비활성 ({U}{U}{U} {T} : |전장에서 생물의 능력에서 선택 능

력을 얻습니다. 당신은 1 턴에 1 번이 기능을 사용할 수 있습니다.|)]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Дополнительные способности, неактивный ({U}{U}{U} {T}

: | Приобретает способность выбирая из способностей существ на поле боя. Вы можете использовать эту способность

один раз за ход.|)]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Capacidade adicional, inativo ({U}{U}{U} {T} : |Ganha

uma capacidade de escolha de habilidades das criaturas no campo de batalha. Você pode usar esta habilidade uma vez

por turno.|)]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[額外的能力,無效({U}{U}{U} {T} : |獲得的能力,選擇能力戰場上的生物。您可以使

用此能力每轉一次。|)]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[額外的能力,無效({U}{U}{U} {T} : |獲得的能力,選擇能力戰場上的生物。您可以使

用此能力每轉一次。|)]]></LOCALISED_TEXT>
   </STATIC_ABILITY>

<ACTIVATED_ABILITY  resource_id="1"  linked_ability_group="1">
      <LOCALISED_TEXT LanguageCode="en-US"><![CDATA[{U}{U}{U} {T} : Gains an ability choosing from

abilities of the creatures on battlefield. You can use this ability once per turn.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[{U}{U}{U} {T} : Acquérir une capacité choisissant

parmi capacités des créatures sur champ de bataille. Vous pouvez utiliser cette capacité une fois par tour.]]

></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[{U}{U}{U} {T} : Obtiene una capacidad de elegir de

las habilidades de las criaturas en la batalla. Puedes usar esta habilidad una vez por turno.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[{U}{U}{U} {T} : Gewinnt die Fähigkeit der Auswahl von

Fähigkeiten der Kreaturen auf dem Schlachtfeld. Sie können diese Fähigkeit einmal pro Umdrehung.]]

></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[{U}{U}{U} {T} : Acquisisci un'abilità tra le creature

che sono sul campo di battaglia. Puoi usare questa abilità una volta per turno.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[{U}{U}{U} {T} : 戦場で生き物の能力から選択する能力を得る。あなたは、1ターンに1度、

この能力を使用することができます。]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[{U}{U}{U} {T} : 전장에서 생물의 능력에서 선택 능력을 얻습니다. 당신은

1 턴에 1 번이 기능을 사용할 수 있습니다.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[{U}{U}{U} {T} : Приобретает способность выбирая из

способностей существ на поле боя. Вы можете использовать эту способность один раз за ход.]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[{U}{U}{U} {T} : Ganha uma capacidade de escolha de

habilidades das criaturas no campo de batalha. Você pode usar esta habilidade uma vez por turno.]]

></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[{U}{U}{U} {T} : 獲得的能力,選擇能力戰場上的生物。您可以使用此能力每轉一

次。]]></LOCALISED_TEXT>
      <LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[{U}{U}{U} {T} : 獲得的能力,選擇能力戰場上的生物。您可以使用此能力每轉一

次。]]></LOCALISED_TEXT>
      <COST mana_cost="{U}{U}{U}" type="Mana" />
      <COST type="TapSelf" />
      <AVAILABILITY per_turn_limit="1" />
<PLAY_TIME_ACTION>
  LinkedDC():Int_Set( 0, CheckSourceForCharacteristic( CHARACTERISTIC_FLYING ) + 1 )
  LinkedDC():Int_Set( 1, CheckSourceForCharacteristic( CHARACTERISTIC_FIRST_STRIKE ) + 1 )
  LinkedDC():Int_Set( 2, CheckSourceForCharacteristic( CHARACTERISTIC_TRAMPLE ) + 1 )
  LinkedDC():Int_Set( 3, CheckSourceForCharacteristic( CHARACTERISTIC_REACH ) + 1 )
  LinkedDC():Int_Set( 4, CheckSourceForCharacteristic( CHARACTERISTIC_VIGILANCE ) + 1 )
  LinkedDC():Int_Set( 5, CheckSourceForCharacteristic( CHARACTERISTIC_LIFELINK ) + 1 )
  LinkedDC():Int_Set( 6, CheckSourceForCharacteristic( CHARACTERISTIC_DEATHTOUCH ) + 1 )
  LinkedDC():Int_Set( 7, CheckSourceForCharacteristic( CHARACTERISTIC_DOUBLE_STRIKE ) + 1 )
  LinkedDC():Int_Set( 8, CheckSourceForCharacteristic( CHARACTERISTIC_INTIMIDATE ) + 1 )
  LinkedDC():Int_Set( 9, CheckSourceForCharacteristic( CHARACTERISTIC_FEAR ) + 1 )
  LinkedDC():Int_Set( 10, CheckSourceForCharacteristic( CHARACTERISTIC_HEXPROOF ) + 1 )
  LinkedDC():Int_Set( 11, CheckSourceForCharacteristic( CHARACTERISTIC_SHROUD ) + 1 )
  LinkedDC():Int_Set( 12, CheckSourceForCharacteristic( CHARACTERISTIC_UNBLOCKABLE ) + 1 )
  LinkedDC():Int_Set( 13, CheckSourceForCharacteristic( CHARACTERISTIC_INDESTRUCTIBLE ) + 1 )
  LinkedDC():Int_Set( 20, 0 )
  LinkedDC():Int_Set( 21, 0 )
 </PLAY_TIME_ACTION>
       
<PLAY_TIME_ACTION>
if (LinkedDC():Int_Get( 0 ) ~= 2 ) then
  LinkedDC():Int_Set( 0, CheckCreaturesForCharacteristic( CHARACTERISTIC_FLYING ) )
end
if (LinkedDC():Int_Get( 1 ) ~= 2 ) then
  LinkedDC():Int_Set( 1, CheckCreaturesForCharacteristic( CHARACTERISTIC_FIRST_STRIKE ) )
end
if (LinkedDC():Int_Get( 2 ) ~= 2 ) then
  LinkedDC():Int_Set( 2, CheckCreaturesForCharacteristic( CHARACTERISTIC_TRAMPLE ) )
end
if (LinkedDC():Int_Get( 3 ) ~= 2 ) then
  LinkedDC():Int_Set( 3, CheckCreaturesForCharacteristic( CHARACTERISTIC_REACH ) )
end
if (LinkedDC():Int_Get( 4 ) ~= 2 ) then
  LinkedDC():Int_Set( 4, CheckCreaturesForCharacteristic( CHARACTERISTIC_VIGILANCE ) )
end
if (LinkedDC():Int_Get( 5 ) ~= 2 ) then
  LinkedDC():Int_Set( 5, CheckCreaturesForCharacteristic( CHARACTERISTIC_LIFELINK ) )
end
if (LinkedDC():Int_Get( 6 ) ~= 2 ) then
  LinkedDC():Int_Set( 6, CheckCreaturesForCharacteristic( CHARACTERISTIC_DEATHTOUCH ) )
end
if (LinkedDC():Int_Get( 7 ) ~= 2 ) then
  LinkedDC():Int_Set( 7, CheckCreaturesForCharacteristic( CHARACTERISTIC_DOUBLE_STRIKE ) )
end
if (LinkedDC():Int_Get( 8 ) ~= 2 ) then
  LinkedDC():Int_Set( 8, CheckCreaturesForCharacteristic( CHARACTERISTIC_INTIMIDATE ) )
end
if (LinkedDC():Int_Get( 9 ) ~= 2 ) then
  LinkedDC():Int_Set( 9, CheckCreaturesForCharacteristic( CHARACTERISTIC_FEAR ) )
end
if (LinkedDC():Int_Get( 10 ) ~= 2 ) then
  LinkedDC():Int_Set( 10, CheckCreaturesForCharacteristic( CHARACTERISTIC_HEXPROOF ) )
end
if (LinkedDC():Int_Get( 11 ) ~= 2 ) then
  LinkedDC():Int_Set( 11, CheckCreaturesForCharacteristic( CHARACTERISTIC_SHROUD ) )
end
if (LinkedDC():Int_Get( 12 ) ~= 2 ) then
  LinkedDC():Int_Set( 12, CheckCreaturesForCharacteristic( CHARACTERISTIC_UNBLOCKABLE ) )
end
if (LinkedDC():Int_Get( 13 ) ~= 2 ) then
  LinkedDC():Int_Set( 13, CheckCreaturesForCharacteristic( CHARACTERISTIC_INDESTRUCTIBLE ) )
end
</PLAY_TIME_ACTION>



<PLAY_TIME_ACTION>
    local oPlayer = EffectController()
    local oCard = EffectSource()
    if ((LinkedDC():Int_Get(0) == 1) or
     (LinkedDC():Int_Get(1) == 1) or
     (LinkedDC():Int_Get(2) == 1) or
     (LinkedDC():Int_Get(3) == 1) or
     (LinkedDC():Int_Get(4) == 1) or
     (LinkedDC():Int_Get(5) == 1) or
     (LinkedDC():Int_Get(6) == 1)) then
      LinkedDC():Int_Set( 20, 1 )
   end
  if ((LinkedDC():Int_Get(7) == 1) or
     (LinkedDC():Int_Get(8) == 1) or
     (LinkedDC():Int_Get(9) == 1) or
     (LinkedDC():Int_Get(10) == 1) or
     (LinkedDC():Int_Get(11) == 1) or
     (LinkedDC():Int_Get(12) == 1) or
      (LinkedDC():Int_Get(13) == 1)) then
     LinkedDC():Int_Set( 21, 1 )
  end
if (oPlayer ~= nil)  and ((LinkedDC():Int_Get(20) == 1) or (LinkedDC():Int_Get(21) == 1)) then
      oPlayer:BeginNewMultipleChoice()
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_SET1", (LinkedDC():Int_Get(20) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_SET2", (LinkedDC():Int_Get(21) == 1) )
      oPlayer:AskMultipleChoiceQuestion( "MODE_ANDROMEDA_CHOOSE_SET", oCard )
end


</PLAY_TIME_ACTION>

<PLAY_TIME_ACTION>
local oPlayer = EffectController()
local oValue = EffectController():GetMultipleChoiceResult()
if (oPlayer ~= nil) and  ((LinkedDC():Int_Get(20) == 1) or (LinkedDC():Int_Get(21) == 1)) then
 LinkedDC():Int_Set( 22, oValue)
end
</PLAY_TIME_ACTION>

<PLAY_TIME_ACTION>
local oPlayer = EffectController()
local oCard = EffectSource()
if (oPlayer ~= nil) and  (LinkedDC():Int_Get(20) == 1) and (LinkedDC():Int_Get(22) == 0) then
      oPlayer:BeginNewMultipleChoice()
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FLYING", (LinkedDC():Int_Get(0) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FIRST_STIRKE", (LinkedDC():Int_Get(1) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_TRAMPLE", (LinkedDC():Int_Get(2) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_REACH",(LinkedDC():Int_Get(3) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_VIGILANCE", (LinkedDC():Int_Get(4) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_LIFELINK", (LinkedDC():Int_Get(5) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_DEATHTOUCH", (LinkedDC():Int_Get(6) == 1) )
      oPlayer:AskMultipleChoiceQuestion( "MODE_ANDROMEDA_CHOOSE_ONE", oCard )
end
</PLAY_TIME_ACTION>

<PLAY_TIME_ACTION>
local oPlayer = EffectController()
local oCard = EffectSource()
if (oPlayer ~= nil) and  (LinkedDC():Int_Get(21) == 1) and (LinkedDC():Int_Get(22) == 1) then
      oPlayer:BeginNewMultipleChoice()
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_DOUBLE_STRIKE", (LinkedDC():Int_Get(7) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_INTIMIDATE", (LinkedDC():Int_Get(8) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_FEAR", (LinkedDC():Int_Get(9) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_HEXPROOF",(LinkedDC():Int_Get(10) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_SHROUD", (LinkedDC():Int_Get(11) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_UNBLOCKABLE", (LinkedDC():Int_Get(12) == 1) )
      oPlayer:AddMultipleChoiceAnswer( "CARD_QUERY_ANDROMEDA_INDESTRUCTIBLE", (LinkedDC():Int_Get(13) == 1) )
      oPlayer:AskMultipleChoiceQuestion( "MODE_ANDROMEDA_CHOOSE_ONE", oCard )
end
</PLAY_TIME_ACTION>

   <PLAY_TIME_ACTION>
local oPlayer = EffectController()
local oAbility = EffectController():GetMultipleChoiceResult()
if (oPlayer ~= nil) then
  if (oPlayer ~= nil) and  (LinkedDC():Int_Get(20) == 1) and (LinkedDC():Int_Get(22) == 0) then
        LinkedDC():Int_Set( oAbility, 2 )
  end
  if (LinkedDC():Int_Get(21) == 1) and (LinkedDC():Int_Get(22) == 1) then
        LinkedDC():Int_Set( (oAbility + 7), 2 )
  end
LinkedDC():Int_Set( 51, 1 )
end
   </PLAY_TIME_ACTION>

<CONTINUOUS_ACTION layer="6">
local characteristics = EffectSource():GetCurrentCharacteristics()

if (LinkedDC():Int_Get(0) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_FLYING, 1 )
end

if (LinkedDC():Int_Get(1) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_FIRST_STRIKE, 1 )
end

if (LinkedDC():Int_Get(2) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_TRAMPLE, 1 )
end

if (LinkedDC():Int_Get(3) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_REACH, 1 )
end

if (LinkedDC():Int_Get(4) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_VIGILANCE, 1 )
end

if (LinkedDC():Int_Get(5) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_LIFELINK, 1 )
end

if (LinkedDC():Int_Get(6) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_DEATHTOUCH, 1 )
end

if (LinkedDC():Int_Get(7) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_DOUBLE_STRIKE, 1 )
end

if (LinkedDC():Int_Get(8) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_INTIMIDATE, 1 )
end

if (LinkedDC():Int_Get(9) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_FEAR, 1 )
end

if (LinkedDC():Int_Get(10) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_HEXPROOF, 1 )
end

if (LinkedDC():Int_Get(11) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_SHROUD, 1 )
end

if (LinkedDC():Int_Get(12) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_UNBLOCKABLE, 1 )
end

if (LinkedDC():Int_Get(13) == 2) then
   characteristics:Bool_Set( CHARACTERISTIC_INDESTRUCTIBLE, 1 )
end

</CONTINUOUS_ACTION>

 <DURATION>
    return (EffectSource() == nil)
    </DURATION>

   </ACTIVATED_ABILITY>
<TRIGGERED_ABILITY linked_ability_group="1" forced_skip="1">
      <TRIGGER value="BEGINNING_OF_STEP">
    return MTG():GetStep() == STEP_END_OF_TURN
    </TRIGGER>
      <INTERVENING_IF>
    local total = LinkedDC():Int_Get( 51 )
    if total == 1 then
       return true
    else
       return false
    end
    </INTERVENING_IF>
      <RESOLUTION_TIME_ACTION>
      LinkedDC():Int_Set( 50, 0 )
      LinkedDC():Int_Set( 51, 0 )
    </RESOLUTION_TIME_ACTION>
   </TRIGGERED_ABILITY>   

<HELP title="MORE_INFO_ANDROMEDA_ADDITIONAL_ABILITY_TITLE_1" body="MORE_INFO_ANDROMEDA_ADDITIONAL_ABILITY_BODY_1"

zone="ZONE_ANY" />
<HELP title="MORE_INFO_OCEANDROP_TITLE_1" body="MORE_INFO_OCEANDROP_BODY_1" zone="ZONE_ANY" />
</CARD_V2>
Image
NeoAnderson
 
Posts: 914
Joined: 10 Sep 2013, 07:49
Has thanked: 18 times
Been thanked: 139 times

Re: Age of Dodekatheon - NEW UPDATED 11/035/2013 (97 cards)

Postby MysteryMindX » 07 Nov 2013, 00:08

My only complaint about this deck is that it was incredibly overpowered. But I enjoyed it very much. I would appreciate the link for the download so I can keep getting the most of it.
MysteryMindX
 
Posts: 10
Joined: 28 Sep 2013, 19:08
Has thanked: 1 time
Been thanked: 0 time

PreviousNext

Return to 2014

Who is online

Users browsing this forum: No registered users and 3 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 3 users online :: 0 registered, 0 hidden and 3 guests (based on users active over the past 10 minutes)
Most users ever online was 7303 on 15 Jul 2025, 20:46

Users browsing this forum: No registered users and 3 guests

Login Form