Air-Trap 1.0.0
A multiplayer R-Type clone game engine built with C++23 and ECS architecture
Loading...
Searching...
No Matches
rtp::ecs::components Namespace Reference

File : Ammo.hpp License: MIT Author : Elias Josué HAJJAR LLAUQUEN elias.nosp@m.-jos.nosp@m.ue.ha.nosp@m.jjar.nosp@m.-llau.nosp@m.quen.nosp@m.@epit.nosp@m.ech..nosp@m.eu Date : 11/12/2025. More...

Namespaces

namespace  audio
 
namespace  server
 File : InputComponent.hpp License: MIT Author : Elias Josué HAJJAR LLAUQUEN elias.nosp@m.-jos.nosp@m.ue.ha.nosp@m.jjar.nosp@m.-llau.nosp@m.quen.nosp@m.@epit.nosp@m.ech..nosp@m.eu Date : 11/12/2025.
 
namespace  ui
 File : SpritePreview.hpp License: MIT Author : GitHub Copilot Date : 14/01/2026.
 

Classes

struct  Ammo
 Ammo tracking for weapons. More...
 
struct  Animation
 Component representing an animation. More...
 
struct  Boomerang
 Marks a projectile as a boomerang and stores state for return logic. More...
 
struct  BoundingBox
 
struct  ChargedWeapon
 
struct  Controllable
 Component indicating that an entity can be controlled by a player. More...
 
struct  Damage
 Component representing damage value. More...
 
struct  DoubleFire
 Component for double fire powerup. More...
 
struct  EntityType
 
struct  Health
 Component representing an entity's health. More...
 
struct  Hitbox
 Component representing a rectangular hitbox. More...
 
struct  Homing
 Marks an entity as homing and provides tuning parameters. More...
 
class  IABehaviorComponent
 
struct  MouvementPattern
 Component representing a movement pattern. More...
 
struct  MovementSpeed
 Component representing movement speed with temporary boosts. More...
 
struct  NetworkId
 Component representing a network identifier for an entity. More...
 
struct  ParallaxLayer
 Tag component indicating that an entity should loop its position when it exits the screen (infinite scrolling). More...
 
struct  Powerup
 Component representing a powerup pickup. More...
 
struct  RoomId
 Component representing a network identifier for an entity. More...
 
struct  Score
 Component representing an entity's score. More...
 
struct  Shield
 Component representing a shield that absorbs damage. More...
 
struct  ShieldVisual
 Component for visual shield effect displayed around the player. More...
 
struct  SimpleWeapon
 Component representing a weapon configuration. More...
 
struct  Sprite
 Component representing a sprite. More...
 
struct  Transform
 Component representing position, rotation, and scale of an entity. More...
 
struct  Velocity
 Component representing a 2D velocity. More...
 

Enumerations

enum class  CollisionType {
  None , Solid , Trigger , Damage ,
  Heal
}
 Enum representing different types of collision behaviors. More...
 
enum class  CollisionShape { Rectangle , Circle }
 Enum representing different shapes of hitboxes. More...
 
enum  IABehavior { Passive , Aggressive , Defensive , Fleeing }
 
enum class  Patterns {
  StraightLine , ZigZag , Circular , SineWave ,
  Kamikaze , Static
}
 Enum representing different enemy movement patterns. More...
 
enum class  PowerupType : uint8_t { Heal = 1 , Speed = 2 , DoubleFire = 3 , Shield = 4 }
 Supported powerup types. More...
 
enum class  WeaponKind : uint8_t {
  Classic = 0 , Beam = 1 , Paddle = 2 , Tracker = 3 ,
  Boomerang = 4
}
 Types of player weapons. More...
 

Detailed Description

File : Ammo.hpp License: MIT Author : Elias Josué HAJJAR LLAUQUEN elias.nosp@m.-jos.nosp@m.ue.ha.nosp@m.jjar.nosp@m.-llau.nosp@m.quen.nosp@m.@epit.nosp@m.ech..nosp@m.eu Date : 11/12/2025.

File : Transform.hpp License: MIT Author : Elias Josué HAJJAR LLAUQUEN elias.nosp@m.-jos.nosp@m.ue.ha.nosp@m.jjar.nosp@m.-llau.nosp@m.quen.nosp@m.@epit.nosp@m.ech..nosp@m.eu Date : 11/12/2025.

File : ShieldVisual.hpp License: MIT Author : Angel SEVERAN angel.nosp@m..sev.nosp@m.eran@.nosp@m.epit.nosp@m.ech.e.nosp@m.u Date : 17/01/2026.

File : Homing.hpp License: MIT Author : GitHub Copilot (GPT-5 mini)

File : EntityType.hpp License: MIT Author : Elias Josué HAJJAR LLAUQUEN elias.nosp@m.-jos.nosp@m.ue.ha.nosp@m.jjar.nosp@m.-llau.nosp@m.quen.nosp@m.@epit.nosp@m.ech..nosp@m.eu Date : 11/12/2025.

File : Boomerang.hpp License: MIT.

ECS components for R-Type protocol

Enumeration Type Documentation

◆ CollisionShape

Enum representing different shapes of hitboxes.

Enumerator
Rectangle 
Circle 

Definition at line 27 of file Hitbox.hpp.

◆ CollisionType

Enum representing different types of collision behaviors.

Enumerator
None 

No collision.

Solid 

Solid object, blocks movement.

Trigger 

Trigger object, activates events on contact.

Damage 

Damaging object, causes damage on contact.

Heal 

Healing object, restores health on contact.

Definition at line 15 of file Hitbox.hpp.

◆ IABehavior

Enumerator
Passive 

Passive behavior, does not engage.

Aggressive 

Aggressive behavior, attacks on sight.

Defensive 

Defensive behavior, protects itself.

Fleeing 

Fleeing behavior, runs away from threats.

Definition at line 15 of file IABehavior.hpp.

◆ Patterns

enum class rtp::ecs::components::Patterns
strong

Enum representing different enemy movement patterns.

Enumerator
StraightLine 

Moves in a straight line.

ZigZag 

Moves in a zigzag pattern.

Circular 

Moves in a circular pattern.

SineWave 

Moves in a sine wave pattern.

Kamikaze 

Moves directly towards the player.

Static 

Remains stationary.

Definition at line 16 of file MouvementPattern.hpp.

◆ PowerupType

enum class rtp::ecs::components::PowerupType : uint8_t
strong

Supported powerup types.

Enumerator
Heal 
Speed 
DoubleFire 
Shield 

Definition at line 16 of file Powerup.hpp.

◆ WeaponKind

enum class rtp::ecs::components::WeaponKind : uint8_t
strong

Types of player weapons.

Enumerator
Classic 

Default spam/charge laser.

Beam 

Continuous beam 5s active, 5s cooldown.

Paddle 

Melee reflector in front of ship.

Tracker 

Weak auto-homing shots.

Boomerang 

Single projectile that returns.

Definition at line 18 of file SimpleWeapon.hpp.