14#ifndef gfCWordSearchMinigameLoaderComponenthdr
15#define gfCWordSearchMinigameLoaderComponenthdr
86 std::vector<fsCEntity*> mLines;
87 std::vector<gfCMinigameLetterTileComponent*> mTiles;
88 std::vector<fsPoint> mGridPoints;
90 fsSSelection() =
default;
91 ~fsSSelection() =
default;
94 void tilesTint(fsSColour4B
const& pTint);
98 static const fsSColour4B mTileTint;
100 std::vector<fsPoint> selectionLineSmooth(fsSSelection& pSelection);
101 void selectionLineCreate(fsSSelection& pSelection, fsSColour4B
const& pTint);
104 void snakeWordSelect(fsPoint
const& pTapPos);
105 fsBool legalSnakeWord(
const fsPoint& pTapPos);
107 void tilesSelectionHighlight(fsPoint tileAlignedStart, fsPoint tileAlignedEnd);
109 void gridInit(std::vector<std::vector<fsStr>>& pTileGrid, fsPoint
const& pOrigin, fsPoint
const& pGridDimensions);
110 fsStr wordCandidate();
112 void selectionAdjust(fsCEntity* pSelection, fsPoint
const& pStart, fsPoint
const& pEnd);
113 fsCEntity* selectionSpriteCreate(fsSSelection& pSelection,
const fsCResourceName& pBrushName,fsSColour4B
const& pTint);
114 void selectionSegmentCreate(fsSSelection& pSelection, fsPoint
const& pStart, fsPoint
const& pEnd, fsSColour4B
const& pTint);
115 void selectionCapAdjust(fsCEntity* pSelection, fsPoint
const& pPos,
fsF32 pAngle);
116 fsPoint selectionCapOffsetGet(fsCEntity* pSelection, fsPoint
const& pStart, fsPoint
const& pEnd)
const;
117 fsPoint selectionEndConstrainedGet(fsPoint
const& pStart, fsPoint
const& pEnd)
const;
118 fsBool selectionDiagonalGet(fsPoint
const& pSize)
const;
119 fsF32 selectionAngleGet(fsPoint
const& pStart, fsPoint
const& pEnd)
const;
120 fsBool selection2Available()
const;
123 gfCMinigameLetterTileComponent*
const tileComponentGet(fsCEntity* pEnt);
124 gfCMinigameLetterTileComponent*
const tileCreate(fsPoint
const& pGridPos,
125 std::vector<std::vector<fsStr>>& pLoadingLetterGrid);
127 void selectionsClear();
128 void selectionRecreate(fsStr& pSelectedWord);
129 void selectionsRecreate();
130 fsBool wordFindInGrid(fsSSelection& pSelection);
132 void wordsEntitiesGenerate();
134 static const fsStr mSelectionChunkMarker;
136 fsStr mTileSet = {
""};
139 fsGrid<gfCMinigameLetterTileComponent*> mTileGrid;
140 std::vector<fsStr> mHiddenWords;
142 fsSSelection mHintSelection;
143 fsSSelection mActiveSelection;
145 std::vector<std::unique_ptr<fsSSelection>> mFoundWords;
147 std::unique_ptr<fsCResourceName> mHilight;
148 std::unique_ptr<fsCResourceName> mHilight2;
149 std::unique_ptr<fsCResourceName> mHilight2End;
Definition fsCEntity.h:39
Definition fsCResourceName.h:32
Definition fsCUniqueId.h:21
Definition fsCVariableTable.h:27
Definition fsIComponent.h:26
Definition gfCMazeMinigameGenerateComponent.h:21
Definition gfCMinigameLetterTileComponent.h:20
Definition gfCWordSearchMinigameGenerateComponent.h:20
void initialiseFromVariableTableDo(const fsCVariableTable &pVars) override
Definition gfCWordSearchMinigameLogicComponent.cpp:961
void resetDo() override
Definition gfCWordSearchMinigameLogicComponent.cpp:576
fsBool messageProcessDo(const fsCUniqueId &pMessageType, const fsIMessageDispatcher::sMessageParameters &pParam) override
Definition gfCWordSearchMinigameLogicComponent.cpp:1035
friend class fsCComponentFactory
Definition gfCWordSearchMinigameLogicComponent.h:33
fsBool hintActivate()
Definition gfCWordSearchMinigameLogicComponent.cpp:588
static fsIComponent * create(fsCEntity *pParent)
Definition gfCWordSearchMinigameLogicComponent.cpp:1041
void listenersRegisterDo() override
Definition gfCWordSearchMinigameLogicComponent.cpp:1025
static const fsStr mSelectionPrefix
Definition gfCWordSearchMinigameLogicComponent.h:44
void tileTap(const fsPoint &pTapPos)
Definition gfCWordSearchMinigameLogicComponent.cpp:278
void tilesSelect(gfIOpaqueLensComponent::fsSSwipe const &pSwipe)
Definition gfCWordSearchMinigameLogicComponent.cpp:322
fsStr tileSetGet() const
Definition gfCWordSearchMinigameLogicComponent.h:55
void deserialiseDo() override
Definition gfCWordSearchMinigameLogicComponent.cpp:886
void listenersDeregisterDo() override
Definition gfCWordSearchMinigameLogicComponent.cpp:1030
std::vector< fsCEntity * > selectedWordsGet() const
Definition gfCWordSearchMinigameLogicComponent.cpp:91
void wordSelected()
Definition gfCWordSearchMinigameLogicComponent.cpp:145
void serialiseDo() override
Definition gfCWordSearchMinigameLogicComponent.cpp:892
static const fsStr mEntityPrefix
Definition gfCWordSearchMinigameLogicComponent.h:43
~gfCWordSearchMinigameLogicComponent()
Definition gfCWordSearchMinigameLogicComponent.cpp:1051
gfCWordSearchMinigameLogicComponent(fsCEntity *pParent)
Definition gfCWordSearchMinigameLogicComponent.cpp:1046
void initialiseWithGenerator(gfCWordSearchMinigameGenerateComponent *pGenerator)
Definition gfCWordSearchMinigameLogicComponent.cpp:903
void tilesHilite(gfIOpaqueLensComponent::fsSSwipe const &pSwipe)
Definition gfCWordSearchMinigameLogicComponent.cpp:290
static const fsCUniqueId mTypeId
Definition gfCWordSearchMinigameLogicComponent.h:42
void skipDo() override
Definition gfCWordSearchMinigameLogicComponent.cpp:659
gfIMinigameLogic(fsCEntity *pParent)
Definition gfIMinigameLogic.cpp:38
bool fsBool
Definition fsBaseTypes.h:26
float fsF32
Definition fsBaseTypes.h:28
Definition fsIMessageDispatcher.h:32
Definition fsIMessageDispatcher.h:39
Definition gfCWordSearchMinigameLogicComponent.h:38
fsCEntity * mEnt
Definition gfCWordSearchMinigameLogicComponent.h:39
Definition gfIOpaqueLensComponent.h:24