From 5d095bb9e18a3a00461c0667e3a87b887d69dcae Mon Sep 17 00:00:00 2001 From: vaxerski Date: Thu, 29 Dec 2022 12:30:43 +0100 Subject: use curves for special dim anim --- src/helpers/AnimatedVariable.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/helpers/AnimatedVariable.cpp') diff --git a/src/helpers/AnimatedVariable.cpp b/src/helpers/AnimatedVariable.cpp index f3b1d1e4..5b98e426 100644 --- a/src/helpers/AnimatedVariable.cpp +++ b/src/helpers/AnimatedVariable.cpp @@ -69,4 +69,13 @@ int CAnimatedVariable::getDurationLeftMs() { float CAnimatedVariable::getPercent() { const auto DURATIONPASSED = std::chrono::duration_cast(std::chrono::system_clock::now() - animationBegin).count(); return std::clamp((DURATIONPASSED / 100.f) / m_pConfig->pValues->internalSpeed, 0.f, 1.f); +} + +float CAnimatedVariable::getCurveValue() { + const auto SPENT = getPercent(); + + if (SPENT >= 1.f) + return 1.f; + + return g_pAnimationManager->getBezier(m_pConfig->pValues->internalBezier)->getYForPoint(SPENT); } \ No newline at end of file -- cgit v1.2.3