Fix visual-replays not processing turn 0 commands.

Use FinishedOwnCommands, which is intented to plan commands for the N+2
turn, but can be used to run commands immediately by the replay manager,
and unlike FinishedUpdate is called before the first update.

Reported by: Freagarach
Fixes #5546

Differential Revision: https://code.wildfiregames.com/D3067
This was SVN commit r24280.
This commit is contained in:
wraitii 2020-11-28 09:14:29 +00:00
parent 7bf933d5f6
commit cf6aaf37a4
2 changed files with 4 additions and 4 deletions

View File

@ -57,10 +57,10 @@ void CReplayTurnManager::StoreFinalReplayTurn(u32 turn)
m_FinalTurn = turn;
}
void CReplayTurnManager::NotifyFinishedUpdate(u32 turn)
void CReplayTurnManager::NotifyFinishedOwnCommands(u32 turn)
{
if (turn == 1 && m_FinalTurn == 0)
g_GUI->SendEventToAll(EventNameReplayFinished);
CLocalTurnManager::NotifyFinishedOwnCommands(turn);
turn = turn - COMMAND_DELAY;
if (turn > m_FinalTurn)
return;

View File

@ -37,7 +37,7 @@ public:
void StoreFinalReplayTurn(u32 turn);
private:
void NotifyFinishedUpdate(u32 turn) override;
void NotifyFinishedOwnCommands(u32 turn) override;
void DoTurn(u32 turn);