diff --git a/RetroFE/Source/Execute/AttractMode.cpp b/RetroFE/Source/Execute/AttractMode.cpp index 71b3ba1..1c32ac1 100644 --- a/RetroFE/Source/Execute/AttractMode.cpp +++ b/RetroFE/Source/Execute/AttractMode.cpp @@ -29,13 +29,13 @@ AttractMode::AttractMode() { } -void AttractMode::reset( bool set, bool resetElapsedPlaylistTime ) +void AttractMode::reset( bool set ) { elapsedTime_ = 0; isActive_ = false; isSet_ = set; activeTime_ = 0; - if (resetElapsedPlaylistTime) + if (!set) elapsedPlaylistTime_ = 0; } @@ -47,12 +47,17 @@ bool AttractMode::update(float dt, Page &page) // Check if it's time to switch playlists if (!isActive_ && elapsedPlaylistTime_ > idlePlaylistTime && idlePlaylistTime > 0) + { + elapsedPlaylistTime_ = 0; return true; + } // enable attract mode when idling for the expected time. Disable if idle time is set to 0. if(!isActive_ && ((elapsedTime_ > idleTime && idleTime > 0) || (isSet_ && elapsedTime_ > idleNextTime && idleNextTime > 0))) { + if (!isSet_) + elapsedPlaylistTime_ = 0; // Reset playlist timer if we are entering attract mode isActive_ = true; isSet_ = true; elapsedTime_ = 0; diff --git a/RetroFE/Source/Execute/AttractMode.h b/RetroFE/Source/Execute/AttractMode.h index bf59a2d..e11afa7 100644 --- a/RetroFE/Source/Execute/AttractMode.h +++ b/RetroFE/Source/Execute/AttractMode.h @@ -21,7 +21,7 @@ class AttractMode { public: AttractMode(); - void reset( bool set = false, bool resetElapsedPlaylistTime = true ); + void reset( bool set = false ); bool update(float dt, Page &page); float idleTime; float idleNextTime; diff --git a/RetroFE/Source/RetroFE.cpp b/RetroFE/Source/RetroFE.cpp index e61eba2..5f29d93 100644 --- a/RetroFE/Source/RetroFE.cpp +++ b/RetroFE/Source/RetroFE.cpp @@ -893,7 +893,7 @@ void RetroFE::run( ) { if (attract_.update( deltaTime, *currentPage_ )) { - attract_.reset( attract_.isSet( ), true ); + attract_.reset( attract_.isSet( ) ); currentPage_->nextPlaylist( ); std::string attractModeSkipPlaylist = ""; config_.getProperty( "attractModeSkipPlaylist", attractModeSkipPlaylist ); @@ -1153,7 +1153,7 @@ RetroFE::RETROFE_STATE RetroFE::processUserInput( Page *page ) page->resetScrollPeriod( ); if (page->isMenuScrolling( )) { - attract_.reset( attract_.isSet( ), false ); + attract_.reset( attract_.isSet( ) ); state = RETROFE_HIGHLIGHT_REQUEST; } } diff --git a/RetroFE/Source/Version.cpp b/RetroFE/Source/Version.cpp index bfa4051..4f01f09 100644 --- a/RetroFE/Source/Version.cpp +++ b/RetroFE/Source/Version.cpp @@ -21,7 +21,7 @@ std::string retrofe_version_major = "0"; std::string retrofe_version_minor = "8"; -std::string retrofe_version_build = "29"; +std::string retrofe_version_build = "31"; std::string Version::getString( )