|
Air-Trap 1.0.0
A multiplayer R-Type clone game engine built with C++23 and ECS architecture
|
File : GameManager.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...
Classes | |
| class | AuthSystem |
| System to handle player login operations on the server side. More... | |
| class | BoomerangSystem |
| class | BulletCleanupSystem |
| Despawns bullets that leave the play area. More... | |
| class | CollisionSystem |
| class | EnemyAISystem |
| System to handle enemy AI behavior. More... | |
| class | EnemyShootSystem |
| Spawns bullets for enemies on the server. More... | |
| class | EntitySystem |
| Base class for systems that operate on entities in the ECS. More... | |
| class | GameManager |
| Manages game state, rooms, and player interactions on the server side. More... | |
| class | HomingSystem |
| struct | LevelData |
| class | LevelSystem |
| class | MovementSystem |
| System to handle entity movement based on input components. More... | |
| class | NetworkSyncSystem |
| System to handle network-related operations on the server side. More... | |
| struct | ObstacleEvent |
| class | Player |
| Represents a player in the game server. More... | |
| class | PlayerMouvementSystem |
| System to handle player entity movement based on input components. More... | |
| class | PlayerShootSystem |
| Spawns bullets from player input on the server. More... | |
| class | PlayerSystem |
| System to handle player-related operations on the server side. More... | |
| struct | PowerupEvent |
| class | Room |
| Represents a game room in the server. More... | |
| class | RoomSystem |
| System to handle room-related operations on the server side. More... | |
| class | ServerNetwork |
| Implementation ASIO du serveur réseau (TCP + UDP) More... | |
| struct | SpawnEvent |
Typedefs | |
| using | PlayerPtr = std::shared_ptr< Player > |
| Shared pointer type for Player. | |
Enumerations | |
| enum class | PlayerState { None , NotLogged , Connected , InLobby , InRoom , InGame } |
| Enum representing the state of a player in the session. More... | |
Functions | |
| std::optional< LevelData > | loadLevelFromFile (const std::string &path, std::string &error) |
| void | startGame (Room &room) |
| void | signal_handler (int signum) |
| uint16_t | parseArguments (int argc, char **argv) |
File : GameManager.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 : RoomSystem.cpp License: MIT Author : Elias Josué HAJJAR.
File : PlayerSystem.cpp 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 : PlayerShootSystem.cpp 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 : PlayerMouvementSystem.cpp 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 : HomingSystem.cpp License: MIT.
File : EntitySystem.cpp 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 : EnemyShootSystem.cpp License: MIT Author : Elias Date : 11/12/2025.
File : EnemyAISystem.cpp 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 : BulletCleanupSystem.cpp License: MIT Author : Elias Date : 11/12/2025.
File : BoomerangSystem.cpp License: MIT.
File : AuthSystem.cpp 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 : main.cpp 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 : 10/12/2025.
File : Player.cpp 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 : GameManager.cpp 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 : RoomSystem.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 : PlayerSystem.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 : PlayerShootSystem.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 : PlayerMouvementSystem.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 : NetworkSyncSystem.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 : MovementSystem.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 : HomingSystem.hpp License: MIT.
File : EnemyShootSystem.hpp License: MIT Author : Elias Date : 11/12/2025.
File : EnemyAISystem.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 : BulletCleanupSystem.hpp License: MIT Author : Elias Date : 11/12/2025.
File : BoomerangSystem.hpp License: MIT.
File : AuthSystem.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 : INetwork.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 : Room.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 : Player.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.
R-Type server-side game management
Game logic for R-Type server
Network layer for R-Type server protocol
Systems for R-Type server
Shared pointer type for Player.
Definition at line 178 of file Player.hpp.
|
strong |
Enum representing the state of a player in the session.
| Enumerator | |
|---|---|
| None | |
| NotLogged | |
| Connected | |
| InLobby | |
| InRoom | |
| InGame | |
Definition at line 28 of file Player.hpp.
| std::optional< LevelData > rtp::server::loadLevelFromFile | ( | const std::string & | path, |
| std::string & | error | ||
| ) |
Definition at line 417 of file LevelData.cpp.
References rtp::server::SpawnEvent::atTime, rtp::server::LevelData::id, rtp::server::LevelData::name, rtp::server::LevelData::obstacles, rtp::server::LevelData::playerStart, rtp::server::LevelData::powerups, rtp::server::LevelData::spawns, rtp::ecs::components::StraightLine, rtp::server::LevelData::tilesetPath, and rtp::server::LevelData::widthPixels.
Referenced by rtp::server::LevelSystem::loadLevel().
| uint16_t rtp::server::parseArguments | ( | int | argc, |
| char ** | argv | ||
| ) |
| void rtp::server::signal_handler | ( | int | signum | ) |
| void rtp::server::startGame | ( | Room & | room | ) |
Definition at line 155 of file GameManager.cpp.
References rtp::server::Room::getId(), and rtp::log::info().