Fission FSN
Loading...
Searching...
No Matches
gfCRoundScoreGui.h
Go to the documentation of this file.
1/********************************************************************
2*
3* Created: 2/7/2012 10:54
4*
5* File: gfCRoundScoreGui.h
6*
7* Author: Mick Waites
8*
9* Purpose: Screen to display the score at the end of a
10* scene/mini game
11*
12*********************************************************************/
13
14#ifndef gfCRoundScoreGuihdr
15#define gfCRoundScoreGuihdr
16
17#include "gfIRoundScoreGui.h"
18
20
22{
23 friend class fsCComponentFactory;
24
25public:
26
29
30 static const fsCUniqueId mTypeId;
31
32 static fsBool miniGameCheck(const fsStr& pLevelName);
33 static fsBool miniGameCheck();
34 virtual void bonusesCalculate();
35
36 void listenersRegisterDo() override;
37 void listenersDeregisterDo() override;
38 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
39 const fsIMessageDispatcher::sMessageParameters& pParam) override;
40
41protected:
42
43 void updateDo(fsS32 pDeltaMs) override;
44
45 void serialiseDo() override;
46 void deserialiseDo() override;
47
48 static fsIComponent* create(fsCEntity* pParent);
49
50 fsBool onButtonClicked(fsCButtonComponent* pButtonComp) override;
51
52 void initialiseFromVariableTableDo(const fsCVariableTable& pVars) override;
53
54 virtual ~gfCRoundScoreGui();
56
57
58 void bonusCreate() override;
59
60
61private:
62
63 enum
64 {
65 eSTAGE_BRONZE_STAR = 0,
66 eSTAGE_SILVER_STAR,
67 eSTAGE_GOLD_STAR,
68
69 eSTAGE_END_STARS_PADDING_EVEN,
70 eSTAGE_END_STARS_PADDING,
71
72 eSTAGE_BONUS0_TEXT,
73 eSTAGE_BONUS0_VAL,
74 eSTAGE_BONUS1_TEXT,
75 eSTAGE_BONUS1_VAL,
76 eSTAGE_BONUS2_TEXT,
77 eSTAGE_BONUS2_VAL,
78 eSTAGE_TOT_SCORE_TEXT,
79 eSTAGE_TOT_SCORE_VAL,
80 eSTAGE_BEST_SCORE_TEXT,
81 eSTAGE_BEST_SCORE_VAL,
82
83 eSTAGE_EXTREME_AWARD,
84
85 eTOTAL_STAGES
86 };
87
88 enum
89 {
90 eSLOT_0 = 0,
91 eSLOT_1,
92 eSLOT_2,
93 eSLOT_3,
94 eSLOT_4
95 };
96
97
98 struct SGameSpecificBonus : public SBonus
99 {
100 enum eBONUS_TYPE
101 {
102 eROUND_COMPLETE = 0,
103 eNO_HINTS,
104
105 eTOTAL_BONUS,
106
107 eTOTAL_TYPES
108 };
109
110 SGameSpecificBonus() :
111 SBonus(eTOTAL_TYPES)
112 {
113 }
114 };
115
116 void timeSet(const fsStr& pSlotName, fsS32 pTimeSecs);
117 void runningTimeSet();
118 void shortCircuitStars();
119 void shortCircuitText();
120 void shortCircuit();
121
122 void starShortCircuit(const fsStr& pStarName);
123 void starHide(const fsStr& pName);
124 void starUpdate(const fsStr& pStarName);
125 void completionStarsHide();
126
127 void continuesButtonHandle();
128 void replayButtonHandle();
129
130 void revealedBonusApplyToTotalScore();
131
132 fsCRevealingTextSpriteComponent* currAnimTxtBoxGet(fsS32 pTextAnimStage);
133
134 void hintAndContinueButtonsConfigure();
135
136 fsS32 bonusItemScoreGet() const;
137
138 void bonusTextUpdate();
139
140 void slotScoreTextSet(fsS32 pSlot, fsS32 pScore, fsS32 pMaxScore);
141
142 void hideSlot(fsS32 pSlot) const;
143 void slotItemTextSet(fsS32 pSlot, const fsStr& pStrKey);
144
145
146 void configure() override;
147
148 fsBool hintBonusEarned() const;
149 static fsBool hintBonusPossible();
150
151
152 fsBool mMiniGame;
153
154 fsS32 mPause;
155 fsS32 mExitCountdown;
156
157 fsS32 mTextAnimStage;
158
159 fsBool mBonusesRevealed;
160};
161
162#endif
Definition fsCButtonComponent.h:26
Definition fsCEntity.h:39
Definition fsCRevealingTextSpriteComponent.h:20
Definition fsCUniqueId.h:21
Definition fsCVariableTable.h:27
Definition fsIComponent.h:26
Definition fsStr.h:23
static fsBool miniGameCheck()
Definition gfCRoundScoreGui.cpp:514
void deserialiseDo() override
Definition gfCRoundScoreGui.cpp:124
static const fsCUniqueId mTypeId
Definition gfCRoundScoreGui.h:30
fsBool onButtonClicked(fsCButtonComponent *pButtonComp) override
Definition gfCRoundScoreGui.cpp:77
friend class fsCComponentFactory
Definition gfCRoundScoreGui.h:23
void initialiseFromVariableTableDo(const fsCVariableTable &pVars) override
Definition gfCRoundScoreGui.cpp:569
static fsIComponent * create(fsCEntity *pParent)
Definition gfCRoundScoreGui.cpp:575
void serialiseDo() override
Definition gfCRoundScoreGui.cpp:115
virtual void bonusesCalculate()
Definition gfCRoundScoreGui.cpp:458
gfCRoundScoreGui(fsCEntity *pParent)
Definition gfCRoundScoreGui.cpp:580
void updateDo(fsS32 pDeltaMs) override
Definition gfCRoundScoreGui.cpp:173
void listenersDeregisterDo() override
Definition gfCRoundScoreGui.cpp:93
virtual ~gfCRoundScoreGui()
Definition gfCRoundScoreGui.cpp:591
void bonusCreate() override
Definition gfCRoundScoreGui.cpp:595
static const fsCUniqueId mReplayLevelMsg
Definition gfCRoundScoreGui.h:28
void listenersRegisterDo() override
Definition gfCRoundScoreGui.cpp:99
static const fsCUniqueId mContinueGameMsg
Definition gfCRoundScoreGui.h:27
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCRoundScoreGui.cpp:105
virtual void configure()
Definition gfIRoundScoreGui.cpp:74
gfIRoundScoreGui(fsCEntity *pParent)
Definition gfIRoundScoreGui.cpp:85
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsIMessageDispatcher.h:32
Definition gfIRoundScoreGui.h:55
SBonus(fsS32 pTypeCount)
Definition gfIRoundScoreGui.h:56