|
R-Type
Distributed multiplayer game engine in C++
|
Component for collision detection and physics interactions. More...
#include <Collider.hpp>


Classes | |
| struct | Vector2 |
| 2D vector for size and offset. More... | |
Public Member Functions | |
| Collider (float sizeX, float sizeY, float offsetX, float offsetY, std::uint32_t layer, std::uint32_t mask, bool isTrigger) | |
| Constructor with full collision parameters. | |
| ~Collider () override=default | |
| Vector2 | getSize () const |
| Get collision box size. | |
| Vector2 | getOffset () const |
| Get position offset. | |
| std::uint32_t | getLayer () const |
| Get collision layer. | |
| std::uint32_t | getMask () const |
| Get collision mask. | |
| bool | isTrigger () const |
| Check if this is a trigger. | |
| void | setSize (float sizeX, float sizeY) |
| Set collision box size. | |
| void | setOffset (float offsetX, float offsetY) |
| Set position offset. | |
| void | setLayer (std::uint32_t layer) |
| Set collision layer. | |
| void | setMask (std::uint32_t mask) |
| Set collision mask. | |
| void | setTrigger (bool isTrigger) |
| Set trigger status. | |
| ComponentType | getType () const override |
| Get the component type ID. | |
Public Member Functions inherited from ecs::IComponent | |
| virtual | ~IComponent ()=default |
| Virtual destructor. | |
Private Attributes | |
| Vector2 | _size |
| Collision box dimensions (width, height) | |
| Vector2 | _offset |
| Offset from entity position. | |
| std::uint32_t | _layer |
| Collision layer identifier. | |
| std::uint32_t | _mask |
| Bitmask of interactable layers. | |
| bool | _isTrigger |
| True=trigger zone, false=solid collision. | |
Component for collision detection and physics interactions.
Defines a bounding box for collision detection with layer-based filtering. Supports both solid collisions and trigger zones.
Definition at line 21 of file Collider.hpp.
|
inline |
Constructor with full collision parameters.
| sizeX | Width of collision box |
| sizeY | Height of collision box |
| offsetX | X offset from entity position |
| offsetY | Y offset from entity position |
| layer | Collision layer (for filtering) |
| mask | Bitmask of layers this collider can interact with |
| isTrigger | True for trigger zones (no physics), false for solid |
Definition at line 42 of file Collider.hpp.
|
overridedefault |
|
inline |
Get collision layer.
Definition at line 67 of file Collider.hpp.
References _layer.
|
inline |
Get collision mask.
Definition at line 73 of file Collider.hpp.
References _mask.
|
inline |
Get position offset.
Definition at line 61 of file Collider.hpp.
References _offset.
|
inline |
Get collision box size.
Definition at line 55 of file Collider.hpp.
References _size.
|
inlineoverridevirtual |
Get the component type ID.
Implements ecs::IComponent.
Definition at line 123 of file Collider.hpp.
|
inline |
Check if this is a trigger.
Definition at line 79 of file Collider.hpp.
References _isTrigger.
Referenced by setTrigger().
|
inline |
Set collision layer.
| layer | New layer identifier |
Definition at line 105 of file Collider.hpp.
References _layer.
|
inline |
Set collision mask.
| mask | New interaction bitmask |
Definition at line 111 of file Collider.hpp.
References _mask.
|
inline |
Set position offset.
| offsetX | New X offset |
| offsetY | New Y offset |
Definition at line 96 of file Collider.hpp.
References _offset, ecs::Collider::Vector2::x, and ecs::Collider::Vector2::y.
|
inline |
Set collision box size.
| sizeX | New width |
| sizeY | New height |
Definition at line 86 of file Collider.hpp.
References _size, ecs::Collider::Vector2::x, and ecs::Collider::Vector2::y.
|
inline |
Set trigger status.
| isTrigger | True for trigger, false for solid |
Definition at line 117 of file Collider.hpp.
References _isTrigger, and isTrigger().

|
private |
True=trigger zone, false=solid collision.
Definition at line 130 of file Collider.hpp.
Referenced by isTrigger(), and setTrigger().
|
private |
Collision layer identifier.
Definition at line 128 of file Collider.hpp.
Referenced by getLayer(), and setLayer().
|
private |
Bitmask of interactable layers.
Definition at line 129 of file Collider.hpp.
|
private |
Offset from entity position.
Definition at line 127 of file Collider.hpp.
Referenced by getOffset(), and setOffset().
|
private |
Collision box dimensions (width, height)
Definition at line 126 of file Collider.hpp.