Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Hotfix per evitare che il cast delle Instant/Sorcery causi il crash/soft-lock del game. ## In depth 🔍 ### Sorcery - NullPointerException La rimozione della riga seguente e le successive modifiche impedisco alla Sorcery di causare NullPointerException nelle succesive regole. ``` diff $p: Player(id == $id) $listaSottoTipi: LinkedList() from $spell.getSubtype() - $sottoTipo : String() from $listaSottoTipi then for (String sottoTipo : $listaSottoTipi) { if(sottoTipo == "Aura"){ System.out.println("AURA"); $scs.add("601.2cfase1"); $scs.add("601.2cfase2"); ``` La Sorcery a nostra disposizione, _Addle_, non aveva nessun sottotipo. Questo impediva alla regola `601.2c` di triggerare. https://github.com/Typing-Monkeys/TeferiTheGathering/blob/91b7f695201c958fd3e1357d3a3a0ed0551f0497/mtgengine/src/main/resources/rules/Rules.drl#L5501-L5520 ### Instant/Sorcery - SoftLock La regola che finalizzava il cast delle Spell Instant, aveva un problema nel `when`: la condizione `resolvingSpell.isPermanent == null` era malposta in quanto bisogna controllare che sia `false` ! ```diff agenda-group "general" no-loop true when - $g: Game(stage == Game.GAME_STAGE, resolvingSpell != null, resolvingSpell.isPermanent == null, $id: resolvingSpell.idController) + $g: Game(stage == Game.GAME_STAGE, resolvingSpell != null, resolvingSpell.isPermanent == false, $id: resolvingSpell.idController) $p: Player(id == $id) ``` https://github.com/Typing-Monkeys/TeferiTheGathering/blob/91b7f695201c958fd3e1357d3a3a0ed0551f0497/mtgengine/src/main/resources/rules/Rules.drl#L7133-L7154
- Loading branch information