Kelsidavis-WoWee/src
Paul 65839287b4 feat(game): introduce GameHandler domain interfaces and eliminate friend declarations
Add game_interfaces.hpp with five narrow domain contracts that GameHandler now
publishes to its domain handlers, replacing the previous friend-class anti-pattern.

Changes:
- include/game/game_interfaces.hpp (new): IConnectionState, ITargetingState,
  IEntityAccess, ISocialState, IPvpState — each interface exposes only the state
  its consumer legitimately needs
- include/game/game_handler.hpp: GameHandler inherits all five interfaces;
  include of game_interfaces.hpp added
- include/game/movement_handler.hpp: remove `friend class GameHandler`; add
  public named accessors for previously-private fields (monsterMovePacketsThisTickRef,
  timeSinceLastMoveHeartbeatRef, resetMovementClock, setFalling, setFallStartMs)
- include/game/spell_handler.hpp: remove `friend class GameHandler/InventoryHandler/
  CombatHandler/EntityController`; promote private packet handlers (handlePetSpells,
  handleListStabledPets, pet stable commands, DBC loaders) to public; add accessor
  methods for aura cache, known spells, and player aura slot mutation
- src/game/game_handler.cpp, game_handler_callbacks.cpp, game_handler_packets.cpp:
  replace direct private field access with the new accessor API
  (e.g. casting_ → isCasting(), monsterMovePacketsThisTick_ → ...ThisTickRef())
- src/game/inventory_handler.cpp, combat_handler.cpp, entity_controller.cpp:
  replace friend-class private access with public accessor calls

No behaviour change. All 13 test suites pass. Zero build warnings.
2026-04-05 20:25:02 +03:00
..
addons chore(lua): refactor addon Lua engine API + progress docs 2026-04-03 07:31:06 +03:00
audio chore(refactor): god-object decomposition and mega-file splits 2026-04-05 19:30:44 +03:00
auth fix: UB in mouse button polling, null deref in BigNum formatting 2026-03-30 15:37:38 -07:00
core chore(refactor): god-object decomposition and mega-file splits 2026-04-05 19:30:44 +03:00
game feat(game): introduce GameHandler domain interfaces and eliminate friend declarations 2026-04-05 20:25:02 +03:00
network chore(testing): add unit tests and update core render/network pipelines 2026-04-03 09:41:34 +03:00
pipeline feat(animation): 452 named constants, 30-phase character animation state machine 2026-04-04 23:02:53 +03:00
rendering chore(refactor): god-object decomposition and mega-file splits 2026-04-05 19:30:44 +03:00
ui chore(refactor): god-object decomposition and mega-file splits 2026-04-05 19:30:44 +03:00
main.cpp feat(rendering): GPU architecture + visual quality fixes 2026-04-04 13:43:16 +03:00