Fission FSN
Loading...
Searching...
No Matches
gfIHogLevel.h
Go to the documentation of this file.
1/********************************************************************
2*
3* Created: 7/4/2014 13:32
4*
5* File: gfIHogLevel.h
6*
7* Author: Mick Waites
8*
9* Purpose: Create and control game entities.
10*
11*********************************************************************/
12
13#ifndef gfIHogLevelhdr
14#define gfIHogLevelhdr
15
16#include <vector>
17
18#include <fsCore/fsStr.h>
19
21
23{
24 friend class fsCComponentFactory;
26 friend class gfCHogCoreMain;
27 friend class gfCSimpleCoreMain;
28
29public:
30
31 fsCEntity* const parentGet() const;
32 fsStr levelNameGet() const;
33
34 void skip();
36
40 fsStr nextLevelGet() const;
41 const fsStr& levelNameFilenameGet() const { return mLevelName; }
42
43 void abort();
44
45 void levelStateSave();
46 void levelStateRestore(fsStr& pLoadStr);
47
48 virtual ~gfIHogLevel();
49
50 virtual fsStr sceneFolderGet() const;
51 virtual fsStr saveStateKeyGet();
52
53protected:
54
55 void levelCreate(const fsStr& pLevelName);
56
57 void bestRunningTimeSet();
58
59 virtual void skipDo() {}
60 virtual void guiInitDo();
61
62 virtual void levelStateSaveDo();
63
64 fsBool mapLevelGet() const;
65
66 void listenersDeregisterDo() override;
67 void listenersRegisterDo() override;
68 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
69 const fsIMessageDispatcher::sMessageParameters& pParam) override;
70
71 void resetDo() override;
72 void deserialiseDo() override;
73 void serialiseDo() override;
74 void updateDo(fsS32 pDeltaMs) override;
75
76 std::vector<fsCEntity*> minigameEntitiesGet();
77
78 void cheatMenuToggle();
79
80 virtual void abortDo() {}
81 virtual void doLevelCreate() {}
82 virtual void doLevelStateRestore() {}
83 virtual void doPostEntityCreation() {}
84
85 gfIHogLevel(fsCEntity* pParent);
86
87private:
88
89 void jigsawEntitiesBorderSet();
90 void cuttersCut(fsBool pFirstTime);
91 void cuttersStencilCreate();
92
93 void miniGameHelpSet();
94 void guiInit();
95 void guiLoad();
96
97 void entitiesCreateFromCoordsFile();
98
99
100 void tutorialGuiLinkToGui();
101
102 fsStr mLevelName;
103 fsS32 mLevelRunningTime; //total level running time - we can revisit a level
104 fsS32 mRunningTime; //running time for this visit to this level
105 fsS32 mBestTime; //best time to complete this level
106
107 fsBool mSkippedMiniGame;
108 fsBool mWaitingForInterstitialTransition;
109
110 enum eRUN_STATE
111 {
112 eWAITING,
113 eRUNNING,
114 eDONE
115 };
116
117 eRUN_STATE mRunning;
118};
119
120#endif
Definition fsCEntity.h:39
Definition fsCUniqueId.h:21
fsIMessageListenerComponent(fsCEntity *pParent)
Definition fsIMessageListenerComponent.cpp:9
Definition fsStr.h:23
void serialiseDo() override
Definition gfIHogLevel.cpp:111
fsS32 bestLevelRunningTimeGet() const
Definition gfIHogLevel.cpp:118
void resetDo() override
Definition gfIHogLevel.cpp:98
fsCEntity *const parentGet() const
Definition gfIHogLevel.cpp:134
void bestRunningTimeSet()
Definition gfIHogLevel.cpp:89
virtual void levelStateSaveDo()
Definition gfIHogLevel.cpp:322
fsS32 levelRunningTimeGet() const
Definition gfIHogLevel.cpp:123
void deserialiseDo() override
Definition gfIHogLevel.cpp:104
friend class gfCSimpleCoreMain
Definition gfIHogLevel.h:27
friend class fsCComponentFactory
Definition gfIHogLevel.h:24
void skippedEntitiesForceCollect()
Definition gfIHogLevel.cpp:59
void updateDo(fsS32 pDeltaMs) override
Definition gfIHogLevel.cpp:153
void listenersRegisterDo() override
Definition gfIHogLevel.cpp:361
friend class gfCHogCoreMain
Definition gfIHogLevel.h:26
virtual void skipDo()
Definition gfIHogLevel.h:59
void abort()
Definition gfIHogLevel.cpp:205
void skip()
Definition gfIHogLevel.cpp:53
void levelStateRestore(fsStr &pLoadStr)
Definition gfIHogLevel.cpp:340
gfIHogLevel(fsCEntity *pParent)
Definition gfIHogLevel.cpp:498
fsStr nextLevelGet() const
Definition gfIHogLevel.cpp:186
fsBool mapLevelGet() const
Definition gfIHogLevel.cpp:373
friend class gfCDebugJustCollectablesView
Definition gfIHogLevel.h:25
virtual void guiInitDo()
Definition gfIHogLevel.cpp:84
const fsStr & levelNameFilenameGet() const
Definition gfIHogLevel.h:41
virtual void doPostEntityCreation()
Definition gfIHogLevel.h:83
void levelStateSave()
Definition gfIHogLevel.cpp:329
std::vector< fsCEntity * > minigameEntitiesGet()
Definition gfIHogLevel.cpp:139
virtual fsStr saveStateKeyGet()
Definition gfIHogLevel.cpp:317
void cheatMenuToggle()
Definition gfIHogLevel.cpp:191
virtual ~gfIHogLevel()
Definition gfIHogLevel.cpp:510
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfIHogLevel.cpp:380
virtual void abortDo()
Definition gfIHogLevel.h:80
virtual fsStr sceneFolderGet() const
Definition gfIHogLevel.cpp:292
fsS32 totalGameRunningTimeGet() const
Definition gfIHogLevel.cpp:128
void listenersDeregisterDo() override
Definition gfIHogLevel.cpp:349
fsStr levelNameGet() const
Definition gfIHogLevel.cpp:65
void levelCreate(const fsStr &pLevelName)
Definition gfIHogLevel.cpp:412
virtual void doLevelStateRestore()
Definition gfIHogLevel.h:82
virtual void doLevelCreate()
Definition gfIHogLevel.h:81
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsIMessageDispatcher.h:32