10#include "../../Components/OrbitalModule.hpp"
11#include "../../Components/Transform.hpp"
12#include "../ISystem.hpp"
Base interface for all ECS systems.
Component for entities that orbit around a parent entity (like drones in Isaac).
System managing orbital module movement around parent entities.
void update(Registry ®istry, float deltaTime) override
Updates all orbital module positions.
OrbitalSystem()=default
Default constructor.
~OrbitalSystem() override=default
Default destructor.
void updateOrbitalPosition(Registry ®istry, Address moduleEntity, OrbitalModule &orbital, Transform &transform, float deltaTime)
Updates a single orbital module's position.
ComponentMask getComponentMask() const override
Gets the component mask for this system.
Manages entities, their signatures and component type registrations.
Maximum number of distinct component types supported by the Registry.
std::uint32_t Address
Type used to represent an entity address/ID.
std::uint64_t ComponentMask
Type alias for component bitmask.