Files
itgmania212121/stepmania/src/NoteFieldPositioning.h
T

58 lines
1.1 KiB
C++
Raw Normal View History

#ifndef NOTEFIELD_POSITIONING_H
#define NOTEFIELD_POSITIONING_H
#include "PlayerNumber.h"
#include "StyleDef.h"
#include "PlayerNumber.h"
2003-04-10 08:49:25 +00:00
#include "Style.h"
2003-04-14 22:23:13 +00:00
#include "Actor.h"
2003-04-10 08:49:25 +00:00
#include <set>
class NoteFieldPositioning
{
2003-04-10 08:49:25 +00:00
struct Mode
{
Mode();
bool MatchesCurrentGame() const;
2003-04-14 22:23:13 +00:00
void BeginDrawTrack(int tn);
void EndDrawTrack(int tn);
2003-04-10 08:49:25 +00:00
CString name;
set<Style> Styles;
2003-04-14 22:23:13 +00:00
Actor m_Center;
Actor m_CenterTrack[MAX_NOTE_TRACKS];
2003-04-10 08:49:25 +00:00
/* 0 = no perspective */
2003-04-14 22:23:13 +00:00
float m_fFov;
Actor m_Position;
Actor m_PositionTrack[MAX_NOTE_TRACKS];
CString Backdrop;
Actor m_PositionBackdrop;
2003-04-10 08:49:25 +00:00
};
vector<Mode> Modes;
public:
2003-04-10 08:49:25 +00:00
NoteFieldPositioning(CString fn);
2003-04-10 08:49:25 +00:00
/* Get the mode number for the given positioning type (for the current
* game and style). */
int GetID(const CString &name) const;
int GetID(PlayerNumber pn) const;
2003-04-14 22:23:13 +00:00
void BeginDrawTrack(PlayerNumber pn, int tn);
void EndDrawTrack(PlayerNumber pn, int tn);
CString GetBackdropBGA(PlayerNumber pn) const;
void BeginDrawBackdrop(PlayerNumber pn);
void EndDrawBackdrop(PlayerNumber pn);
2003-04-10 08:49:25 +00:00
void GetNamesForCurrentGame(vector<CString> &IDs);
};
#endif