|
R-Type
Distributed multiplayer game engine in C++
|
Base interface for all ECS systems. More...
#include <ISystem.hpp>


Public Member Functions | |
| virtual | ~ISystem ()=default |
| Virtual destructor. | |
| virtual void | update (Registry ®istry, float deltaTime)=0 |
| Update the system logic for one frame. | |
| virtual ComponentMask | getComponentMask () const =0 |
| Get the bitmask of required components. | |
Base interface for all ECS systems.
All systems in the Entity-Component-System must inherit from this interface. Systems contain the game logic and operate on entities with specific component combinations.
Definition at line 37 of file ISystem.hpp.
|
virtualdefault |
Virtual destructor.
|
pure virtual |
Get the bitmask of required components.
Returns a bitmask indicating which components an entity must have to be processed by this system. The Registry uses this mask to filter entities.
Implemented in ecs::AISystem, ecs::AnimationSystem, ecs::BoundarySystem, ecs::BuffSystem, ecs::CollisionSystem, ecs::HealthSystem, ecs::MapSystem, ecs::MovementSystem, ecs::OrbitalSystem, ecs::SpawnSystem, ecs::WeaponSystem, and scripting::LuaSystemAdapter.
|
pure virtual |
Update the system logic for one frame.
Called every frame by the game loop. The system processes all entities that match its component requirements.
| registry | Reference to the ECS registry containing all entities |
| deltaTime | Time elapsed since last frame (in seconds) |
Implemented in scripting::LuaSystemAdapter, ecs::AISystem, ecs::AnimationSystem, ecs::BoundarySystem, ecs::BuffSystem, ecs::CollisionSystem, ecs::HealthSystem, ecs::MapSystem, ecs::MovementSystem, ecs::OrbitalSystem, ecs::SpawnSystem, and ecs::WeaponSystem.