Fission FSN
Loading...
Searching...
No Matches
gfCAnagramController.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: gfCAnagramController.h
4*
5* Purpose: Create and control anagram mini game
6*
7*********************************************************************/
8
9#ifndef gfCAnagramControllerhdr
10#define gfCAnagramControllerhdr
11
13
15{
16 friend class fsCComponentFactory;
17
18public:
19
20 static const fsCUniqueId mTypeId;
21 static const fsStr mEntityPrefix;
22
23 const fsStr& tileSetGet() const { return mTileSet; }
24
25protected:
26
27 void listenersRegisterDo() override;
28 void listenersDeregisterDo() override;
29 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
30 const fsIMessageDispatcher::sMessageParameters& pParam) override;
31
32 void deserialiseDo() override;
33 void serialiseDo() override;
34
35 void initialiseFromVariableTableDo(const fsCVariableTable& pVars) override;
36
37 static fsIComponent* create(fsCEntity* pParent);
38
40 virtual ~gfCAnagramController();
41
42private:
43
44 void collectableAnagramsCreate();
45
46 void nextAnagramInit(const fsStr& pAnagram);
47
48 fsCEntity* const mainSceneEntGet() const;
49
50 void anagramsStringsCreateFromLevelFile(const fsCVariableTable& pVars);
51
52 struct fsAnagram
53 {
54 fsStr mAnagram;
55 fsStr mSolution;
56 fsAnagram(const fsStr& pAnagram, const fsStr& pSolution);
57 };
58
59 std::vector<fsAnagram> mAnagrams;
60
61 fsStr mTileSet;
62};
63
64#endif
Definition fsCEntity.h:39
Definition fsCUniqueId.h:21
Definition fsCVariableTable.h:27
Definition fsIComponent.h:26
fsIMessageListenerComponent(fsCEntity *pParent)
Definition fsIMessageListenerComponent.cpp:9
Definition fsStr.h:23
const fsStr & tileSetGet() const
Definition gfCAnagramController.h:23
void listenersRegisterDo() override
Definition gfCAnagramController.cpp:18
virtual ~gfCAnagramController()
Definition gfCAnagramController.cpp:121
static fsIComponent * create(fsCEntity *pParent)
Definition gfCAnagramController.cpp:110
friend class fsCComponentFactory
Definition gfCAnagramController.h:16
static const fsStr mEntityPrefix
Definition gfCAnagramController.h:21
void listenersDeregisterDo() override
Definition gfCAnagramController.cpp:24
static const fsCUniqueId mTypeId
Definition gfCAnagramController.h:20
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCAnagramController.cpp:45
gfCAnagramController(fsCEntity *pParent)
Definition gfCAnagramController.cpp:115
void serialiseDo() override
Definition gfCAnagramController.cpp:62
void initialiseFromVariableTableDo(const fsCVariableTable &pVars) override
Definition gfCAnagramController.cpp:102
void deserialiseDo() override
Definition gfCAnagramController.cpp:57
bool fsBool
Definition fsBaseTypes.h:26
Definition fsIMessageDispatcher.h:32