RiiakShiNal wrote:That can easily be fixed by doing this:
- Code: Select all
local oTarget = EffectDC():Get_Targets(0) and EffectDC():Get_Targets(0):Get_CardPtr(0)
This way it no longer complains if there were no creatures in play to become the new target without having to resort to doing a count.
Thanks i will check later your solution.
RiiakShiNal wrote:Well, that can be changed simply by moving the RemoveDelayedTrigger() call to a just before establishing the new triggers. The nils can be fixed by checking to make sure TriggerObject() is not nil or by using TriggerObjectLKI() to ensure you get the last known information.
Thanks you again i will let you know if it works.
RiiakShiNal wrote:Well ultimately, whatever works. Though you could get around the issue with LoseAllAbilities() by using a fake characteristic and checking for that in the Delayed Triggers
I think i have to read your documentations about this function to understand how to use it.
RiiakShiNal wrote:This one will suffer from problems if someone else casts this spell from your graveyard (there are cards that allow that) as then the information in the LinkedDC() will be overwritten. For example Player A casts the spell on a creature belonging to Player B, Player B then casts the spell from Player A's graveyard on a Creature Player A controls, Player B then attacks, Player B retains control of his creature, but it untaps, Player A taps his creature and Player B gets it.
Nevermind i copied some linkedDC and using a DisplayMessage i have seen that the value is not passed, probably because the spell have is effect into the stack and when change zone to the graveyard the value is already resetted. So It is useless to discuss anymore my idea doesn't work.