Fission FSN
Loading...
Searching...
No Matches
gfCInstantInventoryMiniGameLogicComponent.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: gfCInstantInventoryMiniGameLogicComponent.h
4*
5* Purpose: Logic component added to a scene to control the
6* instant inventory entities as a mini game - need to
7* track them and reset if required
8*
9*********************************************************************/
10
11#ifndef gfCInstantInventoryMiniGameLogicComponenthdr
12#define gfCInstantInventoryMiniGameLogicComponenthdr
13
14#include "../gfIMinigameLogic.h"
15
16
18{
19 friend class fsCComponentFactory;
20
21public:
22
23 static const fsCUniqueId mTypeId;
24
25protected:
26
27 void skipDo() override;
28
29 void listenersRegisterDo() override;
30 void listenersDeregisterDo() override;
31 fsBool messageProcessDo(const fsCUniqueId& pMessageType,
32 const fsIMessageDispatcher::sMessageParameters& pParam) override;
33
34 void resetDo() override;
35 void deserialiseDo() override;
36 void serialiseDo() override;
37
38 void initialiseFromVariableTableDo(const fsCVariableTable& pVars) override;
39
40 static fsIComponent* create(fsCEntity* pParent);
41
44
45private:
46
47 void locksBreakAndKeysConsume();
48
49 void instantInventoryEntsCollect();
50
51 void completionMessageSend(fsBool pComplete) const;
52 void completionRequirementRegister() const;
53
54 fsBool mSkip;
55 fsBool mReset;
56 fsS32 mLocksBroken;
57
58 std::vector<fsCEntity*> mInstantInventoryEnts;
59 std::vector<fsCEntity*> mLockEnts;
60};
61
62#endif
Definition fsCEntity.h:39
Definition fsCUniqueId.h:21
Definition fsCVariableTable.h:27
fsIComponent(fsCEntity *pParent)
Definition fsIComponent.cpp:86
void deserialiseDo() override
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:49
static fsIComponent * create(fsCEntity *pParent)
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:127
static const fsCUniqueId mTypeId
Definition gfCInstantInventoryMiniGameLogicComponent.h:23
friend class fsCComponentFactory
Definition gfCInstantInventoryMiniGameLogicComponent.h:19
void skipDo() override
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:22
void listenersDeregisterDo() override
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:77
gfCInstantInventoryMiniGameLogicComponent(fsCEntity *pParent)
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:132
void listenersRegisterDo() override
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:71
void serialiseDo() override
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:43
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:83
virtual ~gfCInstantInventoryMiniGameLogicComponent()
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:140
void initialiseFromVariableTableDo(const fsCVariableTable &pVars) override
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:61
void resetDo() override
Definition gfCInstantInventoryMiniGameLogicComponent.cpp:17
gfIMinigameLogic(fsCEntity *pParent)
Definition gfIMinigameLogic.cpp:38
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsIMessageDispatcher.h:32