This is a fix for the current mulligan issue. Drawn cards appear to not be removed from the deck and the returned cards are erroneously incremented.
The issue was the log event being used to trigger the start of a game, and reset the deck list, was happening after the mulligan process started. The cards were being correctly removed from the deck in the mulligan stage but then immediately after the deck was being reset.
I have changed the log event used to trigger the start of a new match to [Power] GameState.DebugPrintPower() - CREATE_GAME which happens before the mulligan stage starts. The _logAnalyzer setPlayerHero method now only logs the hero selection. The newly created _logAnalyzer setGameDidStart contains the game start logic that was in _logAnalyzer setPlayerHero.
This is a fix for the current mulligan issue. Drawn cards appear to not be removed from the deck and the returned cards are erroneously incremented.
The issue was the log event being used to trigger the start of a game, and reset the deck list, was happening after the mulligan process started. The cards were being correctly removed from the deck in the mulligan stage but then immediately after the deck was being reset.
I have changed the log event used to trigger the start of a new match to
[Power] GameState.DebugPrintPower() - CREATE_GAME
which happens before the mulligan stage starts. The_logAnalyzer setPlayerHero
method now only logs the hero selection. The newly created_logAnalyzer setGameDidStart
contains the game start logic that was in_logAnalyzer setPlayerHero
.