8#ifndef RTYPE_CLIENT_SCENES_CREATEROOMSCENE_HPP_
9 #define RTYPE_CLIENT_SCENES_CREATEROOMSCENE_HPP_
16 #include "Systems/NetworkSyncSystem.hpp"
18 #include <SFML/Graphics.hpp>
46 std::function<
void(
GameState)> changeState);
61 void onExit(
void)
override;
73 void update(
float dt)
override;
System to handle network-related operations on the client side.
Manages game settings and preferences.
Manages game translations for all UI elements.
Factory class for creating UI components in the ECS registry.
Interface for different scenes in the client application.
Scene for creating a new game room.
uint32_t _uiLevelId
Level ID for the game.
ecs::Registry & _uiRegistry
Reference to the ECS registry.
void handleEvent(const sf::Event &event) override
Handle an incoming event.
graphics::UiFactory & _uiFactory
UI Factory for creating UI components.
ChangeStateFn _changeState
Function to change the game state.
float _uiSpeed
Game speed setting for the room.
TranslationManager & _translationManager
Reference to the translation manager.
std::function< void(GameState)> ChangeStateFn
Type alias for a function that changes the game state.
uint32_t _uiDuration
Duration of the game in minutes.
void onExit(void) override
Called when the scene is exited.
NetworkSyncSystem & _network
Reference to the client network.
void update(float dt) override
Update the scene state.
std::string _uiRoomName
Name of the room to be created.
uint32_t _uiSeed
Seed for random generation.
void onEnter(void) override
Called when the scene is entered.
float _uiDifficulty
Difficulty setting for the room.
Settings & _settings
Reference to the application settings.
uint32_t _uiMaxPlayers
Maximum number of players in the room.