10#include <unordered_set>
30#include "Systems/NetworkSyncSystem.hpp"
50 void update(
float dt)
override;
Interface for ECS systems.
Represents an entity in the ECS (Entity-Component-System) architecture.
Abstract base class for all ECS systems.
void spawnPowerup(const Vec2f &position, uint32_t roomId, int dropRoll)
Spawn a power-up at given position.
void update(float dt) override
Update system logic for one frame.
RoomSystem & _roomSystem
Reference to the RoomSystem.
void despawn(const ecs::Entity &entity, uint32_t roomId)
Handle collision between two entities.
NetworkSyncSystem & _networkSync
Reference to the NetworkSyncSystem.
void setInvincible(bool enabled)
Set invincibility mode for all players.
bool isInvincible() const
Check if invincibility mode is enabled.
bool _invincibleMode
Debug: players are invincible.
ecs::Registry & _registry
Reference to the ECS registry.
bool overlaps(const ecs::components::Transform &a, const ecs::components::BoundingBox &ab, const ecs::components::Transform &b, const ecs::components::BoundingBox &bb) const
Check if two entities overlap based on their transforms and bounding boxes.
System to handle network-related operations on the server side.
System to handle room-related operations on the server side.
File : GameManager.hpp License: MIT Author : Elias Josué HAJJAR LLAUQUEN elias-josue....