Files
itgmania212121/stepmania/src/Trail.h
T
2004-05-31 20:04:56 +00:00

69 lines
1.4 KiB
C++

#ifndef Trail_H
#define Trail_H
/*
-----------------------------------------------------------------------------
Class: TrialUtil
Desc:
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
Chris Danford
-----------------------------------------------------------------------------
*/
#include "Attack.h"
class Song;
class Steps;
struct TrailEntry
{
TrailEntry():
pSong(NULL),
pSteps(NULL),
bMystery(false),
iLowMeter(-1),
iHighMeter(-1),
dc(DIFFICULTY_INVALID)
{
}
void GetAttackArray( AttackArray &out ) const;
Song* pSong;
Steps* pSteps;
CString Modifiers;
AttackArray Attacks;
bool bMystery;
/* These represent the meter and difficulty used by the course to pick the
* steps; if you want the real difficulty and meter, look at pSteps. */
int iLowMeter;
int iHighMeter;
Difficulty dc;
bool operator== ( const TrailEntry &rhs ) const;
bool operator!= ( const TrailEntry &rhs ) const { return !(*this==rhs); }
};
class Trail
{
public:
StepsType m_StepsType;
CourseDifficulty m_CourseDifficulty;
vector<TrailEntry> m_vEntries;
Trail()
{
m_StepsType = STEPS_TYPE_INVALID;
m_CourseDifficulty = COURSE_DIFFICULTY_INVALID;
}
RadarValues GetRadarValues() const;
float GetAverageMeter() const;
int GetTotalMeter() const;
float GetLengthSeconds() const;
void GetDisplayBpms( DisplayBpms &AddTo );
};
#endif