Fission FSN
Loading...
Searching...
No Matches
gfCFlipsawMinigameComponent.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: gfCFlipsawMinigameComponent.h
4*
5* Purpose: Mini game where tiles swap places
6*
7*********************************************************************/
8
9#ifndef gfCFlipsawMinigameComponenthdr
10#define gfCFlipsawMinigameComponenthdr
11
12#include <fsCore/fsSColour.h>
13
15
16class gfIStencil;
17class fsINode;
18class fsCBrush;
20
21
23{
24 friend class fsCComponentFactory;
25
26public:
27
28 static const fsCUniqueId mTypeId;
32 static const fsStr mFlipsawPrefix;
33
34 void gameLogicSet(gfCFlipsawMiniGameLogicComponent* const pParentLogic);
35
36 void cut(std::shared_ptr<fsCBrush> pTexture, gfIStencil* pStencil);
37
38 void hintSwap();
39 fsBool selected() const;
40
41 fsBool isActiveGet() const override;
42 fsBool hintDo() override;
43
44protected:
45
51
52 fsBool homeGet() const override;
53 fsBool fullHomeLock() const override;
54
55 void resetDo() override;
56
57 void listenersDeregisterDo() override;
58 void listenersRegisterDo() override;
59 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
60 const fsIMessageDispatcher::sMessageParameters& pParam) override;
61
62 void serialiseDo() override;
63 void deserialiseDo() override;
64
65 void initialiseDo(const fsCVariableTable& pVars) override;
66 void skipDo() override;
67
68 fsBool acceptingInputGet() const override;
69
70 static fsIComponent* create(fsCEntity* pParent);
71
74
75private:
76
77 void tintSet() const;
78 void flip();
79
80 void homePositionStore();
81
82 static void positionsRandomise(std::vector<gfCFlipsawMinigameComponent*>& pFlipEnts);
83 void positionsSwap(const gfCFlipsawMinigameComponent* pOther) const;
84 void initialisationFinalise();
85 void homeCheck(fsBool pPlayEffect);
86
87 static fsSColour4B mWrongColourTint;
88 static fsSColour4B mSelectedColourTint;
89 static fsSColour4B mHintColourTint;
90 static fsBool mLockHomePos;
91
92 fsPoint mHomePosition;
93
94 fsBool mInitialised;
95 fsBool mSelected;
96 fsBool mHinted;
97
99
100};
101
102#endif
Definition fsCBrush.h:26
Definition fsCEntity.h:39
Definition fsCUniqueId.h:21
Definition fsCVariableTable.h:27
Definition fsIComponent.h:26
virtual void initialiseDo()
Definition fsIComponent.h:71
Definition fsINode.h:30
Definition fsStr.h:23
Definition gfCFlipsawMiniGameLogicComponent.h:20
void listenersDeregisterDo() override
Definition gfCFlipsawMinigameComponent.cpp:73
void skipDo() override
Definition gfCFlipsawMinigameComponent.cpp:296
static const fsStr mFlipsawPrefix
Definition gfCFlipsawMinigameComponent.h:32
friend class fsCComponentFactory
Definition gfCFlipsawMinigameComponent.h:24
fsBool homeGet() const override
Definition gfCFlipsawMinigameComponent.cpp:323
void deserialiseDo() override
Definition gfCFlipsawMinigameComponent.cpp:184
void hintSwap()
Definition gfCFlipsawMinigameComponent.cpp:40
void serialiseDo() override
Definition gfCFlipsawMinigameComponent.cpp:173
void listenersRegisterDo() override
Definition gfCFlipsawMinigameComponent.cpp:86
void cut(std::shared_ptr< fsCBrush > pTexture, gfIStencil *pStencil)
Definition gfCFlipsawMinigameComponent.cpp:62
void resetDo() override
Definition gfCFlipsawMinigameComponent.cpp:200
fsBool acceptingInputGet() const override
Definition gfCFlipsawMinigameComponent.cpp:346
fsBool fullHomeLock() const override
Definition gfCFlipsawMinigameComponent.cpp:328
static fsIComponent * create(fsCEntity *pParent)
Definition gfCFlipsawMinigameComponent.cpp:351
virtual ~gfCFlipsawMinigameComponent()
Definition gfCFlipsawMinigameComponent.cpp:376
static const fsCUniqueId mFlipsawPieceSelectedMsg
Definition gfCFlipsawMinigameComponent.h:29
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCFlipsawMinigameComponent.cpp:99
gfCFlipsawMinigameComponent(fsCEntity *pParent)
Definition gfCFlipsawMinigameComponent.cpp:356
static const fsCUniqueId mFlipsawAnotherPieceSelectedMsg
Definition gfCFlipsawMinigameComponent.h:30
void gameLogicSet(gfCFlipsawMiniGameLogicComponent *const pParentLogic)
Definition gfCFlipsawMinigameComponent.cpp:30
fsBool selected() const
Definition gfCFlipsawMinigameComponent.cpp:35
static const fsCUniqueId mTypeId
Definition gfCFlipsawMinigameComponent.h:28
fsBool isActiveGet() const override
Definition gfCFlipsawMinigameComponent.cpp:365
static const fsCUniqueId mFlipsawClearHintTintMsg
Definition gfCFlipsawMinigameComponent.h:31
fsBool hintDo() override
Definition gfCFlipsawMinigameComponent.cpp:370
gfCRotateMinigameComponent(fsCEntity *pParent)
Definition gfCRotateMinigameComponent.cpp:264
Definition gfIStencil.h:22
bool fsBool
Definition fsBaseTypes.h:26
Definition fsIMessageDispatcher.h:32
Definition fsPoint.h:17
Definition fsSColour.h:54
const gfCFlipsawMinigameComponent * mFlipComp
Definition gfCFlipsawMinigameComponent.h:49
sFlipsawEventMsgParam(gfCFlipsawMinigameComponent *pFlipComp)
Definition gfCFlipsawMinigameComponent.h:48