[Game/Zones] Simple move refactor to differentiate between logic and graphics for zones (#6903)

* [Game/Zones] Simple move refactor to differentiate between logic and graphics for zones

Took 21 minutes

* Clean up game/zones/logic folder.

Took 6 minutes

* Adjust tests.

Took 3 minutes

---------

Co-authored-by: Lukas Brübach <Bruebach.Lukas@bdosecurity.de>
This commit is contained in:
BruebachL 2026-05-18 06:36:18 +02:00 committed by GitHub
parent bb1a5b33a1
commit cba9ce2b2b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
47 changed files with 107 additions and 107 deletions

View file

@ -104,20 +104,20 @@ set(cockatrice_SOURCES
src/game/player/player_manager.cpp src/game/player/player_manager.cpp
src/game/player/player_target.cpp src/game/player/player_target.cpp
src/game/replay.cpp src/game/replay.cpp
src/game/zones/card_zone.cpp src/game/zones/card_zone_logic.cpp
src/game/zones/hand_zone.cpp src/game/zones/hand_zone_logic.cpp
src/game/zones/logic/card_zone_logic.cpp src/game/zones/pile_zone_logic.cpp
src/game/zones/logic/hand_zone_logic.cpp src/game/zones/stack_zone_logic.cpp
src/game/zones/logic/pile_zone_logic.cpp src/game/zones/table_zone_logic.cpp
src/game/zones/logic/stack_zone_logic.cpp src/game/zones/view_zone_logic.cpp
src/game/zones/logic/table_zone_logic.cpp src/game_graphics/zones/card_zone.cpp
src/game/zones/logic/view_zone_logic.cpp src/game_graphics/zones/hand_zone.cpp
src/game/zones/pile_zone.cpp src/game_graphics/zones/pile_zone.cpp
src/game/zones/select_zone.cpp src/game_graphics/zones/select_zone.cpp
src/game/zones/stack_zone.cpp src/game_graphics/zones/stack_zone.cpp
src/game/zones/table_zone.cpp src/game_graphics/zones/table_zone.cpp
src/game/zones/view_zone.cpp src/game_graphics/zones/view_zone.cpp
src/game/zones/view_zone_widget.cpp src/game_graphics/zones/view_zone_widget.cpp
src/game_graphics/board/abstract_graphics_item.cpp src/game_graphics/board/abstract_graphics_item.cpp
src/interface/card_picture_loader/card_picture_loader.cpp src/interface/card_picture_loader/card_picture_loader.cpp
src/interface/card_picture_loader/card_picture_loader_local.cpp src/interface/card_picture_loader/card_picture_loader_local.cpp

View file

@ -2,11 +2,11 @@
#include "arrow_item.h" #include "arrow_item.h"
#include "../../client/settings/cache_settings.h" #include "../../client/settings/cache_settings.h"
#include "../../game_graphics/zones/card_zone.h"
#include "../player/player.h" #include "../player/player.h"
#include "../player/player_actions.h" #include "../player/player_actions.h"
#include "../player/player_target.h" #include "../player/player_target.h"
#include "../z_values.h" #include "../z_values.h"
#include "../zones/card_zone.h"
#include "card_item.h" #include "card_item.h"
#include <QDebug> #include <QDebug>

View file

@ -1,9 +1,9 @@
#include "card_drag_item.h" #include "card_drag_item.h"
#include "../../game_graphics/zones/card_zone.h"
#include "../../game_graphics/zones/table_zone.h"
#include "../../game_graphics/zones/view_zone.h"
#include "../game_scene.h" #include "../game_scene.h"
#include "../zones/card_zone.h"
#include "../zones/table_zone.h"
#include "../zones/view_zone.h"
#include "card_item.h" #include "card_item.h"
#include <QCursor> #include <QCursor>

View file

@ -1,14 +1,14 @@
#include "card_item.h" #include "card_item.h"
#include "../../client/settings/cache_settings.h" #include "../../client/settings/cache_settings.h"
#include "../../game_graphics/zones/table_zone.h"
#include "../../game_graphics/zones/view_zone.h"
#include "../../interface/widgets/tabs/tab_game.h" #include "../../interface/widgets/tabs/tab_game.h"
#include "../game_scene.h" #include "../game_scene.h"
#include "../phase.h" #include "../phase.h"
#include "../player/player.h" #include "../player/player.h"
#include "../player/player_actions.h" #include "../player/player_actions.h"
#include "../zones/logic/view_zone_logic.h" #include "../zones/view_zone_logic.h"
#include "../zones/table_zone.h"
#include "../zones/view_zone.h"
#include "arrow_item.h" #include "arrow_item.h"
#include "card_drag_item.h" #include "card_drag_item.h"

View file

@ -7,7 +7,7 @@
#ifndef CARDITEM_H #ifndef CARDITEM_H
#define CARDITEM_H #define CARDITEM_H
#include "../zones/logic/card_zone_logic.h" #include "../zones/card_zone_logic.h"
#include "abstract_card_item.h" #include "abstract_card_item.h"
#include <libcockatrice/network/server/remote/game/server_card.h> #include <libcockatrice/network/server/remote/game/server_card.h>

View file

@ -1,13 +1,13 @@
#include "game_scene.h" #include "game_scene.h"
#include "../client/settings/cache_settings.h" #include "../client/settings/cache_settings.h"
#include "../game_graphics/zones/select_zone.h"
#include "../game_graphics/zones/view_zone.h"
#include "../game_graphics/zones/view_zone_widget.h"
#include "board/card_item.h" #include "board/card_item.h"
#include "phases_toolbar.h" #include "phases_toolbar.h"
#include "player/player.h" #include "player/player.h"
#include "player/player_graphics_item.h" #include "player/player_graphics_item.h"
#include "zones/select_zone.h"
#include "zones/view_zone.h"
#include "zones/view_zone_widget.h"
#include <QBasicTimer> #include <QBasicTimer>
#include <QDebug> #include <QDebug>

View file

@ -1,7 +1,7 @@
#ifndef GAMESCENE_H #ifndef GAMESCENE_H
#define GAMESCENE_H #define GAMESCENE_H
#include "zones/logic/card_zone_logic.h" #include "zones/card_zone_logic.h"
#include <QGraphicsScene> #include <QGraphicsScene>
#include <QList> #include <QList>

View file

@ -1,6 +1,6 @@
#include "hand_counter.h" #include "hand_counter.h"
#include "zones/card_zone.h" #include "../game_graphics/zones/card_zone.h"
#include <QGraphicsSceneMouseEvent> #include <QGraphicsSceneMouseEvent>
#include <QPainter> #include <QPainter>

View file

@ -8,7 +8,7 @@
#define MESSAGELOGWIDGET_H #define MESSAGELOGWIDGET_H
#include "../../interface/widgets/server/chat_view/chat_view.h" #include "../../interface/widgets/server/chat_view/chat_view.h"
#include "../zones/logic/card_zone_logic.h" #include "../zones/card_zone_logic.h"
class AbstractGame; class AbstractGame;
class CardItem; class CardItem;

View file

@ -3,7 +3,7 @@
#include "../../../client/settings/card_counter_settings.h" #include "../../../client/settings/card_counter_settings.h"
#include "../../../interface/widgets/tabs/tab_game.h" #include "../../../interface/widgets/tabs/tab_game.h"
#include "../../board/card_item.h" #include "../../board/card_item.h"
#include "../../zones/logic/view_zone_logic.h" #include "../../zones/view_zone_logic.h"
#include "../card_menu_action_type.h" #include "../card_menu_action_type.h"
#include "../player.h" #include "../player.h"
#include "../player_actions.h" #include "../player_actions.h"

View file

@ -2,8 +2,8 @@
#include "../../../client/settings/cache_settings.h" #include "../../../client/settings/cache_settings.h"
#include "../../../client/settings/shortcuts_settings.h" #include "../../../client/settings/shortcuts_settings.h"
#include "../../../game_graphics/zones/hand_zone.h"
#include "../../abstract_game.h" #include "../../abstract_game.h"
#include "../../zones/hand_zone.h"
#include "../player.h" #include "../player.h"
#include "../player_actions.h" #include "../player_actions.h"

View file

@ -1,10 +1,10 @@
#include "player_menu.h" #include "player_menu.h"
#include "../../../game_graphics/zones/hand_zone.h"
#include "../../../game_graphics/zones/pile_zone.h"
#include "../../../game_graphics/zones/table_zone.h"
#include "../../../interface/widgets/tabs/tab_game.h" #include "../../../interface/widgets/tabs/tab_game.h"
#include "../../board/card_item.h" #include "../../board/card_item.h"
#include "../../zones/hand_zone.h"
#include "../../zones/pile_zone.h"
#include "../../zones/table_zone.h"
#include "card_menu.h" #include "card_menu.h"
#include "hand_menu.h" #include "hand_menu.h"

View file

@ -1,5 +1,9 @@
#include "player.h" #include "player.h"
#include "../../game_graphics/zones/hand_zone.h"
#include "../../game_graphics/zones/pile_zone.h"
#include "../../game_graphics/zones/stack_zone.h"
#include "../../game_graphics/zones/table_zone.h"
#include "../../interface/theme_manager.h" #include "../../interface/theme_manager.h"
#include "../../interface/widgets/tabs/tab_game.h" #include "../../interface/widgets/tabs/tab_game.h"
#include "../board/arrow_item.h" #include "../board/arrow_item.h"
@ -7,10 +11,6 @@
#include "../board/card_list.h" #include "../board/card_list.h"
#include "../board/counter_general.h" #include "../board/counter_general.h"
#include "../game_scene.h" #include "../game_scene.h"
#include "../zones/hand_zone.h"
#include "../zones/pile_zone.h"
#include "../zones/stack_zone.h"
#include "../zones/table_zone.h"
#include "player_actions.h" #include "player_actions.h"
#include "player_target.h" #include "player_target.h"

View file

@ -10,10 +10,10 @@
#include "../../game_graphics/board/abstract_graphics_item.h" #include "../../game_graphics/board/abstract_graphics_item.h"
#include "../../interface/widgets/menus/tearoff_menu.h" #include "../../interface/widgets/menus/tearoff_menu.h"
#include "../interface/deck_loader/loaded_deck.h" #include "../interface/deck_loader/loaded_deck.h"
#include "../zones/logic/hand_zone_logic.h" #include "../zones/hand_zone_logic.h"
#include "../zones/logic/pile_zone_logic.h" #include "../zones/pile_zone_logic.h"
#include "../zones/logic/stack_zone_logic.h" #include "../zones/stack_zone_logic.h"
#include "../zones/logic/table_zone_logic.h" #include "../zones/table_zone_logic.h"
#include "menu/player_menu.h" #include "menu/player_menu.h"
#include "player_area.h" #include "player_area.h"
#include "player_event_handler.h" #include "player_event_handler.h"

View file

@ -1,14 +1,14 @@
#include "player_actions.h" #include "player_actions.h"
#include "../../game_graphics/zones/hand_zone.h"
#include "../../game_graphics/zones/table_zone.h"
#include "../../interface/widgets/tabs/tab_game.h" #include "../../interface/widgets/tabs/tab_game.h"
#include "../../interface/widgets/utility/get_text_with_max.h" #include "../../interface/widgets/utility/get_text_with_max.h"
#include "../board/card_item.h" #include "../board/card_item.h"
#include "../client/settings/card_counter_settings.h" #include "../client/settings/card_counter_settings.h"
#include "../dialogs/dlg_move_top_cards_until.h" #include "../dialogs/dlg_move_top_cards_until.h"
#include "../dialogs/dlg_roll_dice.h" #include "../dialogs/dlg_roll_dice.h"
#include "../zones/hand_zone.h" #include "../zones/view_zone_logic.h"
#include "../zones/logic/view_zone_logic.h"
#include "../zones/table_zone.h"
#include "card_menu_action_type.h" #include "card_menu_action_type.h"
#include <libcockatrice/card/database/card_database_manager.h> #include <libcockatrice/card/database/card_database_manager.h>

View file

@ -1,10 +1,10 @@
#include "player_event_handler.h" #include "player_event_handler.h"
#include "../../game_graphics/zones/view_zone.h"
#include "../../interface/widgets/tabs/tab_game.h" #include "../../interface/widgets/tabs/tab_game.h"
#include "../board/arrow_item.h" #include "../board/arrow_item.h"
#include "../board/card_item.h" #include "../board/card_item.h"
#include "../board/card_list.h" #include "../board/card_list.h"
#include "../zones/view_zone.h"
#include "player.h" #include "player.h"
#include "player_actions.h" #include "player_actions.h"

View file

@ -1,12 +1,12 @@
#include "player_graphics_item.h" #include "player_graphics_item.h"
#include "../../game_graphics/zones/hand_zone.h"
#include "../../game_graphics/zones/pile_zone.h"
#include "../../game_graphics/zones/stack_zone.h"
#include "../../game_graphics/zones/table_zone.h"
#include "../../interface/widgets/tabs/tab_game.h" #include "../../interface/widgets/tabs/tab_game.h"
#include "../board/abstract_card_item.h" #include "../board/abstract_card_item.h"
#include "../hand_counter.h" #include "../hand_counter.h"
#include "../zones/hand_zone.h"
#include "../zones/pile_zone.h"
#include "../zones/stack_zone.h"
#include "../zones/table_zone.h"
PlayerGraphicsItem::PlayerGraphicsItem(Player *_player) : player(_player) PlayerGraphicsItem::PlayerGraphicsItem(Player *_player) : player(_player)
{ {

View file

@ -1,9 +1,9 @@
#include "card_zone_logic.h" #include "card_zone_logic.h"
#include "../../board/card_item.h" #include "../../game_graphics/zones/view_zone.h"
#include "../../player/player.h" #include "../board/card_item.h"
#include "../../player/player_actions.h" #include "../player/player.h"
#include "../view_zone.h" #include "../player/player_actions.h"
#include "view_zone_logic.h" #include "view_zone_logic.h"
#include <QAction> #include <QAction>

View file

@ -7,8 +7,8 @@
#ifndef COCKATRICE_CARD_ZONE_LOGIC_H #ifndef COCKATRICE_CARD_ZONE_LOGIC_H
#define COCKATRICE_CARD_ZONE_LOGIC_H #define COCKATRICE_CARD_ZONE_LOGIC_H
#include "../../../client/translation.h" #include "../../client/translation.h"
#include "../../board/card_list.h" #include "../board/card_list.h"
#include <QLoggingCategory> #include <QLoggingCategory>
#include <QObject> #include <QObject>

View file

@ -1,6 +1,6 @@
#include "hand_zone_logic.h" #include "hand_zone_logic.h"
#include "../../board/card_item.h" #include "../board/card_item.h"
#include "card_zone_algorithms.h" #include "card_zone_algorithms.h"
HandZoneLogic::HandZoneLogic(Player *_player, HandZoneLogic::HandZoneLogic(Player *_player,

View file

@ -1,6 +1,6 @@
#include "pile_zone_logic.h" #include "pile_zone_logic.h"
#include "../../board/card_item.h" #include "../board/card_item.h"
PileZoneLogic::PileZoneLogic(Player *_player, PileZoneLogic::PileZoneLogic(Player *_player,
const QString &_name, const QString &_name,

View file

@ -1,6 +1,6 @@
#include "stack_zone_logic.h" #include "stack_zone_logic.h"
#include "../../board/card_item.h" #include "../board/card_item.h"
#include "card_zone_algorithms.h" #include "card_zone_algorithms.h"
StackZoneLogic::StackZoneLogic(Player *_player, StackZoneLogic::StackZoneLogic(Player *_player,

View file

@ -1,6 +1,6 @@
#include "table_zone_logic.h" #include "table_zone_logic.h"
#include "../../board/card_item.h" #include "../board/card_item.h"
TableZoneLogic::TableZoneLogic(Player *_player, TableZoneLogic::TableZoneLogic(Player *_player,
const QString &_name, const QString &_name,

View file

@ -1,7 +1,7 @@
#include "view_zone_logic.h" #include "view_zone_logic.h"
#include "../../../client/settings/cache_settings.h" #include "../../client/settings/cache_settings.h"
#include "../../board/card_item.h" #include "../board/card_item.h"
/** /**
* @param _player the player that the cards are revealed to. * @param _player the player that the cards are revealed to.

View file

@ -1,6 +1,6 @@
#include "card_zone.h" #include "card_zone.h"
#include "../board/card_item.h" #include "../../game/board/card_item.h"
#include "view_zone.h" #include "view_zone.h"
#include <QGraphicsSceneMouseEvent> #include <QGraphicsSceneMouseEvent>

View file

@ -7,9 +7,9 @@
#ifndef CARDZONE_H #ifndef CARDZONE_H
#define CARDZONE_H #define CARDZONE_H
#include "../../game_graphics/board/abstract_graphics_item.h" #include "../../game/zones/card_zone_logic.h"
#include "../../game_graphics/board/graphics_item_type.h" #include "../board/abstract_graphics_item.h"
#include "logic/card_zone_logic.h" #include "../board/graphics_item_type.h"
#include <QLoggingCategory> #include <QLoggingCategory>
#include <QString> #include <QString>

View file

@ -1,11 +1,11 @@
#include "hand_zone.h" #include "hand_zone.h"
#include "../../client/settings/cache_settings.h" #include "../../client/settings/cache_settings.h"
#include "../../game/board/card_drag_item.h"
#include "../../game/board/card_item.h"
#include "../../game/player/player.h"
#include "../../game/player/player_actions.h"
#include "../../interface/theme_manager.h" #include "../../interface/theme_manager.h"
#include "../board/card_drag_item.h"
#include "../board/card_item.h"
#include "../player/player.h"
#include "../player/player_actions.h"
#include <QPainter> #include <QPainter>
#include <libcockatrice/protocol/pb/command_move_card.pb.h> #include <libcockatrice/protocol/pb/command_move_card.pb.h>

View file

@ -7,7 +7,7 @@
#ifndef HANDZONE_H #ifndef HANDZONE_H
#define HANDZONE_H #define HANDZONE_H
#include "logic/hand_zone_logic.h" #include "../../game/zones/hand_zone_logic.h"
#include "select_zone.h" #include "select_zone.h"
class HandZone : public SelectZone class HandZone : public SelectZone

View file

@ -1,10 +1,10 @@
#include "pile_zone.h" #include "pile_zone.h"
#include "../board/card_drag_item.h" #include "../../game/board/card_drag_item.h"
#include "../board/card_item.h" #include "../../game/board/card_item.h"
#include "../player/player.h" #include "../../game/player/player.h"
#include "../player/player_actions.h" #include "../../game/player/player_actions.h"
#include "logic/pile_zone_logic.h" #include "../../game/zones/pile_zone_logic.h"
#include "view_zone.h" #include "view_zone.h"
#include <QApplication> #include <QApplication>

View file

@ -7,8 +7,8 @@
#ifndef PILEZONE_H #ifndef PILEZONE_H
#define PILEZONE_H #define PILEZONE_H
#include "../../game/zones/pile_zone_logic.h"
#include "card_zone.h" #include "card_zone.h"
#include "logic/pile_zone_logic.h"
/** /**
* A CardZone where the cards are in a single pile instead of being laid out. * A CardZone where the cards are in a single pile instead of being laid out.

View file

@ -1,8 +1,8 @@
#include "select_zone.h" #include "select_zone.h"
#include "../../client/settings/cache_settings.h" #include "../../client/settings/cache_settings.h"
#include "../board/card_item.h" #include "../../game/board/card_item.h"
#include "../game_scene.h" #include "../../game/game_scene.h"
#include <QGraphicsRectItem> #include <QGraphicsRectItem>
#include <QGraphicsSceneMouseEvent> #include <QGraphicsSceneMouseEvent>

View file

@ -1,12 +1,12 @@
#include "stack_zone.h" #include "stack_zone.h"
#include "../../game/board/card_drag_item.h"
#include "../../game/board/card_item.h"
#include "../../game/card_dimensions.h"
#include "../../game/player/player.h"
#include "../../game/player/player_actions.h"
#include "../../game/zones/stack_zone_logic.h"
#include "../../interface/theme_manager.h" #include "../../interface/theme_manager.h"
#include "../board/card_drag_item.h"
#include "../board/card_item.h"
#include "../card_dimensions.h"
#include "../player/player.h"
#include "../player/player_actions.h"
#include "logic/stack_zone_logic.h"
#include <QPainter> #include <QPainter>
#include <libcockatrice/protocol/pb/command_move_card.pb.h> #include <libcockatrice/protocol/pb/command_move_card.pb.h>

View file

@ -7,7 +7,7 @@
#ifndef STACKZONE_H #ifndef STACKZONE_H
#define STACKZONE_H #define STACKZONE_H
#include "logic/stack_zone_logic.h" #include "../../game/zones/stack_zone_logic.h"
#include "select_zone.h" #include "select_zone.h"
class StackZone : public SelectZone class StackZone : public SelectZone

View file

@ -1,14 +1,14 @@
#include "table_zone.h" #include "table_zone.h"
#include "../../client/settings/cache_settings.h" #include "../../client/settings/cache_settings.h"
#include "../../game/board/arrow_item.h"
#include "../../game/board/card_drag_item.h"
#include "../../game/board/card_item.h"
#include "../../game/player/player.h"
#include "../../game/player/player_actions.h"
#include "../../game/z_values.h"
#include "../../game/zones/table_zone_logic.h"
#include "../../interface/theme_manager.h" #include "../../interface/theme_manager.h"
#include "../board/arrow_item.h"
#include "../board/card_drag_item.h"
#include "../board/card_item.h"
#include "../player/player.h"
#include "../player/player_actions.h"
#include "../z_values.h"
#include "logic/table_zone_logic.h"
#include <QGraphicsScene> #include <QGraphicsScene>
#include <QPainter> #include <QPainter>

View file

@ -7,8 +7,8 @@
#ifndef TABLEZONE_H #ifndef TABLEZONE_H
#define TABLEZONE_H #define TABLEZONE_H
#include "../board/abstract_card_item.h" #include "../../game/board/abstract_card_item.h"
#include "logic/table_zone_logic.h" #include "../../game/zones/table_zone_logic.h"
#include "select_zone.h" #include "select_zone.h"
/* /*

View file

@ -1,10 +1,10 @@
#include "view_zone.h" #include "view_zone.h"
#include "../board/card_drag_item.h" #include "../../game/board/card_drag_item.h"
#include "../board/card_item.h" #include "../../game/board/card_item.h"
#include "../player/player.h" #include "../../game/player/player.h"
#include "../player/player_actions.h" #include "../../game/player/player_actions.h"
#include "logic/view_zone_logic.h" #include "../../game/zones/view_zone_logic.h"
#include <QBrush> #include <QBrush>
#include <QDebug> #include <QDebug>

View file

@ -7,7 +7,7 @@
#ifndef ZONEVIEWERZONE_H #ifndef ZONEVIEWERZONE_H
#define ZONEVIEWERZONE_H #define ZONEVIEWERZONE_H
#include "logic/view_zone_logic.h" #include "../../game/zones/view_zone_logic.h"
#include "select_zone.h" #include "select_zone.h"
#include <QGraphicsLayoutItem> #include <QGraphicsLayoutItem>

View file

@ -2,12 +2,12 @@
#include "../../client/settings/cache_settings.h" #include "../../client/settings/cache_settings.h"
#include "../../filters/syntax_help.h" #include "../../filters/syntax_help.h"
#include "../../game/board/card_item.h"
#include "../../game/game_scene.h"
#include "../../game/player/player.h"
#include "../../game/player/player_actions.h"
#include "../../game/z_values.h"
#include "../../interface/pixel_map_generator.h" #include "../../interface/pixel_map_generator.h"
#include "../board/card_item.h"
#include "../game_scene.h"
#include "../player/player.h"
#include "../player/player_actions.h"
#include "../z_values.h"
#include "view_zone.h" #include "view_zone.h"
#include <QCheckBox> #include <QCheckBox>

View file

@ -6,7 +6,7 @@
#ifndef ZONEVIEWWIDGET_H #ifndef ZONEVIEWWIDGET_H
#define ZONEVIEWWIDGET_H #define ZONEVIEWWIDGET_H
#include "logic/card_zone_logic.h" #include "../../game/zones/card_zone_logic.h"
#include <QCheckBox> #include <QCheckBox>
#include <QComboBox> #include <QComboBox>

View file

@ -1,6 +1,6 @@
add_executable(card_zone_algorithms_test card_zone_algorithms_test.cpp) add_executable(card_zone_algorithms_test card_zone_algorithms_test.cpp)
target_include_directories(card_zone_algorithms_test PRIVATE ${CMAKE_SOURCE_DIR}/cockatrice/src/game/zones/logic) target_include_directories(card_zone_algorithms_test PRIVATE ${CMAKE_SOURCE_DIR}/cockatrice/src/game/zones)
target_link_libraries( target_link_libraries(
card_zone_algorithms_test card_zone_algorithms_test