r-type  0.0.0
R-Type main
Loading...
Searching...
No Matches
cli::Settings Class Referencefinal

Settings scene. More...

#include <Settings.hpp>

+ Inheritance diagram for cli::Settings:
+ Collaboration diagram for cli::Settings:

Public Member Functions

 Settings (eng::id assignedId, const std::shared_ptr< eng::IRenderer > &renderer, utl::cli::AppConfig &config)
 
 ~Settings () override=default
 
 Settings (const Settings &other)=delete
 
Settingsoperator= (const Settings &other)=delete
 
 Settings (Settings &&other)=delete
 
Settingsoperator= (Settings &&other)=delete
 
void update (float dt, const eng::WindowSize &size) override
 
void event (const eng::Event &event) override
 
void updateSettingsDisplay ()
 
void loadFromConfig ()
 
bool & playMusic ()
 
- Public Member Functions inherited from eng::AScene
 AScene (const id assignedId)
 
 ~AScene () override=default
 
 AScene (const AScene &other)=delete
 
 AScene (AScene &&other)=delete
 
ASceneoperator= (const AScene &other)=delete
 
ASceneoperator= (AScene &&other)=delete
 
std::string & getName () override
 
id getId () const override
 
ecs::RegistrygetRegistry () override
 
void setName (const std::string &newName) override
 
void addSystem (std::unique_ptr< ecs::ISystem > system) override
 
void updateSystems (const float dt) override
 
- Public Member Functions inherited from eng::IScene
virtual ~IScene ()=default
 

Public Attributes

std::function< void()> onLeave
 

Static Private Member Functions

static void applyVideoQuality ()
 
static void applySkinChange ()
 

Private Attributes

std::unordered_map< eng::Key, bool > m_keysPressed
 
const std::shared_ptr< eng::IRenderer > & m_renderer
 
utl::cli::AppConfigm_appConfig
 
size_t m_selectedIndex = 0
 
const std::vector< std::string > m_settingsOptions
 
float m_audioVolume = 50.0F
 
int m_videoQuality = 1
 
int m_controlScheme = 2
 
int m_skinIndex = 0
 
ecs::Entity m_volumeValueEntity
 
ecs::Entity m_qualityValueEntity
 
ecs::Entity m_controlValueEntity
 
ecs::Entity m_skinSpriteEntity
 
ecs::Entity m_titleEntity
 
float m_animationTime = 0.0f
 
float m_titlePulseTime = 0.0f
 
bool m_playMusic = false
 

Additional Inherited Members

- Protected Attributes inherited from eng::AScene
utl::EventBusm_eventBus = utl::EventBus::getInstance()
 
std::uint32_t m_eventComponentId = 0
 

Detailed Description

Settings scene.

Definition at line 22 of file Settings.hpp.

Constructor & Destructor Documentation

◆ Settings() [1/3]

◆ ~Settings()

cli::Settings::~Settings ( )
overridedefault

◆ Settings() [2/3]

cli::Settings::Settings ( const Settings & other)
delete

◆ Settings() [3/3]

cli::Settings::Settings ( Settings && other)
delete

Member Function Documentation

◆ applySkinChange()

void cli::Settings::applySkinChange ( )
staticprivate

Definition at line 305 of file settings.cpp.

◆ applyVideoQuality()

void cli::Settings::applyVideoQuality ( )
staticprivate

Definition at line 303 of file settings.cpp.

◆ event()

void cli::Settings::event ( const eng::Event & event)
overridevirtual

◆ loadFromConfig()

void cli::Settings::loadFromConfig ( )

Definition at line 292 of file settings.cpp.

Referenced by Settings().

+ Here is the caller graph for this function:

◆ operator=() [1/2]

Settings & cli::Settings::operator= ( const Settings & other)
delete

◆ operator=() [2/2]

Settings & cli::Settings::operator= ( Settings && other)
delete

◆ playMusic()

bool & cli::Settings::playMusic ( )
inline

Definition at line 37 of file Settings.hpp.

References m_playMusic.

◆ update()

void cli::Settings::update ( float dt,
const eng::WindowSize & size )
overridevirtual

◆ updateSettingsDisplay()

void cli::Settings::updateSettingsDisplay ( )

Definition at line 179 of file settings.cpp.

Member Data Documentation

◆ m_animationTime

float cli::Settings::m_animationTime = 0.0f
private

Definition at line 60 of file Settings.hpp.

◆ m_appConfig

utl::cli::AppConfig& cli::Settings::m_appConfig
private

Definition at line 47 of file Settings.hpp.

◆ m_audioVolume

float cli::Settings::m_audioVolume = 50.0F
private

Definition at line 51 of file Settings.hpp.

◆ m_controlScheme

int cli::Settings::m_controlScheme = 2
private

Definition at line 53 of file Settings.hpp.

◆ m_controlValueEntity

ecs::Entity cli::Settings::m_controlValueEntity
private

Definition at line 57 of file Settings.hpp.

Referenced by Settings().

◆ m_keysPressed

std::unordered_map<eng::Key, bool> cli::Settings::m_keysPressed
private

Definition at line 45 of file Settings.hpp.

◆ m_playMusic

bool cli::Settings::m_playMusic = false
private

Definition at line 62 of file Settings.hpp.

Referenced by playMusic().

◆ m_qualityValueEntity

ecs::Entity cli::Settings::m_qualityValueEntity
private

Definition at line 56 of file Settings.hpp.

Referenced by Settings().

◆ m_renderer

const std::shared_ptr<eng::IRenderer>& cli::Settings::m_renderer
private

Definition at line 46 of file Settings.hpp.

◆ m_selectedIndex

size_t cli::Settings::m_selectedIndex = 0
private

Definition at line 48 of file Settings.hpp.

Referenced by Settings().

◆ m_settingsOptions

const std::vector<std::string> cli::Settings::m_settingsOptions
private
Initial value:
= {"Audio Volume", "FPS", "Controls", "Skin",
"Back to Menu"}

Definition at line 49 of file Settings.hpp.

Referenced by Settings().

◆ m_skinIndex

int cli::Settings::m_skinIndex = 0
private

Definition at line 54 of file Settings.hpp.

◆ m_skinSpriteEntity

ecs::Entity cli::Settings::m_skinSpriteEntity
private

Definition at line 58 of file Settings.hpp.

Referenced by Settings().

◆ m_titleEntity

ecs::Entity cli::Settings::m_titleEntity
private

Definition at line 59 of file Settings.hpp.

Referenced by Settings().

◆ m_titlePulseTime

float cli::Settings::m_titlePulseTime = 0.0f
private

Definition at line 61 of file Settings.hpp.

◆ m_videoQuality

int cli::Settings::m_videoQuality = 1
private

Definition at line 52 of file Settings.hpp.

◆ m_volumeValueEntity

ecs::Entity cli::Settings::m_volumeValueEntity
private

Definition at line 55 of file Settings.hpp.

Referenced by Settings().

◆ onLeave

std::function<void()> cli::Settings::onLeave

Definition at line 39 of file Settings.hpp.


The documentation for this class was generated from the following files: