Arakne/Araknemu

[fight] Do not trigger map objects on dead fighter

Closed this issue · 0 comments

Dead fighters doesn't have a cell, so calling "isOnArea" will fail.
Also check start turn effects (i.e. glyph)

java.lang.IllegalStateException: The fighter is not on a cell
	at fr.quatrevieux.araknemu.game.fight.fighter.AbstractFighter.cell(AbstractFighter.java:69) ~[classes/:?]
	at fr.quatrevieux.araknemu.game.fight.map.BattlefieldObject.isOnArea(BattlefieldObject.java:134) ~[classes/:?]
	at fr.quatrevieux.araknemu.game.fight.map.BattlefieldObjects.onEndTurn(BattlefieldObjects.java:151) ~[classes/:?]
	at fr.quatrevieux.araknemu.game.fight.turn.FightTurn.endTurnActions(FightTurn.java:187) ~[classes/:?]
	at fr.quatrevieux.araknemu.game.fight.turn.FightTurn.lambda$stop$1(FightTurn.java:132) ~[classes/:?]
	at java.util.ArrayList.forEach(ArrayList.java:1259) ~[?:1.8.0_372]
	at fr.quatrevieux.araknemu.game.fight.turn.action.ActionHandler.terminate(ActionHandler.java:106) ~[classes/:?]
	at fr.quatrevieux.araknemu.game.fight.Fight$Task.run(Fight.java:413) [classes/:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_372]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_372]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_372]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:1.8.0_372]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_372]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_372]
	at java.lang.Thread.run(Thread.java:750) [?:1.8.0_372]