Files
itgmania212121/stepmania/src/NoteField.h
T

63 lines
1.9 KiB
C++
Raw Normal View History

2002-04-28 20:42:32 +00:00
#pragma once
2002-04-16 17:31:00 +00:00
/*
-----------------------------------------------------------------------------
Class: NoteField
2002-04-28 20:42:32 +00:00
Desc: A stream of ColorNotes that scrolls past Y==0.
2002-04-16 17:31:00 +00:00
2002-05-19 01:59:48 +00:00
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
2002-04-16 17:31:00 +00:00
Chris Danford
-----------------------------------------------------------------------------
*/
#include "Sprite.h"
#include "ActorFrame.h"
#include "Song.h"
#include "BitmapText.h"
2002-07-23 01:41:40 +00:00
#include "PrefsManager.h"
2002-04-16 17:31:00 +00:00
#include "StyleDef.h"
2002-04-28 20:42:32 +00:00
#include "ColorNote.h"
2002-04-16 17:31:00 +00:00
#include "BitmapText.h"
2002-05-19 01:59:48 +00:00
#include "Quad.h"
2002-04-16 17:31:00 +00:00
#include "ArrowEffects.h"
2002-08-01 03:15:27 +00:00
#include "NoteDataWithScoring.h"
2002-04-16 17:31:00 +00:00
2002-08-01 03:15:27 +00:00
class NoteField : public NoteDataWithScoring, public ActorFrame
2002-04-16 17:31:00 +00:00
{
public:
NoteField();
2002-07-28 20:28:37 +00:00
virtual void Update( float fDeltaTime );
2002-05-19 01:59:48 +00:00
virtual void DrawPrimitives();
2002-04-16 17:31:00 +00:00
2002-07-28 20:28:37 +00:00
void Load( NoteData* pNoteData, PlayerNumber pn, int iPixelsToDrawBehind, int iPixelsToDrawAhead );
2002-04-16 17:31:00 +00:00
void RemoveTapNoteRow( int iIndex );
2002-08-01 03:15:27 +00:00
bool m_bIsHoldingHoldNote[MAX_HOLD_NOTES]; // hack: Need this to prevent hold note jitter
2002-04-16 17:31:00 +00:00
float m_fBeginMarker, m_fEndMarker; // only used with MODE_EDIT
2002-07-02 00:27:58 +00:00
float m_fOverrideAdd; // -1 of not overriding
2002-06-27 17:49:10 +00:00
2002-04-16 17:31:00 +00:00
protected:
2002-04-28 20:42:32 +00:00
inline void CreateTapNoteInstance( ColorNoteInstance &cni, const int iCol, const float fIndex, const D3DXCOLOR color = D3DXCOLOR(-1,-1,-1,-1) );
inline void CreateHoldNoteInstance( ColorNoteInstance &cni, const bool bActive, const float fIndex, const HoldNote &hn, const float fHoldNoteLife );
2002-04-16 17:31:00 +00:00
inline void DrawMeasureBar( const int iIndex, const int iMeasureNo );
inline void DrawMarkerBar( const int iIndex );
2002-06-29 11:59:09 +00:00
inline void DrawBPMText( const int iIndex, const float fBPM );
inline void DrawFreezeText( const int iIndex, const float fBPM );
2002-04-16 17:31:00 +00:00
2002-07-28 20:28:37 +00:00
PlayerNumber m_PlayerNumber;
2002-07-27 19:29:51 +00:00
int m_iPixelsToDrawBehind;
int m_iPixelsToDrawAhead;
2002-04-16 17:31:00 +00:00
// color arrows
2002-04-28 20:42:32 +00:00
ColorNote m_ColorNote[MAX_NOTE_TRACKS];
2002-04-16 17:31:00 +00:00
// used in MODE_EDIT
2002-06-14 22:25:22 +00:00
Quad m_rectMeasureBar;
2002-04-16 17:31:00 +00:00
BitmapText m_textMeasureNumber;
2002-06-14 22:25:22 +00:00
Quad m_rectMarkerBar;
2002-04-16 17:31:00 +00:00
};