refactor: simpler processAction syntax (#12458)

* game.processAction() instead of game.getState().processAction(game)

* add simpler method name and docs

* find/replace to new method

* remove old method

* deprecate applyEffects
This commit is contained in:
xenohedron 2024-06-11 22:55:43 -04:00 committed by GitHub
parent e2b1d980b6
commit d61de05eb8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
163 changed files with 218 additions and 217 deletions

View file

@ -666,22 +666,6 @@ public class GameState implements Serializable, Copyable<GameState> {
this.gameOver = true;
}
/**
* Must be called between effects/steps in the ability's resolve
* <p>
* 608.2e
* Some spells and abilities have multiple steps or actions, denoted by separate sentences or clauses,
* that involve multiple players. In these cases, the choices for the first action are made in APNAP order,
* and then the first action is processed simultaneously. Then the choices for the second action are made in
* APNAP order, and then that action is processed simultaneously, and so on. See rule 101.4.
*/
public void processAction(Game game) {
game.getState().handleSimultaneousEvent(game);
game.resetShortLivingLKI();
game.applyEffects();
game.getState().getTriggers().checkStateTriggers(game);
}
void applyEffects(Game game) {
applyEffectsCounter++;
for (Player player : players.values()) {