|
| virtual | ~IGameLogic ()=default |
| |
| virtual bool | initialize ()=0 |
| | Initialize game logic and ECS systems.
|
| |
| virtual void | update (float deltaTime, uint32_t currentTick)=0 |
| | Update game state for one frame.
|
| |
| virtual uint32_t | spawnPlayer (uint32_t playerId, const std::string &playerName)=0 |
| | Spawn a player entity.
|
| |
| virtual void | despawnPlayer (uint32_t playerId)=0 |
| | Remove a player from the game.
|
| |
| virtual void | processPlayerInput (uint32_t playerId, int inputX, int inputY, bool isShooting, uint32_t sequenceId)=0 |
| | Process player input event.
|
| |
| virtual uint32_t | getLastProcessedInput (uint32_t playerId) const =0 |
| | Get the last processed input sequence ID for a player.
|
| |
| virtual ecs::Registry & | getRegistry ()=0 |
| | Get reference to the ECS registry.
|
| |
| virtual bool | isGameActive () const =0 |
| | Check if the game is active.
|
| |
| virtual void | resetGame ()=0 |
| | Reset game state (new game)
|
| |
| virtual const class GameRules & | getGameRules () const =0 |
| | Get the game rules.
|
| |
Interface for server-side game logic orchestration.
Manages the deterministic game loop, entity lifecycle, and game state. Coordinates all ECS systems in a fixed update order.
Update order:
- Process player input
- Movement system (update positions)
- Collision detection
- Health/damage system
- Spawning system
- AI system
- Projectile system
- Boundary system (remove off-screen entities)
- Serialization (state snapshots)
Definition at line 42 of file IGameLogic.hpp.