Fission FSN
Loading...
Searching...
No Matches
gfCGhostSpriteComponent.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: gfCGhostSpriteComponent.h
4*
5* Purpose: Highlight collectable items
6*
7*********************************************************************/
8
9#ifndef gfCGhostSpriteComponenthdr
10#define gfCGhostSpriteComponenthdr
11
12#include <fsCore/fsSColour.h>
13
17
19
20class fsCSprite;
21
22
24{
25 friend class fsCComponentFactory;
26
27public:
28
32
33 void sourceSpriteSet(fsISpriteComponent* const pSrc);
34 void forceVisibleSet(fsBool pVisibility);
35 void colourRed();
36
37 void parentEntityInteractiveSet(fsBool pParentInteractive);
38
39 static const fsCUniqueId mTypeId;
40
41protected:
42
43 void updateDo(fsS32 pDeltaMs) override;
44 void resetDo() override;
45
46 static fsIComponent* create(fsCEntity* pParent);
47
48 void listenersRegisterDo() override;
49 void listenersDeregisterDo() override;
50 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
51 const fsIMessageDispatcher::sMessageParameters& pParam) override;
52
53 void renderDo() override;
54 void matrixApplyDo() override;
55
58
59private:
60
61 void visibilitySet();
62 void spriteCreate();
63
64 fsS32 mElapsedTimeMs;
65 fsCGraph<fsSColour> mColourGraph;
66
67 fsCSprite* mSprite;
68
69 fsBool mGhostVisible;
70
71 fsBool mParentEntityInteractive;
72 fsBool mActiveEntitiesToggled;
73 fsBool mAllEntitiesToggled;
74
75 fsISpriteComponent* mSource;
76};
77
78#endif
Definition fsCEntity.h:39
Definition fsCGraph.h:24
Definition fsCSprite.h:24
Definition fsCUniqueId.h:21
fsIComponent(fsCEntity *pParent)
Definition fsIComponent.cpp:86
fsIMessageListener(fsS32 pPriority)
Definition fsIMessageListener.cpp:41
fsIRenderableComponent(fsCEntity *pParent)
Definition fsIRenderableComponent.cpp:4
Definition fsISpriteComponent.h:23
virtual ~gfCGhostSpriteComponent()
Definition gfCGhostSpriteComponent.cpp:188
friend class fsCComponentFactory
Definition gfCGhostSpriteComponent.h:25
void parentEntityInteractiveSet(fsBool pParentInteractive)
Definition gfCGhostSpriteComponent.cpp:44
void listenersDeregisterDo() override
Definition gfCGhostSpriteComponent.cpp:86
void matrixApplyDo() override
Definition gfCGhostSpriteComponent.cpp:146
void colourRed()
Definition gfCGhostSpriteComponent.cpp:156
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCGhostSpriteComponent.cpp:110
static const fsCUniqueId mCheatGhostMsg
Definition gfCGhostSpriteComponent.h:29
void listenersRegisterDo() override
Definition gfCGhostSpriteComponent.cpp:98
static fsIComponent * create(fsCEntity *pParent)
Definition gfCGhostSpriteComponent.cpp:151
static const fsCUniqueId mCheatSuperGhostMsg
Definition gfCGhostSpriteComponent.h:30
gfCGhostSpriteComponent(fsCEntity *pParent)
Definition gfCGhostSpriteComponent.cpp:168
void resetDo() override
Definition gfCGhostSpriteComponent.cpp:23
static const fsCUniqueId mGhostHintButtonPressedMsg
Definition gfCGhostSpriteComponent.h:31
void renderDo() override
Definition gfCGhostSpriteComponent.cpp:138
void sourceSpriteSet(fsISpriteComponent *const pSrc)
Definition gfCGhostSpriteComponent.cpp:18
static const fsCUniqueId mTypeId
Definition gfCGhostSpriteComponent.h:39
void updateDo(fsS32 pDeltaMs) override
Definition gfCGhostSpriteComponent.cpp:30
void forceVisibleSet(fsBool pVisibility)
Definition gfCGhostSpriteComponent.cpp:50
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsIMessageDispatcher.h:32