Skylicht Engine
Loading...
Searching...
No Matches
CTweenManager.h
1#pragma once
2
3#include "CTween.h"
4#include "CTweenFloat.h"
5#include "CTweenVector2df.h"
6#include "CTweenVector3df.h"
7#include "CTweenColor.h"
8#include "CTweenMatrix4.h"
9
10#include "Utils/CSingleton.h"
11
12namespace Skylicht
13{
14 class SKYLICHT_API CTweenManager
15 {
16 public:
17 DECLARE_SINGLETON(CTweenManager)
18
19 protected:
20 std::vector<CTween*> m_tweens;
21 std::vector<CTween*> m_insert;
22 std::vector<CTween*> m_remove;
23
25 {
26 float Time;
27 bool UseScaleTime;
28 std::function<void()> Function;
29 };
30
31 std::vector<SDelayCall*> m_delayCalls;
32 std::vector<SDelayCall*> m_insertCalls;
33 std::vector<SDelayCall*> m_removeCalls;
34
35 public:
36 CTweenManager();
37
38 virtual ~CTweenManager();
39
40 void update();
41
42 void addTween(CTween* tween);
43
44 void removeTween(CTween* tween);
45
46 void addDelayCall(float time, std::function<void()> function, bool useScaleTime = true);
47
48 void clearDelayCall();
49 };
50}
Definition CTween.h:11
#define DECLARE_SINGLETON(className)
Declare the standard singleton accessors for a class.
Definition CSingleton.h:36
Everything in the Skylicht Engine. You can start by looking at the topics.
Definition AudioDebugLog.h:29
Definition CTweenManager.h:25