diff options
author | ExMix <rahuba.youri@mapswithme.com> | 2014-05-16 17:31:39 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 02:15:41 +0300 |
commit | 751657cf725436fd5ed74b5f70a6afa80be436c1 (patch) | |
tree | 55497beb3776f42c8e0eda9aa859959f41482953 /map/anim_phase_chain.hpp | |
parent | e9f7e1d796d22ba2fab598ab2cd7e3d18d34f010 (diff) |
[core] create new bookmark animation
Diffstat (limited to 'map/anim_phase_chain.hpp')
-rw-r--r-- | map/anim_phase_chain.hpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/map/anim_phase_chain.hpp b/map/anim_phase_chain.hpp new file mode 100644 index 0000000000..5530fb78c0 --- /dev/null +++ b/map/anim_phase_chain.hpp @@ -0,0 +1,37 @@ +#pragma once + +#include "../anim/task.hpp" + +#include "../std/shared_ptr.hpp" + +class Framework; + +struct AnimPhase +{ + AnimPhase(double endScale, double timeInterval); + + double m_endScale; + double m_timeInterval; +}; + +class AnimPhaseChain : public anim::Task +{ +public: + AnimPhaseChain(Framework & f, double & scale); + + void AddAnimPhase(AnimPhase const & phase); + + virtual void OnStart(double ts); + virtual void OnStep(double ts); + +private: + Framework & m_f; + vector<AnimPhase> m_animPhases; + size_t m_phaseIndex; + double & m_scale; + double m_startTime; + double m_startScale; +}; + +void InitDefaultPinAnim(AnimPhaseChain * chain); +shared_ptr<anim::Task> CreateDefaultPinAnim(Framework & f, double & scale); |