1 #ifndef CORE_SYSTEMS_CONTROLLABLE_HPP
2 #define CORE_SYSTEMS_CONTROLLABLE_HPP
4 #include <BLIB/ECS.hpp>
36 bool setEntityLocked(bl::ecs::Entity entity,
bool locked,
bool preserve =
true);
52 void setAllLocks(
bool locked,
bool preserve =
true);
61 bl::ecs::Registry& ecs;
Core classes and functionality for both the editor and game.
Simple systems for performing batch locks and unlocks on all controllable entities.
bool setEntityLocked(bl::ecs::Entity entity, bool locked, bool preserve=true)
Set the give entity to be locked or unlocked.
Controllable(Systems &owner)
Construct a new Controllable systems.
bool resetEntityLock(bl::ecs::Entity entity)
Resets the given entity's lock state to the last remembered value.
void resetAllLocks()
Resets all controllable entity locks to the last stored state.
void setAllLocks(bool locked, bool preserve=true)
Sets the lock state for all controllable entities.
Owns all primary systems and a reference to the engine.