/********************************************************************
*
* File: fsCLevelSequencerMapLevelComponent.h
*
* Purpose: Map navigation level sequence level
*
*********************************************************************/
#ifndef fsCLevelSequencerMapLevelComponenthdr
#define fsCLevelSequencerMapLevelComponenthdr
#include "../gfCLevelSequencerLevelComponent.h"
class fsCEntity;
struct fsPoint;
class gfCLevelSequencerMapLevelComponent : public gfCLevelSequencerLevelComponent
{
friend class gfIAutoTestLevelUserInputComponent;
public:
static const fsStr mLevPrefix;
static fsStr iconFileNameGet(const fsStr& pLevelname, const fsStr& pFolder);
static fsStr newIconFileNameGet(const fsStr& pLevelname);
static fsStr iconFileNameGet(const fsStr& pLevelname);
void rollOverSet(fsBool pOver);
fsS32 widthGet() const;
void levelIconAlphaSet(fsF32 pVal);
void activeGlowUpdate(fsS32 pTime);
void infoSet(fsBool pCurrLev);
fsBool visitedGet() { return mVisited; }
void visibilitySet(fsBool pVisibility);
void posSet(const fsPoint& pPos);
void levelIconEntityCreate(fsCEntity* pParent, const fsStr& pLayoutFile, fsBool pCurrLev);
gfCLevelSequencerMapLevelComponent(const fsStr& pLevelPath, const fsStr& pLevelFolder);
virtual ~gfCLevelSequencerMapLevelComponent();<--- Destructor in derived class
protected:
fsStr levelNameGetDo() const override;
private:
void levelNameSet();
void starRatingSet();
void bonusBonusSet();
void starInit(const fsStr& pName, fsBool pVisible);
fsBool mVisited;
fsCEntity* mLevelIconEntity;
};
#endif