magefree / magefree/mage

Devs: battlefield's countAll and other all-methods must be removed from cards

Open
#6,072 7 comments 0 reactions 0 assignees View on GitHub
bug refactoring
Dominant language
Java
Stars
2.4k
Forks
940
Avg merge
2d 12h
Merged PRs (30d)
160

Description

Found big problem for multiplayer games: many popular methods in `Battlefield.java` don't use range settings (e.g. it's will counts/finds too many permanent from non accessible players).

Affected methods (search by `field.values()`):
* [x] `countAll`;
* [ ] `contains` (2 of 3 implementation);
* [x] `getAllPermanents`;
* [x] `getAllPermanentIds`;
* [x] `getAllActivePermanents`;
* [x] `getPhasedIn` -- ok, not used in cards;
* [x] `getPhasedOut` -- ok, not used in cards.

Cards/abilities/effects must use only range related methods like `game.getBattlefield().count()`, but inner game engine must use full permanents list like `game.getBattlefield().countAll()`.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.