From 142e00794097dfb78c4b758a2d39d26fae070092 Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Sat, 13 Mar 2021 07:25:23 -0500 Subject: Created Interpolation abstraction This simplifies EffectSystem quite a bit, and will be useful in other classes. --- src/effect_system.h | 39 +++++++++++++-------------------------- 1 file changed, 13 insertions(+), 26 deletions(-) (limited to 'src/effect_system.h') diff --git a/src/effect_system.h b/src/effect_system.h index 904e6cb..b2b4669 100644 --- a/src/effect_system.h +++ b/src/effect_system.h @@ -1,6 +1,7 @@ #ifndef EFFECT_SYSTEM_H_0B497B39 #define EFFECT_SYSTEM_H_0B497B39 +#include "interpolation.h" #include "system.h" #include "timer.h" #include "vector.h" @@ -41,54 +42,40 @@ public: /* Information */ - bool isScreenFaded() const { return screenFade_ > 0.0; } + bool isScreenFaded() const { return screenFade_.getProgress() > 0.0; } - double getScreenFadeProgress() const { return screenFade_; } + double getScreenFadeProgress() const { return screenFade_.getProgress(); } - bool isScreenFadeComplete() const { return screenFade_ == screenFadeDest_; } + bool isScreenFadeComplete() const { return screenFade_.isComplete(); } - bool isMapFaded() const { return mapFade_ > 0.0; } + bool isMapFaded() const { return mapFade_.getProgress() > 0.0; } - double getMapFadeProgress() const { return mapFade_; } + double getMapFadeProgress() const { return mapFade_.getProgress(); } - bool isMapFadeComplete() const { return mapFade_ == mapFadeDest_; } + bool isMapFadeComplete() const { return mapFade_.isComplete(); } const vec2i& getCameraShakeOffset() const { return cameraShakeOffset_; } bool isCameraShaking() const { return cameraShaking_; } - bool isCircleTransitionActive() const { return circleEffect_ > 0.0; } + bool isCircleTransitionActive() const { return circleEffect_.getProgress() > 0.0; } - double getCircleTransitionProgress() const { return circleEffect_; } + double getCircleTransitionProgress() const { return circleEffect_.getProgress(); } - bool isCircleTransitionComplete() const { return circleEffect_ == circleEffectDest_; } + bool isCircleTransitionComplete() const { return circleEffect_.isComplete(); } private: Game& game_; - double screenFade_ = 0.0; - double screenFadeDest_ = 0.0; - double screenFadeStart_ = 0.0; - double screenFadeLength_ = 0; - double screenFadeThus_ = 0; - - double mapFade_ = 0.0; - double mapFadeDest_ = 0.0; - double mapFadeStart_ = 0.0; - double mapFadeLength_ = 0.0; - double mapFadeThus_ = 0.0; + Interpolation screenFade_; + Interpolation mapFade_; + Interpolation circleEffect_; bool cameraShaking_ = false; vec2i cameraShakeOffset_ { 0, 0 }; bool cameraShakeOn_ = false; Timer cameraShakeTimer_ { 0 }; - - double circleEffect_ = 0.0; - double circleEffectDest_ = 0.0; - double circleEffectStart_ = 0.0; - double circleEffectLength_ = 0.0; - double circleEffectThus_ = 0.0; }; #endif /* end of include guard: EFFECT_SYSTEM_H_0B497B39 */ -- cgit 1.4.1