magefree / mage

Magic Another Game Engine
http://xmage.today
MIT License
1.81k stars 748 forks source link

Game error on Fire Covenant usage (NullPointerException) #11574

Open JayDi85 opened 7 months ago

JayDi85 commented 7 months ago

Server error with cast [[Fire Covenant]] on stack:

java.lang.NullPointerException
    at mage.player.human.HumanPlayer.playManaAbilities(HumanPlayer.java:1735)
        at mage.player.human.HumanPlayer.playManaHandling(HumanPlayer.java:1591)
        at mage.player.human.HumanPlayer.playMana(HumanPlayer.java:1564)
        at mage.abilities.costs.mana.ManaCostsImpl.pay(ManaCostsImpl.java:139)
        at mage.abilities.AbilityImpl.activate(AbilityImpl.java:389)
        at mage.abilities.ActivatedAbilityImpl.activate(ActivatedAbilityImpl.java:212)
        at mage.game.stack.Spell.activate(Spell.java:161)
        at mage.players.PlayerImpl.cast(PlayerImpl.java:1233)
        at mage.players.PlayerImpl.activateAbility(PlayerImpl.java:1551)
        at mage.player.human.HumanPlayer.activateAbility(HumanPlayer.java:2330)
        at mage.player.human.HumanPlayer.activateAbility(HumanPlayer.java:2351)
        at mage.player.human.HumanPlayer.priority(HumanPlayer.java:1381)
        at mage.game.GameImpl.playPriority(GameImpl.java:1638)
        at mage.game.turn.Step.priority(Step.java:67)
        at mage.game.turn.Phase.playStep(Phase.java:204)
        at mage.game.turn.Phase.play(Phase.java:90)
        at mage.game.turn.Turn.play(Turn.java:137)
        at mage.game.GameImpl.playTurn(GameImpl.java:1112)
        at mage.game.GameImpl.play(GameImpl.java:1019)
        at mage.game.GameImpl.start(GameImpl.java:995)
        at mage.server.game.GameWorker.call(GameWorker.java:34)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

It can be fixed by null protection code here, but it must be research first:

shot_231223_173322

github-actions[bot] commented 7 months ago

Fire Covenant - (Gatherer) (Scryfall) (EDHREC)

{1}{B}{R} Instant As an additional cost to cast this spell, pay X life. Fire Covenant deals X damage divided as you choose among any number of target creatures.