Fix timer condition not properly using random values

This commit is contained in:
WarmUpTill 2024-03-27 08:04:52 +01:00 committed by WarmUpTill
parent 3ee913ea98
commit 3fe8ea8961
2 changed files with 6 additions and 4 deletions

View File

@ -1,6 +1,8 @@
#include "macro-condition-timer.hpp"
#include "layout-helpers.hpp"
#include <random>
namespace advss {
const std::string MacroConditionTimer::id = "timer";
@ -17,6 +19,9 @@ const static std::map<MacroConditionTimer::TimerType, std::string> timerTypes =
"AdvSceneSwitcher.condition.timer.type.random"},
};
static std::random_device rd;
static std::default_random_engine re(rd());
bool MacroConditionTimer::CheckCondition()
{
if (_paused) {
@ -48,7 +53,7 @@ void MacroConditionTimer::SetRandomTimeRemaining()
}
std::uniform_real_distribution<double> unif(min, max);
double remainingTime = unif(_re);
double remainingTime = unif(re);
_duration.SetTimeRemaining(remainingTime);
}

View File

@ -8,8 +8,6 @@
#include <QComboBox>
#include <QHBoxLayout>
#include <random>
namespace advss {
class MacroConditionTimer : public MacroCondition {
@ -41,7 +39,6 @@ private:
void SetVariables(double seconds);
void SetupTempVars();
std::default_random_engine _re;
static bool _registered;
static const std::string id;
};