You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Ability::getSourceObjectZoneChangeCounter doesn't work inside checkTrigger cause trigger's zcc sync later in the code -- after checkTrigger call. It must be replaced by CardUtil.getActualSourceObjectZoneChangeCounter(game, source). Fix example: a970dc4
TODO:
main: check ~190 usages of getSourceObjectZoneChangeCounter and replace it in triggers (one short effects are fine);
optional: check same usages in continues/replacement effects -- maybe it's also affected and must be replaced;
Object zcc and ability zcc are little different things:
Objects use dynamic zcc. Objects moves between zones and increments own zcc (it allow to simulate new object due mtg rules, but keep all settings and related data for work);
Abilities use static zcc. Abilities do not “move” with object and have own lifecycle:
activated abilities “creates” on real usage (on activate);
static abilities “creates” on game start (or new continues effect creates);
So ability zcc allow you to find out a moment of real ability’s usage (activating). And it actual for activated abilities only (use case example: trigger on etb, but source object left battlefield before resolve).
If you use ability zcc from continues effect like your use case - it can contains wrong data (continues effect exists all time until discarded).
The text was updated successfully, but these errors were encountered:
From #12180 (comment):
Ability::getSourceObjectZoneChangeCounter
doesn't work insidecheckTrigger
cause trigger's zcc sync later in the code -- aftercheckTrigger
call. It must be replaced byCardUtil.getActualSourceObjectZoneChangeCounter(game, source)
. Fix example: a970dc4TODO:
getSourceObjectZoneChangeCounter
and replace it in triggers (one short effects are fine);Useful info, copied from #12180 (comment):
The text was updated successfully, but these errors were encountered: