Fission FSN
Loading...
Searching...
No Matches
gfCLevelCompleteCheckerComponent.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsCLevelCompleteCheckerComponent.h
4*
5* Purpose: Creates and tracks flags for level completion sending
6* out a message when they are all set.
7*
8*********************************************************************/
9
10#ifndef gfCLevelCompleteCheckerComponenthdr
11#define gfCLevelCompleteCheckerComponenthdr
12
13#include <map>
14
17
18
20{
21 friend class fsCComponentFactory;
22
23public:
24
30
32
35
36 static const fsCUniqueId mTypeId;
37
42
47
48protected:
49
50 void listenersRegisterDo() override;
51 void listenersDeregisterDo() override;
52 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
53 const fsIMessageDispatcher::sMessageParameters& pParam) override;
54
55 static fsIComponent* create(fsCEntity* pParent);
56
59
60private:
61
62 void requirementRemove(const fsStr& pRequirementName);
63 void requirementClear(const fsStr& pRequirementName);
64 void requirementRegister(const fsStr& pRequirementName);
65 void requirementStatusProcess(const fsStr& pRequirementName, fsBool pRequirementMet);
66 fsBool allRequirementsMetCheck();
67
68 std::map<fsStr, fsBool> mCompletionList;
69
70 fsBool mPlayerControlledLevelCompleteKey;
71 fsBool mCongratulationsGui;
72};
73
74#endif
Definition fsCEntity.h:39
Definition fsCUniqueId.h:21
fsIComponent(fsCEntity *pParent)
Definition fsIComponent.cpp:86
fsIMessageListenerComponent(fsCEntity *pParent)
Definition fsIMessageListenerComponent.cpp:9
Definition fsStr.h:23
void listenersDeregisterDo() override
Definition gfCLevelCompleteCheckerComponent.cpp:44
gfCLevelCompleteCheckerComponent(fsCEntity *pParent)
Definition gfCLevelCompleteCheckerComponent.cpp:162
static const fsCUniqueId mRequirementRegisterMsg
Definition gfCLevelCompleteCheckerComponent.h:43
static const fsCUniqueId mTypeId
Definition gfCLevelCompleteCheckerComponent.h:36
static const fsCUniqueId mLevelCompleterCongratsMsg
Definition gfCLevelCompleteCheckerComponent.h:41
friend class fsCComponentFactory
Definition gfCLevelCompleteCheckerComponent.h:21
static const fsCUniqueId mLevelCompleterMsg
Definition gfCLevelCompleteCheckerComponent.h:39
static fsIComponent * create(fsCEntity *pParent)
Definition gfCLevelCompleteCheckerComponent.cpp:157
void playerControlledLevelCompleteKeyRegister()
Definition gfCLevelCompleteCheckerComponent.cpp:39
static const fsCUniqueId mRequirementMetMsg
Definition gfCLevelCompleteCheckerComponent.h:44
static const fsCUniqueId mLevelCompleteWaitingMsg
Definition gfCLevelCompleteCheckerComponent.h:38
void congratulationsGuiRegister()
Definition gfCLevelCompleteCheckerComponent.cpp:34
fsBool playerControlledLevelCompleteKeyPressed()
Definition gfCLevelCompleteCheckerComponent.cpp:23
static const fsCUniqueId mRequirementClearMsg
Definition gfCLevelCompleteCheckerComponent.h:45
virtual ~gfCLevelCompleteCheckerComponent()
Definition gfCLevelCompleteCheckerComponent.cpp:169
void listenersRegisterDo() override
Definition gfCLevelCompleteCheckerComponent.cpp:53
static const fsCUniqueId mRequirementRemoveMsg
Definition gfCLevelCompleteCheckerComponent.h:46
static const fsCUniqueId mLevelCompleteWaitingCongratsMsg
Definition gfCLevelCompleteCheckerComponent.h:40
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCLevelCompleteCheckerComponent.cpp:62
bool fsBool
Definition fsBaseTypes.h:26
Definition fsIMessageDispatcher.h:32
sRequirementParam(const fsStr &pName)
Definition gfCLevelCompleteCheckerComponent.h:27
fsStr mRequirementName
Definition gfCLevelCompleteCheckerComponent.h:28