Re: Formal Request Thread
Hi All,
I'd really like some help coding Darigaaz’s Charm. This is a slightly modified version (I added until EOT to third ability and AI simplified targeting) of the version from the community WAD apparently coded by volrathxp. Currently the first two abilities function as intended, however the third ability is broken -- it won't allow the user to select a target, and just resolves nothing instead. It generates the script_log "[lua] [string "DARIGAAZS_CHARM_SM_28546_TITLE (CONTINUOUS_ACTION)~0x0000081e"]:2: attempt to index a nil value".
[lua] [string "AVACYNS_COLLAR_SM_282368_TITLE (RESOLUTION_TIME_ACTION)~0x00000..."]:5: unexpected symbol near ')'", although I'm not sure if this is actually linked to the triggered ability not working, it may be another problem.
Cheers.
I'd really like some help coding Darigaaz’s Charm. This is a slightly modified version (I added until EOT to third ability and AI simplified targeting) of the version from the community WAD apparently coded by volrathxp. Currently the first two abilities function as intended, however the third ability is broken -- it won't allow the user to select a target, and just resolves nothing instead. It generates the script_log "[lua] [string "DARIGAAZS_CHARM_SM_28546_TITLE (CONTINUOUS_ACTION)~0x0000081e"]:2: attempt to index a nil value".
- Code: Select all
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Choose one —]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Choose one —]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Choose one —]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Choose one —]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Choose one —]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Choose one —]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[Choose one —]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Choose one —]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Choose one —]]></LOCALISED_TEXT>
<MODE_SELECT tag="MODE_CHOOSE_ONE">
<MODE tag="MODE_DAR_RETURN" index="1" />
<MODE tag="MODE_DAR_DAMAGE" index="2" />
<MODE tag="MODE_DAR_PUMP" index="3" />
</MODE_SELECT>
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_RETURN_TO_HAND" definition="0" compartment="0" mode="1" count="1" />
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
filter:SetZone( ZONE_GRAVEYARD, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION mode="1">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
target:PutInHand()
end
</RESOLUTION_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_DEAL_3_DAMAGE" definition="1" compartment="1" mode="2" count="1" />
<TARGET_DEFINITION id="1">
local filter = ClearFilter()
filter:SetFilterType( FILTER_TYPE_CARDS + FILTER_TYPE_PLAYERS )
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION mode="2">
local target_creature = EffectDC():Get_Targets(1):Get_CardPtr(0)
local target_player = EffectDC():Get_Targets(1):Get_PlayerPtr(0)
if ( target_creature ~= nil ) then
EffectSourceLKI():DealDamageTo( 3, target_creature )
elseif ( target_player ~= nil ) then
EffectSourceLKI():DealDamageTo( 3, target_player )
end
</RESOLUTION_TIME_ACTION>
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_GET_3_3" definition="2" compartment="0" mode="3" count="1" />
<TARGET_DEFINITION id="2">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
</TARGET_DEFINITION>
<CONTINUOUS_ACTION layer="7C" mode="3">
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
local characteristics = target:GetCurrentCharacteristics()
characteristics:Power_Add( 3 )
characteristics:Toughness_Add( 3 )
end
</CONTINUOUS_ACTION>
<DURATION simple_duration="UntilEOT" />
<AI_SIMPLIFIED_TARGETING compartment="1" hint="HINT_ENEMY_ONLY" />
<AI_SIMPLIFIED_TARGETING compartment="0" hint="HINT_ALLIED_ONLY" />
</SPELL_ABILITY>
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[• Return target creature card from your graveyard to your hand.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[• Return target creature card from your graveyard to your hand.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[• Return target creature card from your graveyard to your hand.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[• Return target creature card from your graveyard to your hand.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[• Return target creature card from your graveyard to your hand.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[• Return target creature card from your graveyard to your hand.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[• Return target creature card from your graveyard to your hand.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[• Return target creature card from your graveyard to your hand.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[• Return target creature card from your graveyard to your hand.]]></LOCALISED_TEXT>
</SPELL_ABILITY>
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[• Darigaaz’s Charm deals 3 damage to target creature or player.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[• Darigaaz’s Charm deals 3 damage to target creature or player.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[• Darigaaz’s Charm deals 3 damage to target creature or player.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[• Darigaaz’s Charm deals 3 damage to target creature or player.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[• Darigaaz’s Charm deals 3 damage to target creature or player.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[• Darigaaz’s Charm deals 3 damage to target creature or player.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[• Darigaaz’s Charm deals 3 damage to target creature or player.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[• Darigaaz’s Charm deals 3 damage to target creature or player.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[• Darigaaz’s Charm deals 3 damage to target creature or player.]]></LOCALISED_TEXT>
</SPELL_ABILITY>
<SPELL_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[• Target creature gets +3/+3 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[• Target creature gets +3/+3 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[• Target creature gets +3/+3 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[• Target creature gets +3/+3 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[• Target creature gets +3/+3 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[• Target creature gets +3/+3 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[• Target creature gets +3/+3 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[• Target creature gets +3/+3 until end of turn.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[• Target creature gets +3/+3 until end of turn.]]></LOCALISED_TEXT>
</SPELL_ABILITY>
[lua] [string "AVACYNS_COLLAR_SM_282368_TITLE (RESOLUTION_TIME_ACTION)~0x00000..."]:5: unexpected symbol near ')'", although I'm not sure if this is actually linked to the triggered ability not working, it may be another problem.
- Code: Select all
<STATIC_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Equipped creature gets +1/+0 and has vigilance.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[La créature équipée gagne +1/+0 et a la vigilance.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[La criatura equipada obtiene +1/+0 y tiene vigilancia.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Die ausgerüstete Kreatur erhält +1/+0 und hat Wachsamkeit.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[La creatura equipaggiata prende +1/+0 e ha cautela.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[装備しているクリーチャーは+1/+0の修整を受けるとともに警戒を持つ。装備しているクリーチャーが死亡するたび、それが人間だった場合、飛行を持つ白の1/1のスピリット・クリーチャー・トークンを1体戦場に出す。 装備 {2}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[장착된 생물은 +1/+0을 받고 경계 능력을 가진다.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Снаряженное существо получает +1/+0 и имеет Бдительность.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[A criatura equipada recebe +1/+0 e tem vigilância.]]></LOCALISED_TEXT>
<CONTINUOUS_ACTION layer="7C">
local parent = EffectSource():GetParent()
if parent ~= nil then
parent:GetCurrentCharacteristics():Power_Add( 1 )
end
</CONTINUOUS_ACTION>
<CONTINUOUS_ACTION layer="6">
local parent = EffectSource():GetParent()
if parent ~= nil then
parent:GetCurrentCharacteristics():Bool_Set( CHARACTERISTIC_VIGILANCE, 1 )
end
</CONTINUOUS_ACTION>
</STATIC_ABILITY>
<TRIGGERED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Whenever equipped creature dies, if it was a Human, put a 1/1 white Spirit creature token with flying onto the battlefield.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[À chaque fois que la créature équipée meurt, si elle était un humain, mettez sur le champ de bataille un jeton de créature 1/1 blanche Esprit avec le vol.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Siempre que la criatura equipada muera, si era un Humano, pon en el campo de batalla una ficha de criatura Espíritu blanca 1/1 con la habilidad de volar.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Immer wenn die ausgerüstete Kreatur stirbt, bringe einen 1/1 weißen Geist-Kreaturenspielstein mit Flugfähigkeit ins Spiel, falls sie ein Mensch war.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Ogniqualvolta la creatura equipaggiata muore, se era un Umano, metti sul campo di battaglia una pedina creatura Spirito 1/1 bianca con volare.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Whenever equipped creature dies, if it was a Human, put a 1/1 white Spirit creature token with flying onto the battlefield.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[장착된 생물이 죽을 때마다, 그 생물이 인간이었다면, 비행 능력을 가진 1/1 백색 신령 토큰 한 개를 전장에 놓는다.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Каждый раз когда снаряженное существо умирает, если оно было Человеком, положите на поле битвы одну фишку существа 1/1 белый Дух с Полетом.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Toda vez que a criatura equipada morrer, se ela for do tipo Humano, coloque no campo de batalha uma ficha de criatura branca 1/1 do tipo Espírito com voar.]]></LOCALISED_TEXT>
<TRIGGER value="ZONECHANGE_BEGIN" to_zone="ZONE_GRAVEYARD" from_zone="ZONE_BATTLEFIELD">
return TriggerObject() == EffectSource():GetParent()
</TRIGGER>
<RESOLUTION_TIME_ACTION>
if EffectSource() ~= nil then
local sacrificed = EffectDC():Get_Targets(6):Get_CardPtr(0)
if sacrificed ~= nil and sacrificed:GetSubType():Test(CREATURE_TYPE_HUMAN) then
MTG():PutTokensOntoBattlefield( "TOKEN_SPIRIT_1_1_W_F_350803", 1, EffectController() ) )
else
end
end
</RESOLUTION_TIME_ACTION>
</TRIGGERED_ABILITY>
<ACTIVATED_ABILITY>
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Equip {2}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Équipement {2}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Equipar {2}.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Ausrüsten {2}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Equipaggiare {2}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[Equip {2}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[장착 {2}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Снарядить {2}]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Equipar {2}]]></LOCALISED_TEXT>
<COST mana_cost="{2}" type="Mana" />
<AVAILABILITY sorcery_time="1" />
<AI_AVAILABILITY type="restriction" restriction_type="equip" />
<TARGET tag="CARD_QUERY_CHOOSE_CREATURE_TO_EQUIP" definition="0" compartment="0" count="1" />
<TARGET_DEFINITION id="0">
local filter = ClearFilter()
filter:Add( FE_TYPE, OP_IS, CARD_TYPE_CREATURE )
filter:Add( FE_CONTROLLER, OP_IS, EffectController() )
</TARGET_DEFINITION>
<RESOLUTION_TIME_ACTION>
local target_card = EffectDC():Get_Targets(0):Get_CardPtr(0)
if (target_card ~= nil and EffectSource() ~= nil) then
EffectSource():Attach( target_card )
end
</RESOLUTION_TIME_ACTION>
<AUTO_SKIP>
local target = EffectDC():Get_Targets(0):Get_CardPtr(0)
if target ~= nil then
return false
else
return true
end
</AUTO_SKIP>
</ACTIVATED_ABILITY>
Cheers.