[warps] Prepare text code.
This commit is contained in:
@@ -963,6 +963,7 @@ RoutineNoteSkinP2=RoutineSkinP2()
|
|||||||
BPMColor=color("1,0,0,1")
|
BPMColor=color("1,0,0,1")
|
||||||
StopColor=color("0.8,0.8,0,1")
|
StopColor=color("0.8,0.8,0,1")
|
||||||
DelayColor=color("0,0.8,0.8,1")
|
DelayColor=color("0,0.8,0.8,1")
|
||||||
|
WarpColor=color("1,0,0.5,1")
|
||||||
TimeSignatureColor=color("1,0.55,0,1")
|
TimeSignatureColor=color("1,0.55,0,1")
|
||||||
TickcountColor=color("0,1,0,1")
|
TickcountColor=color("0,1,0,1")
|
||||||
ComboColor=color("0.55,1,0,1")
|
ComboColor=color("0.55,1,0,1")
|
||||||
@@ -970,6 +971,7 @@ ComboColor=color("0.55,1,0,1")
|
|||||||
BPMIsLeftSide=true
|
BPMIsLeftSide=true
|
||||||
StopIsLeftSide=true
|
StopIsLeftSide=true
|
||||||
DelayIsLeftSide=true
|
DelayIsLeftSide=true
|
||||||
|
WarpIsLeftSide=false
|
||||||
TimeSignatureIsLeftSide=true
|
TimeSignatureIsLeftSide=true
|
||||||
TickcountIsLeftSide=false
|
TickcountIsLeftSide=false
|
||||||
ComboIsLeftSide=false
|
ComboIsLeftSide=false
|
||||||
@@ -977,6 +979,7 @@ ComboIsLeftSide=false
|
|||||||
BPMOffsetX=60
|
BPMOffsetX=60
|
||||||
StopOffsetX=10
|
StopOffsetX=10
|
||||||
DelayOffsetX=10
|
DelayOffsetX=10
|
||||||
|
WarpOffsetX=60
|
||||||
TimeSignatureOffsetX=30
|
TimeSignatureOffsetX=30
|
||||||
TickcountOffsetX=10
|
TickcountOffsetX=10
|
||||||
ComboOffsetX=30
|
ComboOffsetX=30
|
||||||
|
|||||||
@@ -422,18 +422,21 @@ void NoteField::DrawAreaHighlight( int iStartBeat, int iEndBeat )
|
|||||||
static ThemeMetric<RageColor> BPM_COLOR ( "NoteField", "BPMColor" );
|
static ThemeMetric<RageColor> BPM_COLOR ( "NoteField", "BPMColor" );
|
||||||
static ThemeMetric<RageColor> STOP_COLOR ( "NoteField", "StopColor" );
|
static ThemeMetric<RageColor> STOP_COLOR ( "NoteField", "StopColor" );
|
||||||
static ThemeMetric<RageColor> DELAY_COLOR ( "NoteField", "DelayColor" );
|
static ThemeMetric<RageColor> DELAY_COLOR ( "NoteField", "DelayColor" );
|
||||||
|
static ThemeMetric<RageColor> WARP_COLOR ( "NoteField", "WarpColor" );
|
||||||
static ThemeMetric<RageColor> TIME_SIGNATURE_COLOR ( "NoteField", "TimeSignatureColor" );
|
static ThemeMetric<RageColor> TIME_SIGNATURE_COLOR ( "NoteField", "TimeSignatureColor" );
|
||||||
static ThemeMetric<RageColor> TICKCOUNT_COLOR ( "NoteField", "TickcountColor" );
|
static ThemeMetric<RageColor> TICKCOUNT_COLOR ( "NoteField", "TickcountColor" );
|
||||||
static ThemeMetric<RageColor> COMBO_COLOR ( "NoteField", "ComboColor" );
|
static ThemeMetric<RageColor> COMBO_COLOR ( "NoteField", "ComboColor" );
|
||||||
static ThemeMetric<bool> BPM_IS_LEFT_SIDE ( "NoteField", "BPMIsLeftSide" );
|
static ThemeMetric<bool> BPM_IS_LEFT_SIDE ( "NoteField", "BPMIsLeftSide" );
|
||||||
static ThemeMetric<bool> STOP_IS_LEFT_SIDE ( "NoteField", "StopIsLeftSide" );
|
static ThemeMetric<bool> STOP_IS_LEFT_SIDE ( "NoteField", "StopIsLeftSide" );
|
||||||
static ThemeMetric<bool> DELAY_IS_LEFT_SIDE ( "NoteField", "DelayIsLeftSide" );
|
static ThemeMetric<bool> DELAY_IS_LEFT_SIDE ( "NoteField", "DelayIsLeftSide" );
|
||||||
|
static ThemeMetric<bool> WARP_IS_LEFT_SIDE ( "NoteField", "WarpIsLeftSide" );
|
||||||
static ThemeMetric<bool> TIME_SIGNATURE_IS_LEFT_SIDE ( "NoteField", "TimeSignatureIsLeftSide" );
|
static ThemeMetric<bool> TIME_SIGNATURE_IS_LEFT_SIDE ( "NoteField", "TimeSignatureIsLeftSide" );
|
||||||
static ThemeMetric<bool> TICKCOUNT_IS_LEFT_SIDE ( "NoteField", "TickcountIsLeftSide" );
|
static ThemeMetric<bool> TICKCOUNT_IS_LEFT_SIDE ( "NoteField", "TickcountIsLeftSide" );
|
||||||
static ThemeMetric<bool> COMBO_IS_LEFT_SIDE ( "NoteField", "ComboIsLeftSide" );
|
static ThemeMetric<bool> COMBO_IS_LEFT_SIDE ( "NoteField", "ComboIsLeftSide" );
|
||||||
static ThemeMetric<float> BPM_OFFSETX ( "NoteField", "BPMOffsetX" );
|
static ThemeMetric<float> BPM_OFFSETX ( "NoteField", "BPMOffsetX" );
|
||||||
static ThemeMetric<float> STOP_OFFSETX ( "NoteField", "StopOffsetX" );
|
static ThemeMetric<float> STOP_OFFSETX ( "NoteField", "StopOffsetX" );
|
||||||
static ThemeMetric<float> DELAY_OFFSETX ( "NoteField", "DelayOffsetX" );
|
static ThemeMetric<float> DELAY_OFFSETX ( "NoteField", "DelayOffsetX" );
|
||||||
|
static ThemeMetric<float> WARP_OFFSETX ( "NoteField", "WarpOffsetX" );
|
||||||
static ThemeMetric<float> TIME_SIGNATURE_OFFSETX ( "NoteField", "TimeSignatureOffsetX" );
|
static ThemeMetric<float> TIME_SIGNATURE_OFFSETX ( "NoteField", "TimeSignatureOffsetX" );
|
||||||
static ThemeMetric<float> TICKCOUNT_OFFSETX ( "NoteField", "TickcountOffsetX" );
|
static ThemeMetric<float> TICKCOUNT_OFFSETX ( "NoteField", "TickcountOffsetX" );
|
||||||
static ThemeMetric<float> COMBO_OFFSETX ( "NoteField", "ComboOffsetX" );
|
static ThemeMetric<float> COMBO_OFFSETX ( "NoteField", "ComboOffsetX" );
|
||||||
@@ -481,6 +484,23 @@ void NoteField::DrawFreezeText( const float fBeat, const float fSecs, const floa
|
|||||||
m_textMeasureNumber.Draw();
|
m_textMeasureNumber.Draw();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void NoteField::DrawWarpText( const float fBeat, const float fNewBeat )
|
||||||
|
{
|
||||||
|
const float fYOffset = ArrowEffects::GetYOffset( m_pPlayerState, 0, fBeat );
|
||||||
|
const float fYPos = ArrowEffects::GetYPos( m_pPlayerState, 0, fYOffset, m_fYReverseOffsetPixels );
|
||||||
|
const float fZoom = ArrowEffects::GetZoom( m_pPlayerState );
|
||||||
|
const float xBase = GetWidth()/2.f;
|
||||||
|
const float xOffset = WARP_OFFSETX * fZoom;
|
||||||
|
|
||||||
|
m_textMeasureNumber.SetZoom( fZoom );
|
||||||
|
m_textMeasureNumber.SetHorizAlign( WARP_IS_LEFT_SIDE ? align_right : align_left );
|
||||||
|
m_textMeasureNumber.SetDiffuse( WARP_COLOR );
|
||||||
|
m_textMeasureNumber.SetGlow( RageColor(1,1,1,RageFastCos(RageTimer::GetTimeSinceStartFast()*2)/2+0.5f) );
|
||||||
|
m_textMeasureNumber.SetText( ssprintf("%.3f", fNewBeat) );
|
||||||
|
m_textMeasureNumber.SetXY( (WARP_IS_LEFT_SIDE ? -xBase - xOffset : xBase + xOffset), fYPos );
|
||||||
|
m_textMeasureNumber.Draw();
|
||||||
|
}
|
||||||
|
|
||||||
void NoteField::DrawTimeSignatureText( const float fBeat, int iNumerator, int iDenominator )
|
void NoteField::DrawTimeSignatureText( const float fBeat, int iNumerator, int iDenominator )
|
||||||
{
|
{
|
||||||
const float fYOffset = ArrowEffects::GetYOffset( m_pPlayerState, 0, fBeat );
|
const float fYOffset = ArrowEffects::GetYOffset( m_pPlayerState, 0, fBeat );
|
||||||
@@ -771,6 +791,19 @@ void NoteField::DrawPrimitives()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Warp text
|
||||||
|
const vector<WarpSegment> &aWarpSegments = GAMESTATE->m_pCurSong->m_Timing.m_WarpSegments;
|
||||||
|
for( unsigned i=0; i<aWarpSegments.size(); i++ )
|
||||||
|
{
|
||||||
|
if( aWarpSegments[i].m_iStartRow >= iFirstRowToDraw &&
|
||||||
|
aWarpSegments[i].m_iStartRow <= iLastRowToDraw)
|
||||||
|
{
|
||||||
|
float fBeat = NoteRowToBeat(aWarpSegments[i].m_iStartRow);
|
||||||
|
if( IS_ON_SCREEN(fBeat) )
|
||||||
|
DrawWarpText( fBeat, aWarpSegments[i].m_fWarpBeats );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Time Signature text
|
// Time Signature text
|
||||||
const vector<TimeSignatureSegment> &vTimeSignatureSegments = GAMESTATE->m_pCurSong->m_Timing.m_vTimeSignatureSegments;
|
const vector<TimeSignatureSegment> &vTimeSignatureSegments = GAMESTATE->m_pCurSong->m_Timing.m_vTimeSignatureSegments;
|
||||||
for( unsigned i=0; i<vTimeSignatureSegments.size(); i++ )
|
for( unsigned i=0; i<vTimeSignatureSegments.size(); i++ )
|
||||||
|
|||||||
@@ -57,6 +57,7 @@ protected:
|
|||||||
void DrawAreaHighlight( int iStartBeat, int iEndBeat );
|
void DrawAreaHighlight( int iStartBeat, int iEndBeat );
|
||||||
void DrawBPMText( const float fBeat, const float fBPM );
|
void DrawBPMText( const float fBeat, const float fBPM );
|
||||||
void DrawFreezeText( const float fBeat, const float fBPM, const float bDelay );
|
void DrawFreezeText( const float fBeat, const float fBPM, const float bDelay );
|
||||||
|
void DrawWarpText( const float fBeat, const float fNewBeat );
|
||||||
void DrawTimeSignatureText( const float fBeat, int iNumerator, int iDenominator );
|
void DrawTimeSignatureText( const float fBeat, int iNumerator, int iDenominator );
|
||||||
void DrawTickcountText( const float fBeat, int iTicks );
|
void DrawTickcountText( const float fBeat, int iTicks );
|
||||||
void DrawComboText( const float fBeat, int iCombo );
|
void DrawComboText( const float fBeat, int iCombo );
|
||||||
|
|||||||
Reference in New Issue
Block a user