/********************************************************************
*
* File: fsCTotalScore.h
*
* Purpose: Debug tip to add up scores so we know what the total
* is
*
*********************************************************************/
#ifndef fsCTotalScorehdr
#define fsCTotalScorehdr
#include <map>
#include <fsCore/fsBaseTypes.h>
#include "gfCLevelSequencerComponent.h"
class fsCTotalScore : public gfCLevelSequencerComponent
{
public:
fsS32 classifiedSilhouetteCountGet(fsStr pClassification) const;
fsS32 totalScoreGet() const { return mTotalHOGScore + mTotalMIGScore + mTotalHOGBonus; }
fsS32 totalHOGScoreGet() const { return mTotalHOGScore; }
fsS32 totalMIGScoreGet() const { return mTotalMIGScore; }
fsS32 totalHOGBonuScoreGet() const { return mTotalHOGBonus; }
fsS32 bonuItemCountGet() const { return mBonusItemCount; }
fsS32 silhouetteItemCountGet() const { return mSilhouetteCount; }
void potentialTotalScoreCalculate();
virtual ~fsCTotalScore();<--- Destructor in derived class
fsCTotalScore();
protected:
gfCLevelSequencerLevelComponent* const levelSequencerLevelCreate(const fsStr& pPath, const fsStr& pName) override;
private:
void silhouetteItemsCollate(std::map<fsStr, fsS32>& pLevelClassification);
std::map<fsStr, fsS32> mClassifiedSilhouettes;
fsS32 mSilhouetteCount;
fsS32 mBonusItemCount;
fsS32 mTotalHOGScore;
fsS32 mTotalMIGScore;
fsS32 mTotalHOGBonus;
};
#endif