Fission FSN
Loading...
Searching...
No Matches
gfCTappableCollectableComponent.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: gfCTappableCollectableComponent.h
4*
5* Purpose: To control entities which are collected when they are
6* tapped.
7*
8*********************************************************************/
9
10#ifndef gfCTappableCollectableComponenthdr
11#define gfCTappableCollectableComponenthdr
12
14
17struct fsPoint;
18
19
21{
22 friend class fsCComponentFactory;
24 // Aims its taps at entities and needs the same hit test the pointer path
25 // runs, so a miss can be blamed on the hit box or on the input, not both.
26 friend class gfCAutoTestAim;
27
28public:
29
31
32 static const fsCUniqueId mTypeId;
34
35protected:
36
37 virtual fsBool collectable() const { return true; }
38
39 virtual fsBool hitTestAndCollect(const fsPoint& pPointerPos);
40 virtual fsBool hitTest(const fsPoint& pPointerPos);
41 void deserialiseDo() override;
42
43 void listenersRegisterDo() override;
44 void listenersDeregisterDo() override;
45 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
46 const fsIMessageDispatcher::sMessageParameters& pParam) override;
47
48 void inputStealDo() override;
49 void activateDo() override;
50 void deactivateDo() override;
51
52 static fsIComponent* create(fsCEntity* pParent);
54
56
58
60
61private:
62
63 fsBool mouseNoLongerOver(const fsIMessageDispatcher::sMessageParameters& pParam);
64
65 fsBool pointerDownHandle(const fsIMessageDispatcher::sMessageParameters& pParam);
66 void pointerUpHandle(const fsPoint& pPointerPos);
67};
68
69#endif
Definition fsCEntity.h:39
Definition fsCUniqueId.h:21
Definition fsIComponent.h:26
Definition fsISpriteComponent.h:23
Definition gfCGhostSpriteComponent.h:24
friend class gfCTutorialSequencerComponent
Definition gfCTappableCollectableComponent.h:23
virtual fsBool collectable() const
Definition gfCTappableCollectableComponent.h:37
void activateDo() override
Definition gfCTappableCollectableComponent.cpp:41
static fsIComponent * create(fsCEntity *pParent)
Definition gfCTappableCollectableComponent.cpp:196
friend class gfCAutoTestAim
Definition gfCTappableCollectableComponent.h:26
void deserialiseDo() override
Definition gfCTappableCollectableComponent.cpp:24
friend class fsCComponentFactory
Definition gfCTappableCollectableComponent.h:22
static const fsCUniqueId mTypeId
Definition gfCTappableCollectableComponent.h:32
gfCGhostSpriteComponent * mGhostSpriteComp
Definition gfCTappableCollectableComponent.h:59
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCTappableCollectableComponent.cpp:77
virtual fsBool hitTest(const fsPoint &pPointerPos)
Definition gfCTappableCollectableComponent.cpp:163
gfCTappableCollectableComponent(fsCEntity *pParent)
Definition gfCTappableCollectableComponent.cpp:204
void touchHitSpriteStore()
Definition gfCTappableCollectableComponent.cpp:182
void listenersDeregisterDo() override
Definition gfCTappableCollectableComponent.cpp:49
fsISpriteComponent * mTouchHitSprite
Definition gfCTappableCollectableComponent.h:57
virtual ~gfCTappableCollectableComponent()
Definition gfCTappableCollectableComponent.cpp:212
virtual fsBool hitTestAndCollect(const fsPoint &pPointerPos)
Definition gfCTappableCollectableComponent.cpp:158
void inputStealDo() override
Definition gfCTappableCollectableComponent.cpp:12
fsBool mTakingInput
Definition gfCTappableCollectableComponent.h:55
void listenersRegisterDo() override
Definition gfCTappableCollectableComponent.cpp:57
void deactivateDo() override
Definition gfCTappableCollectableComponent.cpp:33
gfICollectableComponent(fsCEntity *pParent)
Definition gfICollectableComponent.cpp:380
bool fsBool
Definition fsBaseTypes.h:26
Definition fsIMessageDispatcher.h:32
Definition fsPoint.h:17