Fission FSN
Loading...
Searching...
No Matches
gfCGameGui.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsCGameGui.h
4*
5* Purpose: Root, generic Gui for any game scene. Contains pause
6* button and may also contain hint and skip buttons
7* if the layout file lists them.
8*
9*********************************************************************/
10
11#ifndef fsCGameGuihdr
12#define fsCGameGuihdr
13
15
17
19class gfCHOGHint;
20
21
23{
24 friend class fsCComponentFactory;
25
26public:
27
28 static const fsCUniqueId mTypeId;
29
31
33
35 fsBool hintActivate(fsCEntity* pStartEnt, fsCEntity* pEndEnt);
36 fsBool hintActivate(std::vector<fsCEntity*>& pCandidates);
37
38 fsBool miniGameSkipGet() const;
39 void minigameSkip();
40
41protected:
42
43 void renderDo() override;
44 void updateDo(fsS32 pDeltaMs) override;
45 void postLoadDo() override;
46
47 void listenersDeregisterDo() override;
48 void listenersRegisterDo() override;
49 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
50 const fsIMessageDispatcher::sMessageParameters& pParam) override;
51
52 void initialiseFromVariableTableDo(const fsCVariableTable& pVars) override;
53 fsBool onButtonClicked(fsCButtonComponent* pButtonComp) override;
54
55 static fsIComponent* create(fsCEntity* pParent);
56
57 fsCGameGui(fsCEntity* pParent);
58 virtual ~fsCGameGui();
59
60private:
61
62 fsBool hintButtonActive(fsCButtonComponent* const pButtonComp) const;
63
64 void miniGameContinueButtonVisibilitySet(fsBool pContinueButtonVisible);
65
66 void ephemeralRecycleParticleEffectEntityCreate();
67
68 void miniGameGuiTitlesLinkToSubScene();
69
70 void differencesFoundUpdate();
71
72 gfCLevelCompleteCheckerComponent* const levelCompleteCheckComponentGet();
73 void playerControlledContinueButtonRegisterForLevelCompletion();
74
75 void timerGuiInitialise();
76 void delayButtonsInitialise(const fsStr& pName);
77
78 void titleTextInitialise();
79 void timerTextSet(const fsStr& pName, fsStr pVal);
80 void timerTextUpdate();
81 void currencyTextUpdate();
82 void differencesTextInitialise();
83 void differencesTextUpdate();
84
85 gfCHOGHint* mHint;
86
87 fsS32 mTotDifferences;
88 fsS32 mDifferencesFound;
89
90 fsBool mSkippedMiniGame;
91};
92
93#endif
Definition fsCButtonComponent.h:26
Definition fsCEntity.h:39
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCGameGui.cpp:120
virtual ~fsCGameGui()
Definition gfCGameGui.cpp:555
void listenersRegisterDo() override
Definition gfCGameGui.cpp:83
void listenersDeregisterDo() override
Definition gfCGameGui.cpp:66
friend class fsCComponentFactory
Definition gfCGameGui.h:24
fsBool onButtonClicked(fsCButtonComponent *pButtonComp) override
Definition gfCGameGui.cpp:394
static const fsStr mPlayerControlledContinueButtonName
Definition gfCGameGui.h:32
fsBool miniGameSkipGet() const
Definition gfCGameGui.cpp:484
fsBool hintActivate(fsCEntity *pStartEnt, fsCEntity *pEndEnt)
Definition gfCGameGui.cpp:50
static const fsCUniqueId mTypeId
Definition gfCGameGui.h:28
void initialiseFromVariableTableDo(const fsCVariableTable &pVars) override
Definition gfCGameGui.cpp:223
fsCGameGui(fsCEntity *pParent)
Definition gfCGameGui.cpp:546
static const fsCUniqueId mHintButtonPressedMsg
Definition gfCGameGui.h:30
void renderDo() override
Definition gfCGameGui.cpp:39
static fsIComponent * create(fsCEntity *pParent)
Definition gfCGameGui.cpp:541
void delayButtonsInitialise()
Definition gfCGameGui.cpp:251
void updateDo(fsS32 pDeltaMs) override
Definition gfCGameGui.cpp:44
void minigameSkip()
Definition gfCGameGui.cpp:489
void postLoadDo() override
Definition gfCGameGui.cpp:60
Definition fsCUniqueId.h:21
Definition fsCVariableTable.h:27
fsIComponent(fsCEntity *pParent)
Definition fsIComponent.cpp:86
fsIMessageListenerGuiComponent(fsCEntity *pParent, fsS32 pPriority)
Definition fsIMessageListenerGuiComponent.cpp:4
Definition fsStr.h:23
Definition gfCHOGHint.h:27
Definition gfCLevelCompleteCheckerComponent.h:20
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsIMessageDispatcher.h:32