diff --git a/cockatrice/src/tablezone.cpp b/cockatrice/src/tablezone.cpp index 9fd06766..b20cd864 100644 --- a/cockatrice/src/tablezone.cpp +++ b/cockatrice/src/tablezone.cpp @@ -55,7 +55,14 @@ bool TableZone::isInverted() const void TableZone::paint(QPainter *painter, const QStyleOptionGraphicsItem * /*option*/, QWidget * /*widget*/) { - painter->fillRect(boundingRect(), themeManager->getTableBgBrush()); + QBrush brush = themeManager->getTableBgBrush(); + + // If the player is other than Player 1 + if (player->getId() > 0) { + // The player's id starts with 0 so in order to get the correct image we need to add 1 + brush = themeManager->getExtraTableBgBrush(QString::number(player->getId() + 1)); + } + painter->fillRect(boundingRect(), brush); if (active) { paintZoneOutline(painter); diff --git a/cockatrice/src/thememanager.cpp b/cockatrice/src/thememanager.cpp index 81c04870..ab718d59 100644 --- a/cockatrice/src/thememanager.cpp +++ b/cockatrice/src/thememanager.cpp @@ -107,3 +107,8 @@ void ThemeManager::themeChangedSlot() emit themeChanged(); } + +QBrush ThemeManager::getExtraTableBgBrush(QString extraNumber) +{ + return loadBrush(TABLEZONE_BG_NAME + extraNumber, QColor(70, 50, 100)); +} diff --git a/cockatrice/src/thememanager.h b/cockatrice/src/thememanager.h index 461ff6b9..7eb9457c 100644 --- a/cockatrice/src/thememanager.h +++ b/cockatrice/src/thememanager.h @@ -44,6 +44,7 @@ public: return playerBgBrush; } QStringMap &getAvailableThemes(); + QBrush getExtraTableBgBrush(QString extraNumber); protected slots: void themeChangedSlot(); signals: