Fixed tags cost and MageObjectReference usage (#11500)

* Fix costs tag clearing while permanent still on the battlefield
* Improved version of game.getPermanentOrLKIBattlefield with MageObjectReference
* Improve documentation
This commit is contained in:
ssk97 2023-12-01 07:24:39 -08:00 committed by GitHub
parent aea49d3c2b
commit f3e310cfd3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 32 additions and 7 deletions

View file

@ -1374,8 +1374,8 @@ public class GameState implements Serializable, Copyable<GameState> {
*/
public void cleanupPermanentCostsTags(Game game){
getPermanentCostsTags().entrySet().removeIf(entry ->
!(entry.getKey().zoneCounterIsCurrent(game))
);
!(entry.getKey().getZoneChangeCounter() == game.getState().getZoneChangeCounter(entry.getKey().getSourceId())-1)
); // The stored MOR is the stack-moment MOR so need to subtract one from the permanent's ZCC for the check
}
public void addWatcher(Watcher watcher) {