[Replay] Refactor: extract replay playback logic into single class (#7060)

* [Replay] Refactor: consolidate replay logic into single class

* fixes
This commit is contained in:
RickyRister 2026-08-02 19:22:33 -07:00 committed by GitHub
parent ca1c063687
commit b44dcf5951
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 320 additions and 237 deletions

View file

@ -31,7 +31,7 @@ AbstractClient *AbstractGame::getClientForPlayer(int playerId) const
}
}
void AbstractGame::loadReplay(GameReplay *replay)
void AbstractGame::loadReplay(const GameReplay *replay)
{
gameMetaInfo->setFromProto(replay->game_info());
gameMetaInfo->setSpectatorsOmniscient(true);

View file

@ -53,7 +53,7 @@ public:
AbstractClient *getClientForPlayer(int playerId) const;
void loadReplay(GameReplay *replay);
void loadReplay(const GameReplay *replay);
CardItem *getCard(int playerId, const QString &zoneName, int cardId) const;

View file

@ -2,7 +2,7 @@
#include "../interface/widgets/tabs/tab_game.h"
Replay::Replay(QObject *_parent, GameReplay *_replay, bool isLocalGame) : AbstractGame(_parent)
Replay::Replay(QObject *_parent, const GameReplay *_replay, bool isLocalGame) : AbstractGame(_parent)
{
gameState = new GameState(this, 0, -1, isLocalGame, {}, false, false, -1, false);
connect(gameMetaInfo, &GameMetaInfo::startedChanged, gameState, &GameState::onStartedChanged);

View file

@ -15,7 +15,7 @@ class Replay : public AbstractGame
Q_OBJECT
public:
explicit Replay(QObject *_parent, GameReplay *_replay, bool isLocalGame);
explicit Replay(QObject *_parent, const GameReplay *_replay, bool isLocalGame);
};
#endif // COCKATRICE_REPLAY_H