fix(game): preserve currentPlayer index when adding a new player

This commit is contained in:
Kieran Kihn
2025-11-17 12:34:32 +08:00
parent a025461be8
commit d1fbe5c07a

View File

@@ -195,7 +195,9 @@ namespace UNO::GAME {
template<PlayerStateTypeConcept PlayerStateType>
void GameState<PlayerStateType>::addPlayer(PlayerStateType playerState)
{
this->currentPlayer_ = this->players_.push_back(std::move(playerState), this->currentPlayer_);
int currentPlayerIndex = this->currentPlayer_ - this->players_.begin();
this->players_.push_back(std::move(playerState));
this->currentPlayer_ = this->players_.begin() + currentPlayerIndex;
}
template<PlayerStateTypeConcept PlayerStateType>