mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-09-27 08:24:39 -07:00
The second PlayerLogic constructor taking a custom PlayerEventHandler was UB (converting this to PlayerLogic* in the base initializer, and connecting a freshly-built handler against a not-yet-constructed object), and its abstract extension surface — virtual initializeZones, virtual getPlayerEventHandler, virtual processGameEvent, protected player member — has no subclass consumer in the stack. Revert to the single primary constructor. Also: - Drop the unused GameMetaInfo::setIsTournament setter. Tournament status is authoritative from Event_GameJoined's ServerInfo_Game; the redundant is_tournament field on Event_GameStateChanged is removed in [Protocol]. - Gate the parent-game routing on has_parent_game_id() instead of comparing the proto default, so a future drop of the default keeps working. |
||
|---|---|---|
| .. | ||
| board | ||
| player | ||
| zones | ||
| abstract_game.cpp | ||
| abstract_game.h | ||
| arrow_registry.cpp | ||
| arrow_registry.h | ||
| game.cpp | ||
| game.h | ||
| game_event_handler.cpp | ||
| game_event_handler.h | ||
| game_meta_info.cpp | ||
| game_meta_info.h | ||
| game_state.cpp | ||
| game_state.h | ||
| phase.cpp | ||
| phase.h | ||
| replay.cpp | ||
| replay.h | ||