NeoAnderson wrote:This point is not clear for me, taking your example :
you don't want to resolve move counters off first if there are no counters to move off you would want to resolve exiling Tetravite tokens first then if there are any counters resolve moving counters off.
Now look my second choice : As you said we have no counters on it, so we decide to exile tokens first and this is allowed if there are tokens, then we are able to remove the counters because there will be some counters to remove. So for me it seems to be compliant with what you just said. If i use both conditions, we will exclude the execution of 2 triggers also when it will become available. The first 2 choices depends of the first action condition, because the second will be always true if the first will be resolved. Anyway i also want to tell that is possible to resolve the action and select "0" from numerical choice for the counters to remove, or no targets for the tokens exile. Obvioussly in these case the second action resolved will do nothing.
I understand that you disable options in your multiple choice to prevent selecting options that don't make sense, but I was saying since there are only 2 valid triggering orders if an option doesn't make sense why show the multiple choice at all? Why not just auto-select the only triggering sequence that makes sense in certain situations?
NeoAnderson wrote:[*] Thanks i was forgetting about that because i was focusing on other aspects. I changed the code of zone transition as the follow, let me no if you think is ok. Also if i used this code with
Clockwork Avian but the problem still remains, because it seems that is resolved before
Oubliette and
Tawnos's Coffin can add their counters so it has no effect. To resolve this issue i have to change the action blocks into
Oubliette and
Tawnos's Coffin about the counters adding, from resolution_time to play_time, these make them be executed first. Do you think this is ok or will create some other conflicts i am not seeing now ?
- Code: Select all
<RESOLUTION_TIME_ACTION>
if EffectSource() ~= nil then
local counters = EffectSource():CountCounters(MTG():PlusOnePlusOneCounters())
if counters >= 3 then
EffectSource():RemoveCounters( MTG():PlusOnePlusOneCounters(), (counters-3))
else
EffectSource():AddCounters( MTG():PlusOnePlusOneCounters(), (3-counters))
end
end
</RESOLUTION_TIME_ACTION>
This code looks fine.
If the problem still remains with
Clockwork Avian and
Oubliette /
Tawnos's Coffin then you may have the issue in
Oubliette and
Tawnos's Coffin. To make the returned object enter the battlefield with the noted number and kind of counters those counters need to be added in the
same action as they are returned to the battlefield (otherwise the counters are added
after they change zones).
NeoAnderson wrote:Tajuru Preserver ( I am not sure we can ovverride the sacrifice action or at least i haven't tried until now, there is a player characteristic that avoid to sacrifice creatures but nothing for all the permanents, so if the sacrifice trigger can be override probably we can do something, but honestly it require some tests)[/b]
The sacrifice trigger can be overridden so this card can be made.
NeoAnderson wrote:Mycosynth Lattice ( I am not sure all the card effect can be reproduced)
As stated by MC Brodie (and myself and others on other occasions), this card can't be made because it requires engine support that we don't have (the ability to use mana as if it were any colour).
NeoAnderson wrote:1.Now i have another question
I was reading the card Xenic Poltergeist, normally it could be coded but i also read an added rule :8/1/2008: A noncreature permanent that turns into a creature can attack, and its
abilities can be activated, only if its controller has continuously controlled that permanent since the beginning of his or her most recent turn. It doesn't matter how long the permanent has been a creature.This rule make the card really complex to code, because i think it still could be coded, but to do it, should keep all informations ( the number of turn when it comes in play, controller, step ), about all the suitable targets. As idea could be still doable, doing something similar to the recording of the counters we made with Oubliette, but honestly i think this could be huge for the computation of the engine.
What's your opinion about it?
As stated by MC Brodie and thefiremind this is summoning sickness and it is handled for us by the engine.
NeoAnderson wrote:2. Going forward found another doubt, the card Power Artifact can be coded?
I haven't tried but i think that the function DecreaseCost() works only for the casting cost right?
So is there a possibility to code this effect?
I was thinking to a walk around :
1. A trigger CONSIDERED_FOR_ACTIVATION with replacement_effect if the TriggerObject() is the parent artifact add 2 colorless mana using riiak mana tokens, then call a delayDC ABILITY_RESOLVE who delete the mana tokens if were not used (this to avoid the utilization of the mana for other cards).
No,
Power Artifact can't be coded because we can't reduce the cost of abilities.
Trying to workaround the issue by putting mana tokens with conditions into play can cause other unwanted card interactions so this should be avoided (tokens would be read as being part of mana pool and if a spell is then cast that doubles the mana pool based on what is currently in it, these tokens could be copied without the conditions as when mana is duplicated MtG rules state that conditions are not copied).
Also with CONSIDERED_FOR_ACTIVATION and CONSIDERED_FOR_CAST these can be triggered multiple times without actually activating the ability or casting the spell as such you could end up generating more tokens than you want.