show per-diffculty award on Eval screen every time it's received (not just the first time)

clean up ScreenEval PR and MR graphics
clean up Actor shadow parameters
This commit is contained in:
Chris Danford
2004-03-20 02:59:08 +00:00
parent b6e2805cd5
commit 2929bacb08
25 changed files with 273 additions and 276 deletions
+2 -9
View File
@@ -52,8 +52,7 @@ void Actor::Reset()
m_effectColor2 = RageColor(1,1,1,1);
m_bHidden = false;
m_bShadow = false;
m_fShadowLength = 4;
m_fShadowLength = 0;
m_bIsAnimating = true;
m_fHibernateSecondsLeft = 0;
@@ -601,13 +600,7 @@ void Actor::SetEffectPulse( float fPeriod, float fMinZoom, float fMaxZoom )
void Actor::SetShadowLength( float fLength )
{
if( fLength==0 )
m_bShadow = false;
else
{
m_fShadowLength = fLength;
m_bShadow = true;
}
m_fShadowLength = fLength;
}
void Actor::AddRotationH( float rot )
+1 -3
View File
@@ -273,7 +273,6 @@ public:
bool GetHidden() const { return m_bHidden; }
void SetHidden( bool b ) { m_bHidden = b; }
void SetShadowLength( float fLength );
void EnableShadow( bool b ) { m_bShadow = b; }
// TODO: Implement hibernate as a tween type?
void SetHibernate( float fSecs ) { m_fHibernateSecondsLeft = fSecs; }
@@ -372,8 +371,7 @@ protected:
//
bool m_bHidden;
float m_fHibernateSecondsLeft;
bool m_bShadow;
float m_fShadowLength;
float m_fShadowLength; // 0 == no shadow
bool m_bIsAnimating;
//
+3 -6
View File
@@ -68,17 +68,14 @@ BitmapText::BitmapText()
}
iReloadCounter++;
m_HorizAlign = align_center;
m_VertAlign = align_middle;
m_pFont = NULL;
m_bShadow = true;
m_bRainbow = false;
m_iWrapWidthPixels = -1;
m_fMaxWidth = 0;
SetShadowLength( 4 );
}
BitmapText::~BitmapText()
@@ -458,7 +455,7 @@ void BitmapText::DrawPrimitives()
//////////////////////
// render the shadow
//////////////////////
if( m_bShadow )
if( m_fShadowLength != 0 )
{
DISPLAY->PushMatrix();
DISPLAY->TranslateWorld( m_fShadowLength, m_fShadowLength, 0 ); // shift by 5 units
+2 -2
View File
@@ -59,7 +59,7 @@ Combo::Combo()
FULL_COMBO_BROKEN_COMMAND.Refresh();
m_sprCombo.Load( THEME->GetPathToG( "Combo label") );
m_sprCombo.EnableShadow( true );
m_sprCombo.SetShadowLength( 4 );
m_sprCombo.StopAnimating();
m_sprCombo.SetXY( LABEL_X, LABEL_Y );
m_sprCombo.SetHorizAlign( (Actor::HorizAlign)(int)LABEL_HORIZ_ALIGN );
@@ -68,7 +68,7 @@ Combo::Combo()
this->AddChild( &m_sprCombo );
m_textComboNumber.LoadFromNumbers( THEME->GetPathToN("Combo") );
m_textComboNumber.EnableShadow( true );
m_textComboNumber.SetShadowLength( 4 );
m_textComboNumber.SetXY( NUMBER_X, NUMBER_Y );
m_textComboNumber.SetHorizAlign( (Actor::HorizAlign)(int)NUMBER_HORIZ_ALIGN );
m_textComboNumber.SetVertAlign( (Actor::VertAlign)(int)NUMBER_VERT_ALIGN );
+1 -1
View File
@@ -53,7 +53,7 @@ void LifeMeterBattery::Load( PlayerNumber pn )
m_textNumLives.LoadFromNumbers( THEME->GetPathToN("LifeMeterBattery lives") );
m_textNumLives.SetDiffuse( RageColor(1,1,1,1) );
m_textNumLives.EnableShadow( false );
m_textNumLives.SetShadowLength( 0 );
if( bPlayerEnabled )
this->AddChild( &m_textNumLives );
+2
View File
@@ -146,6 +146,8 @@ void MenuTimer::SetSeconds( int iSeconds )
m_textDigit1.Command( ON_COMMAND );
m_textDigit2.Command( ON_COMMAND );
m_textDigit1.SetShadowLength( 4 );
m_textDigit2.SetShadowLength( 4 );
SetText( iSeconds );
}
+2 -2
View File
@@ -77,7 +77,7 @@ MusicWheelItem::MusicWheelItem()
m_All.AddChild( &m_sprSectionBar );
m_textSectionName.LoadFromFont( THEME->GetPathToF("MusicWheelItem section") );
m_textSectionName.EnableShadow( false );
m_textSectionName.SetShadowLength( 0 );
m_textSectionName.SetVertAlign( align_middle );
m_textSectionName.SetXY( SECTION_NAME_X, 0 );
m_textSectionName.SetZoom( SECTION_ZOOM );
@@ -85,7 +85,7 @@ MusicWheelItem::MusicWheelItem()
m_textRoulette.LoadFromFont( THEME->GetPathToF("MusicWheelItem roulette") );
m_textRoulette.EnableShadow( false );
m_textRoulette.SetShadowLength( 0 );
m_textRoulette.TurnRainbowOn();
m_textRoulette.SetZoom( ROULETTE_ZOOM );
m_textRoulette.SetXY( ROULETTE_X, 0 );
+1 -1
View File
@@ -32,7 +32,7 @@ NoteField::NoteField()
m_textMeasureNumber.LoadFromFont( THEME->GetPathToF("Common normal") );
m_textMeasureNumber.SetZoom( 1.0f );
m_rectMarkerBar.EnableShadow( false );
m_rectMarkerBar.SetShadowLength( 0 );
m_rectMarkerBar.SetEffectDiffuseShift( 2, RageColor(1,1,1,0.5f), RageColor(0.5f,0.5f,0.5f,0.5f) );
m_sprBars.Load( THEME->GetPathToG("NoteField bars") );
+1 -1
View File
@@ -30,7 +30,7 @@ OptionIcon::OptionIcon()
this->AddChild( &m_spr );
m_text.LoadFromFont( THEME->GetPathToF("OptionIcon") );
m_text.EnableShadow( false );
m_text.SetShadowLength( 0 );
m_text.SetZoom( TEXT_ZOOM );
m_text.SetXY( TEXT_OFFSET_X, TEXT_OFFSET_Y );
m_text.SetHorizAlign( (Actor::HorizAlign)TEXT_H_ALIGN );
+2 -2
View File
@@ -78,13 +78,13 @@ void PercentageDisplay::Refresh()
{
int iPercentWhole = int(fPercentDancePoints*100);
int iPercentRemainder = int( (fPercentDancePoints*100 - int(fPercentDancePoints*100)) * 10 );
sNumToDisplay = ssprintf( "%02d", iPercentWhole );
sNumToDisplay = ssprintf( "%2d", iPercentWhole );
m_textPercentRemainder.SetText( ssprintf(".%01d%%", iPercentRemainder) );
}
else
{
float fNumToDisplay = fPercentDancePoints*100;
sNumToDisplay = ssprintf( "%0*.*f%%", PERCENT_TOTAL_SIZE, PERCENT_DECIMAL_PLACES, fNumToDisplay );
sNumToDisplay = ssprintf( "%*.*f%%", PERCENT_TOTAL_SIZE, PERCENT_DECIMAL_PLACES, fNumToDisplay );
// HACK: Use the last frame in the numbers texture as '-'
sNumToDisplay.Replace('-','x');
+1 -1
View File
@@ -31,7 +31,7 @@ ScoreDisplayNormal::ScoreDisplayNormal()
// init the text
m_text.LoadFromNumbers( THEME->GetPathToN("ScoreDisplayNormal") );
m_text.EnableShadow( false );
m_text.SetShadowLength( 0 );
m_iScore = 0;
m_iTrailingScore = 0;
+1 -1
View File
@@ -29,7 +29,7 @@ ScoreDisplayOni::ScoreDisplayOni()
// init the text
m_text.LoadFromNumbers( THEME->GetPathToN("ScoreDisplayOni") );
m_text.EnableShadow( false );
m_text.SetShadowLength( 0 );
this->AddChild( &m_text );
}
+2 -2
View File
@@ -354,7 +354,7 @@ ScreenEdit::ScreenEdit( CString sName ) : Screen( sName )
m_textHelp.SetVertAlign( Actor::align_top );
m_textHelp.SetZoom( 0.5f );
m_textHelp.SetText( HELP_TEXT );
m_textHelp.EnableShadow( false );
m_textHelp.SetShadowLength( 0 );
m_sprInfo.Load( THEME->GetPathToG("ScreenEdit Info") );
m_sprInfo.SetHorizAlign( Actor::align_right );
@@ -365,7 +365,7 @@ ScreenEdit::ScreenEdit( CString sName ) : Screen( sName )
m_textInfo.SetHorizAlign( Actor::align_left );
m_textInfo.SetVertAlign( Actor::align_top );
m_textInfo.SetZoom( 0.5f );
m_textInfo.EnableShadow( false );
m_textInfo.SetShadowLength( 0 );
//m_textInfo.SetText(); // set this below every frame
m_soundChangeLine.Load( THEME->GetPathToS("ScreenEdit line") );
+227 -219
View File
@@ -84,6 +84,8 @@ const char* STATS_STRING[NUM_STATS_LINES] =
#define SOUNDSEQ_TIME( i ) THEME->GetMetricF(m_sName,ssprintf("SoundSeqTime%d", i+1))
#define SOUNDSEQ_NAME( i ) THEME->GetMetric (m_sName,ssprintf("SoundSeqName%d", i+1))
#define PEAK_COMBO_AWARD_COMMAND THEME->GetMetric (m_sName,"PeakComboAwardCommand")
#define MAX_COMBO_NUM_DIGITS THEME->GetMetricI(m_sName,"MaxComboNumDigits")
#define PLAYER_OPTIONS_SEPARATOR THEME->GetMetric (m_sName,"PlayerOptionsSeparator")
static const int NUM_SHOWN_RADAR_CATEGORIES = 5;
@@ -106,22 +108,25 @@ void ScreenEvaluation::Init()
if( PREFSMAN->m_bScreenTestMode )
{
PROFILEMAN->LoadProfileFromMemoryCard(PLAYER_1);
PROFILEMAN->LoadFirstAvailableProfile(PLAYER_1);
PROFILEMAN->LoadFirstAvailableProfile(PLAYER_2);
GAMESTATE->m_PlayMode = PLAY_MODE_ARCADE;
GAMESTATE->m_CurStyle = STYLE_DANCE_VERSUS;
GAMESTATE->m_bSideIsJoined[PLAYER_1] = true;
GAMESTATE->m_bSideIsJoined[PLAYER_2] = true;
GAMESTATE->m_MasterPlayerNumber = PLAYER_1;
GAMESTATE->m_pCurSong = SONGMAN->GetAllSongs()[0];
// GAMESTATE->m_pCurCourse = SONGMAN->m_pCourses[0];
GAMESTATE->m_pCurSong = SONGMAN->GetRandomSong();
GAMESTATE->m_pCurCourse = SONGMAN->GetRandomCourse();
GAMESTATE->m_pCurNotes[PLAYER_1] = GAMESTATE->m_pCurSong->m_apNotes[0];
GAMESTATE->m_pCurNotes[PLAYER_2] = GAMESTATE->m_pCurSong->m_apNotes[0];
g_CurStageStats.pSteps[PLAYER_1] = GAMESTATE->m_pCurNotes[PLAYER_1];
g_CurStageStats.pSteps[PLAYER_2] = GAMESTATE->m_pCurNotes[PLAYER_2];
GAMESTATE->m_PlayerOptions[PLAYER_1].m_fScrollSpeed = 2;
GAMESTATE->m_PlayerOptions[PLAYER_2].m_fScrollSpeed = 2;
GAMESTATE->m_iCurrentStageIndex = 2;
GAMESTATE->m_iCurrentStageIndex = 0;
GAMESTATE->m_PlayerOptions[PLAYER_1].ChooseRandomMofifiers();
GAMESTATE->m_PlayerOptions[PLAYER_2].ChooseRandomMofifiers();
for( float f = 0; f < 100.0f; f += 1.0f )
{
@@ -130,6 +135,10 @@ void ScreenEvaluation::Init()
g_CurStageStats.SetLifeRecord( PLAYER_2, 1-fP1, f );
}
g_CurStageStats.iActualDancePoints[PLAYER_1] = rand()%3;
g_CurStageStats.iPossibleDancePoints[PLAYER_1] = 2;
g_CurStageStats.iActualDancePoints[PLAYER_2] = rand()%2;
g_CurStageStats.iPossibleDancePoints[PLAYER_2] = 1;
g_CurStageStats.iCurCombo[PLAYER_1] = 0;
g_CurStageStats.UpdateComboList( PLAYER_1, 0, false );
g_CurStageStats.iCurCombo[PLAYER_1] = 1;
@@ -139,8 +148,12 @@ void ScreenEvaluation::Init()
g_CurStageStats.iCurCombo[PLAYER_1] = 250;
g_CurStageStats.UpdateComboList( PLAYER_1, 100, false );
g_CurStageStats.iTapNoteScores[PLAYER_1][TNS_MARVELOUS] = 1;
g_CurStageStats.iTapNoteScores[PLAYER_2][TNS_PERFECT] = 1;
g_CurStageStats.iTapNoteScores[PLAYER_1][TNS_MARVELOUS] = rand()%2;
g_CurStageStats.iTapNoteScores[PLAYER_1][TNS_PERFECT] = rand()%2;
g_CurStageStats.iTapNoteScores[PLAYER_1][TNS_GREAT] = rand()%2;
g_CurStageStats.iTapNoteScores[PLAYER_2][TNS_MARVELOUS] = rand()%2;
g_CurStageStats.iTapNoteScores[PLAYER_2][TNS_PERFECT] = rand()%2;
g_CurStageStats.iTapNoteScores[PLAYER_2][TNS_GREAT] = rand()%2;
g_vPlayedStageStats.clear();
}
@@ -318,7 +331,7 @@ void ScreenEvaluation::Init()
m_textPlayerOptions[p].LoadFromFont( THEME->GetPathToF("Common normal") );
CString sPO = GAMESTATE->m_PlayerOptions[p].GetString();
sPO.Replace( ", ", "\n" );
sPO.Replace( ", ", PLAYER_OPTIONS_SEPARATOR );
m_textPlayerOptions[p].SetName( ssprintf("PlayerOptionsP%d",p+1) );
SET_XY_AND_ON_COMMAND( m_textPlayerOptions[p] );
m_textPlayerOptions[p].SetText( sPO );
@@ -525,7 +538,7 @@ void ScreenEvaluation::Init()
this->AddChild( &m_sprSurvivedFrame[p] );
m_textSurvivedNumber[p].LoadFromNumbers( THEME->GetPathToN("ScreenEvaluation stage") );
m_textSurvivedNumber[p].EnableShadow( false );
m_textSurvivedNumber[p].SetShadowLength( 0 );
// curewater: edited the "# stages cleared" text so it deducts one if you failed.
// Should be accurate, but I'm not sure if its "standard" that (bool)true = 1. (assumption)
m_textSurvivedNumber[p].SetText( ssprintf("%02d", stageStats.iSongsPlayed[p] - (int)stageStats.bFailed[p]) );
@@ -584,7 +597,7 @@ void ScreenEvaluation::Init()
continue; // skip
m_textJudgeNumbers[l][p].LoadFromNumbers( THEME->GetPathToN("ScreenEvaluation judge") );
m_textJudgeNumbers[l][p].EnableShadow( false );
m_textJudgeNumbers[l][p].SetShadowLength( 0 );
m_textJudgeNumbers[l][p].SetDiffuse( PlayerToColor(p) );
m_textJudgeNumbers[l][p].SetName( ssprintf("%sNumberP%d",JUDGE_STRING[l],p+1) );
SET_XY_AND_ON_COMMAND( m_textJudgeNumbers[l][p] );
@@ -593,18 +606,21 @@ void ScreenEvaluation::Init()
int iValue;
switch( l )
{
case 0: iValue = stageStats.iTapNoteScores[p][TNS_MARVELOUS]; break;
case 1: iValue = stageStats.iTapNoteScores[p][TNS_PERFECT]; break;
case 2: iValue = stageStats.iTapNoteScores[p][TNS_GREAT]; break;
case 3: iValue = stageStats.iTapNoteScores[p][TNS_GOOD]; break;
case 4: iValue = stageStats.iTapNoteScores[p][TNS_BOO]; break;
case 5: iValue = stageStats.iTapNoteScores[p][TNS_MISS]; break;
case 6: iValue = stageStats.iHoldNoteScores[p][HNS_OK]; break;
case 7: iValue = stageStats.iMaxCombo[p]; break;
case 8: iValue = stageStats.iTotalError[p]; break;
case marvelous: iValue = stageStats.iTapNoteScores[p][TNS_MARVELOUS]; break;
case perfect: iValue = stageStats.iTapNoteScores[p][TNS_PERFECT]; break;
case great: iValue = stageStats.iTapNoteScores[p][TNS_GREAT]; break;
case good: iValue = stageStats.iTapNoteScores[p][TNS_GOOD]; break;
case boo: iValue = stageStats.iTapNoteScores[p][TNS_BOO]; break;
case miss: iValue = stageStats.iTapNoteScores[p][TNS_MISS]; break;
case ok: iValue = stageStats.iHoldNoteScores[p][HNS_OK]; break;
case max_combo: iValue = stageStats.iMaxCombo[p]; break;
case error: iValue = stageStats.iTotalError[p]; break;
default: iValue = 0; ASSERT(0);
}
m_textJudgeNumbers[l][p].SetText( ssprintf("%4d",iValue) );
// UGLY... generalize this
int iNumDigits = (l==max_combo) ? MAX_COMBO_NUM_DIGITS : 4;
m_textJudgeNumbers[l][p].SetText( ssprintf("%*d",iNumDigits,iValue) );
}
}
}
@@ -645,7 +661,7 @@ void ScreenEvaluation::Init()
const int iActual = (int) roundf(stageStats.fRadarActual[p][ind]);
const int iPossible = (int) roundf(stageStats.fRadarPossible[p][ind]);
m_textStatsText[l][p].SetText( ssprintf("%i/%i",iActual, iPossible) );
m_textStatsText[l][p].SetText( ssprintf("%3d/%3d",iActual,iPossible) );
}
}
@@ -665,7 +681,7 @@ void ScreenEvaluation::Init()
continue; // skip
m_textScore[p].LoadFromNumbers( THEME->GetPathToN("ScreenEvaluation score") );
m_textScore[p].EnableShadow( false );
m_textScore[p].SetShadowLength( 0 );
m_textScore[p].SetDiffuse( PlayerToColor(p) );
m_textScore[p].SetName( ssprintf("ScoreNumberP%d",p+1) );
SET_XY_AND_ON_COMMAND( m_textScore[p] );
@@ -693,7 +709,7 @@ void ScreenEvaluation::Init()
//iTotalScore += stageStats.iScore[p];
m_textTotalScore[p].LoadFromNumbers( THEME->GetPathToN("ScreenEvaluation totalscore") );
m_textTotalScore[p].EnableShadow( false );
m_textTotalScore[p].SetShadowLength( 0 );
m_textTotalScore[p].SetDiffuse( PlayerToColor(p) );
m_textTotalScore[p].SetName( ssprintf("TotalScoreNumberP%d",p+1) );
m_textTotalScore[p].SetText( ssprintf("%*.0i", NUM_SCORE_DIGITS+2, iTotalScore) );
@@ -719,7 +735,7 @@ void ScreenEvaluation::Init()
continue; // skip
m_textTime[p].LoadFromNumbers( THEME->GetPathToN("ScreenEvaluation time") );
m_textTime[p].EnableShadow( false );
m_textTime[p].SetShadowLength( 0 );
m_textTime[p].SetDiffuse( PlayerToColor(p) );
m_textTime[p].SetName( ssprintf("TimeNumberP%d",p+1) );
SET_XY_AND_ON_COMMAND( m_textTime[p] );
@@ -736,27 +752,19 @@ void ScreenEvaluation::Init()
{
if( iMachineHighScoreIndex[p] != -1 )
{
m_sprMachineRecord[p].Load( THEME->GetPathToG("ScreenEvaluation machine record") );
m_sprMachineRecord[p].SetName( ssprintf("MachineRecordP%d",p+1) );
m_sprMachineRecord[p].StopAnimating();
m_sprMachineRecord[p].Load( THEME->GetPathG( "ScreenEvaluation", ssprintf("MachineRecord %02d",iMachineHighScoreIndex[p]+1) ) );
m_sprMachineRecord[p]->SetName( ssprintf("MachineRecordP%d",p+1) );
m_sprMachineRecord[p]->StopAnimating();
SET_XY_AND_ON_COMMAND( m_sprMachineRecord[p] );
if( iMachineHighScoreIndex[p] < m_sprMachineRecord[p].GetNumStates() )
m_sprMachineRecord[p].SetState( iMachineHighScoreIndex[p] );
else
m_sprMachineRecord[p].SetHidden( true );
this->AddChild( &m_sprMachineRecord[p] );
this->AddChild( m_sprMachineRecord[p] );
}
if( iPersonalHighScoreIndex[p] != -1 )
{
m_sprPersonalRecord[p].Load( THEME->GetPathToG("ScreenEvaluation personal record") );
m_sprPersonalRecord[p].SetName( ssprintf("PersonalRecordP%d",p+1) );
m_sprPersonalRecord[p].StopAnimating();
m_sprPersonalRecord[p].Load( THEME->GetPathG( "ScreenEvaluation", ssprintf("PersonalRecord %02d",iMachineHighScoreIndex[p]+1) ) );
m_sprPersonalRecord[p]->SetName( ssprintf("PersonalRecordP%d",p+1) );
m_sprPersonalRecord[p]->StopAnimating();
SET_XY_AND_ON_COMMAND( m_sprPersonalRecord[p] );
if( iPersonalHighScoreIndex[p] < m_sprPersonalRecord[p].GetNumStates() )
m_sprPersonalRecord[p].SetState( iPersonalHighScoreIndex[p] );
else
m_sprPersonalRecord[p].SetHidden( true );
this->AddChild( &m_sprPersonalRecord[p] );
this->AddChild( m_sprPersonalRecord[p] );
}
if( SHOW_PER_DIFFICULTY_AWARD && pdaToShow[p]!=PER_DIFFICULTY_AWARD_INVALID )
@@ -854,8 +862,13 @@ void ScreenEvaluation::CommitScores(
{
FOREACH_PlayerNumber( pn )
{
iPersonalHighScoreIndexOut[pn] = -1;
iPersonalHighScoreIndexOut[pn] = -1;
iMachineHighScoreIndexOut[pn] = -1;
if( PREFSMAN->m_bScreenTestMode )
{
iPersonalHighScoreIndexOut[pn] = 0;
iMachineHighScoreIndexOut[pn] = 0;
}
rcOut[pn] = RANKING_INVALID;
pdaToShowOut[pn] = PER_DIFFICULTY_AWARD_INVALID;
pcaToShowOut[pn] = PEAK_COMBO_AWARD_INVALID;
@@ -872,222 +885,217 @@ void ScreenEvaluation::CommitScores(
if( !GAMESTATE->m_SongOptions.m_bSaveScore )
return;
int p;
for( p=0; p<NUM_PLAYERS; p++ )
{
if( !GAMESTATE->IsHumanPlayer(p) )
continue;
// don't save scores if the player is disqualified
if( GAMESTATE->IsDisqualified((PlayerNumber)p) )
continue;
//
// Add step totals
//
int iNumTapsAndHolds = (int) stageStats.fRadarPossible[p][RADAR_NUM_TAPS_AND_HOLDS];
int iNumJumps = (int) stageStats.fRadarPossible[p][RADAR_NUM_JUMPS];
int iNumHolds = (int) stageStats.fRadarPossible[p][RADAR_NUM_HOLDS];
int iNumMines = (int) stageStats.fRadarPossible[p][RADAR_NUM_MINES];
int iNumHands = (int) stageStats.fRadarPossible[p][RADAR_NUM_HANDS];
PROFILEMAN->AddStepTotals( (PlayerNumber)p, iNumTapsAndHolds, iNumJumps, iNumHolds, iNumMines, iNumHands );
// whether or not to save scores when the stage was failed
// depends on if this is a course or not ... it's handled
// below in the switch
HighScore &hs = m_HighScore[p];
hs.grade = stageStats.GetGrade( (PlayerNumber)p );
hs.iScore = stageStats.iScore[p];
hs.fPercentDP = stageStats.GetPercentDancePoints( (PlayerNumber)p );
hs.fSurviveSeconds = stageStats.fAliveSeconds[p];
hs.sModifiers = GAMESTATE->m_PlayerOptions[p].GetString();
StepsType nt = GAMESTATE->GetCurrentStyleDef()->m_StepsType;
switch( m_Type )
FOREACH_HumanPlayer( p )
{
case stage:
// don't save scores if the player is disqualified
if( GAMESTATE->IsDisqualified((PlayerNumber)p) )
continue;
//
// Add step totals
//
int iNumTapsAndHolds = (int) stageStats.fRadarPossible[p][RADAR_NUM_TAPS_AND_HOLDS];
int iNumJumps = (int) stageStats.fRadarPossible[p][RADAR_NUM_JUMPS];
int iNumHolds = (int) stageStats.fRadarPossible[p][RADAR_NUM_HOLDS];
int iNumMines = (int) stageStats.fRadarPossible[p][RADAR_NUM_MINES];
int iNumHands = (int) stageStats.fRadarPossible[p][RADAR_NUM_HANDS];
PROFILEMAN->AddStepTotals( (PlayerNumber)p, iNumTapsAndHolds, iNumJumps, iNumHolds, iNumMines, iNumHands );
// whether or not to save scores when the stage was failed
// depends on if this is a course or not ... it's handled
// below in the switch
HighScore &hs = m_HighScore[p];
hs.grade = stageStats.GetGrade( (PlayerNumber)p );
hs.iScore = stageStats.iScore[p];
hs.fPercentDP = stageStats.GetPercentDancePoints( (PlayerNumber)p );
hs.fSurviveSeconds = stageStats.fAliveSeconds[p];
hs.sModifiers = GAMESTATE->m_PlayerOptions[p].GetString();
StepsType nt = GAMESTATE->GetCurrentStyleDef()->m_StepsType;
switch( m_Type )
{
// don't save scores for a failed song
if( stageStats.bFailed[p] )
continue;
case stage:
{
// don't save scores for a failed song
if( stageStats.bFailed[p] )
continue;
ASSERT( GAMESTATE->m_pCurNotes[p] );
ASSERT( GAMESTATE->m_pCurNotes[p] );
if( hs.fPercentDP >= PREFSMAN->m_fMinPercentageForHighScore )
PROFILEMAN->AddStepsHighScore( GAMESTATE->m_pCurNotes[p], (PlayerNumber)p, hs, iPersonalHighScoreIndexOut[p], iMachineHighScoreIndexOut[p] );
if( hs.fPercentDP >= PREFSMAN->m_fMinPercentageForHighScore )
PROFILEMAN->AddStepsHighScore( GAMESTATE->m_pCurNotes[p], (PlayerNumber)p, hs, iPersonalHighScoreIndexOut[p], iMachineHighScoreIndexOut[p] );
}
break;
case summary:
{
// don't save scores if any stage was failed
if( stageStats.bFailed[p] )
continue;
float fAverageMeter = stageStats.iMeter[p] / (float)PREFSMAN->m_iNumArcadeStages;
rcOut[p] = AverageMeterToRankingCategory( fAverageMeter );
if( hs.fPercentDP > PREFSMAN->m_fMinPercentageForHighScore )
PROFILEMAN->AddCategoryHighScore( nt, rcOut[p], (PlayerNumber)p, hs, iPersonalHighScoreIndexOut[p], iMachineHighScoreIndexOut[p] );
// TRICKY: Increment play count here, and not on ScreenGameplay like the others.
PROFILEMAN->IncrementCategoryPlayCount( nt, rcOut[p], (PlayerNumber)p );
}
break;
case course:
{
Course* pCourse = GAMESTATE->m_pCurCourse;
CourseDifficulty cd = GAMESTATE->m_PreferredCourseDifficulty[p];
ASSERT( pCourse );
// don't save scores for a failed Nonstop
// DO save scores for a failed Oni/Endless
if( stageStats.bFailed[p] && pCourse->IsNonstop() )
continue;
if( hs.fPercentDP > PREFSMAN->m_fMinPercentageForHighScore )
PROFILEMAN->AddCourseHighScore( pCourse, nt, cd, (PlayerNumber)p, hs, iPersonalHighScoreIndexOut[p], iMachineHighScoreIndexOut[p] );
}
break;
default:
ASSERT(0);
}
break;
case summary:
{
// don't save scores if any stage was failed
if( stageStats.bFailed[p] )
continue;
float fAverageMeter = stageStats.iMeter[p] / (float)PREFSMAN->m_iNumArcadeStages;
rcOut[p] = AverageMeterToRankingCategory( fAverageMeter );
if( hs.fPercentDP > PREFSMAN->m_fMinPercentageForHighScore )
PROFILEMAN->AddCategoryHighScore( nt, rcOut[p], (PlayerNumber)p, hs, iPersonalHighScoreIndexOut[p], iMachineHighScoreIndexOut[p] );
// TRICKY: Increment play count here, and not on ScreenGameplay like the others.
PROFILEMAN->IncrementCategoryPlayCount( nt, rcOut[p], (PlayerNumber)p );
}
break;
case course:
{
Course* pCourse = GAMESTATE->m_pCurCourse;
CourseDifficulty cd = GAMESTATE->m_PreferredCourseDifficulty[p];
ASSERT( pCourse );
// don't save scores for a failed Nonstop
// DO save scores for a failed Oni/Endless
if( stageStats.bFailed[p] && pCourse->IsNonstop() )
continue;
if( hs.fPercentDP > PREFSMAN->m_fMinPercentageForHighScore )
PROFILEMAN->AddCourseHighScore( pCourse, nt, cd, (PlayerNumber)p, hs, iPersonalHighScoreIndexOut[p], iMachineHighScoreIndexOut[p] );
}
break;
default:
ASSERT(0);
}
}
// If both players get a machine high score, a player whose score is added later
// may bump the players who were added earlier. Adjust for this.
// FIXME: Reports are that this logic is wrong.
for( p=0; p<NUM_PLAYERS; p++ )
{
if( !GAMESTATE->IsHumanPlayer(p) )
continue; // skip
if( iMachineHighScoreIndexOut[p] == -1 ) // no record
continue; // skip
/* If we aren't saving scores on fail, it'll be handled above; m_bFailed is only
* meaningful in stage and course eval. */
// if( m_bFailed ) // both players failed
// continue; // skip
for( int p2=0; p2<p; p2++ )
FOREACH_HumanPlayer( p )
{
if( !GAMESTATE->IsHumanPlayer(p2) )
if( iMachineHighScoreIndexOut[p] == -1 ) // no record
continue; // skip
if( iMachineHighScoreIndexOut[p2] == -1 ) // no record
continue; // skip
bool bPlayedSameSteps;
switch( m_Type )
/* If we aren't saving scores on fail, it'll be handled above; m_bFailed is only
* meaningful in stage and course eval. */
// if( m_bFailed ) // both players failed
// continue; // skip
for( int p2=0; p2<p; p2++ )
{
case stage:
bPlayedSameSteps = GAMESTATE->m_pCurNotes[p]==GAMESTATE->m_pCurNotes[p2];
break;
case summary:
bPlayedSameSteps = rcOut[p] == rcOut[p2];
break;
case course:
bPlayedSameSteps = true;
break;
}
if( iMachineHighScoreIndexOut[p] >= iMachineHighScoreIndexOut[p2] )
{
iMachineHighScoreIndexOut[p2]++;
if( iMachineHighScoreIndexOut[p2] >= NUM_RANKING_LINES )
iMachineHighScoreIndexOut[p2] = -1;
if( !GAMESTATE->IsHumanPlayer(p2) )
continue; // skip
if( iMachineHighScoreIndexOut[p2] == -1 ) // no record
continue; // skip
bool bPlayedSameSteps;
switch( m_Type )
{
case stage:
bPlayedSameSteps = GAMESTATE->m_pCurNotes[p]==GAMESTATE->m_pCurNotes[p2];
break;
case summary:
bPlayedSameSteps = rcOut[p] == rcOut[p2];
break;
case course:
bPlayedSameSteps = true;
break;
}
if( iMachineHighScoreIndexOut[p] >= iMachineHighScoreIndexOut[p2] )
{
iMachineHighScoreIndexOut[p2]++;
if( iMachineHighScoreIndexOut[p2] >= NUM_RANKING_LINES )
iMachineHighScoreIndexOut[p2] = -1;
}
}
}
}
//
// hand out awards
//
for( p=0; p<NUM_PLAYERS; p++ )
{
if( !GAMESTATE->IsHumanPlayer(p) )
continue;
// must be using a profile to receive awards
if( !PROFILEMAN->IsUsingProfile((PlayerNumber)p) )
continue;
Profile* pProfile = PROFILEMAN->GetProfile((PlayerNumber)p);
deque<PerDifficultyAward> &vPdas = GAMESTATE->m_vLastPerDifficultyAwards[p];
// per-difficulty awards
switch( m_Type )
FOREACH_HumanPlayer( p )
{
case stage:
// don't give per-difficutly awards if using easy mods
if( !GAMESTATE->IsDisqualified((PlayerNumber)p) )
{
if( stageStats.FullComboOfScore( (PlayerNumber)p, TNS_GREAT ) )
vPdas.push_back( AWARD_FULL_COMBO_GREATS );
if( stageStats.SingleDigitsOfScore( (PlayerNumber)p, TNS_GREAT ) )
vPdas.push_back( AWARD_SINGLE_DIGIT_GREATS );
if( stageStats.FullComboOfScore( (PlayerNumber)p, TNS_PERFECT ) )
vPdas.push_back( AWARD_FULL_COMBO_PERFECTS );
if( stageStats.SingleDigitsOfScore( (PlayerNumber)p, TNS_PERFECT ) )
vPdas.push_back( AWARD_SINGLE_DIGIT_PERFECTS );
if( stageStats.FullComboOfScore( (PlayerNumber)p, TNS_MARVELOUS ) )
vPdas.push_back( AWARD_FULL_COMBO_MARVELOUSES );
// must be using a profile to receive awards
if( !PROFILEMAN->IsUsingProfile((PlayerNumber)p) )
continue;
float fPercentGreats = stageStats.GetPercentageOfTaps((PlayerNumber)p, TNS_GREAT);
if( fPercentGreats >= 0.8f )
vPdas.push_back( AWARD_GREATS_80_PERCENT );
if( fPercentGreats >= 0.9f )
vPdas.push_back( AWARD_GREATS_90_PERCENT );
if( fPercentGreats >= 1.f )
vPdas.push_back( AWARD_GREATS_100_PERCENT );
Profile* pProfile = PROFILEMAN->GetProfile((PlayerNumber)p);
deque<PerDifficultyAward> &vPdas = GAMESTATE->m_vLastPerDifficultyAwards[p];
// per-difficulty awards
switch( m_Type )
{
case stage:
// don't give per-difficutly awards if using easy mods
if( !GAMESTATE->IsDisqualified((PlayerNumber)p) )
{
if( stageStats.FullComboOfScore( (PlayerNumber)p, TNS_GREAT ) )
vPdas.push_back( AWARD_FULL_COMBO_GREATS );
if( stageStats.SingleDigitsOfScore( (PlayerNumber)p, TNS_GREAT ) )
vPdas.push_back( AWARD_SINGLE_DIGIT_GREATS );
if( stageStats.FullComboOfScore( (PlayerNumber)p, TNS_PERFECT ) )
vPdas.push_back( AWARD_FULL_COMBO_PERFECTS );
if( stageStats.SingleDigitsOfScore( (PlayerNumber)p, TNS_PERFECT ) )
vPdas.push_back( AWARD_SINGLE_DIGIT_PERFECTS );
if( stageStats.FullComboOfScore( (PlayerNumber)p, TNS_MARVELOUS ) )
vPdas.push_back( AWARD_FULL_COMBO_MARVELOUSES );
float fPercentGreats = stageStats.GetPercentageOfTaps((PlayerNumber)p, TNS_GREAT);
if( fPercentGreats >= 0.8f )
vPdas.push_back( AWARD_GREATS_80_PERCENT );
if( fPercentGreats >= 0.9f )
vPdas.push_back( AWARD_GREATS_90_PERCENT );
if( fPercentGreats >= 1.f )
vPdas.push_back( AWARD_GREATS_100_PERCENT );
}
}
}
if( !vPdas.empty() )
pdaToShowOut[p] = vPdas.back();
if( !vPdas.empty() )
pdaToShowOut[p] = vPdas.back();
// DO give peak combo awards if using easy mods
int iComboAtStartOfStage = stageStats.GetComboAtStartOfStage( (PlayerNumber)p );
int iPeakCombo = stageStats.GetMaxCombo((PlayerNumber)p).cnt;
// DO give peak combo awards if using easy mods
int iComboAtStartOfStage = stageStats.GetComboAtStartOfStage( (PlayerNumber)p );
int iPeakCombo = stageStats.GetMaxCombo((PlayerNumber)p).cnt;
FOREACH_PeakComboAward( pca )
{
int iLevel = 100/*0*/ * (pca+1);
bool bCrossedLevel = iComboAtStartOfStage < iLevel && iPeakCombo >= iLevel;
if( bCrossedLevel )
FOREACH_PeakComboAward( pca )
{
GAMESTATE->m_vLastPeakComboAwards[p].push_back( pca );
int iLevel = 100/*0*/ * (pca+1);
bool bCrossedLevel = iComboAtStartOfStage < iLevel && iPeakCombo >= iLevel;
if( bCrossedLevel )
{
GAMESTATE->m_vLastPeakComboAwards[p].push_back( pca );
}
}
}
if( !GAMESTATE->m_vLastPeakComboAwards[p].empty() )
pcaToShowOut[p] = GAMESTATE->m_vLastPeakComboAwards[p].back();
if( !GAMESTATE->m_vLastPeakComboAwards[p].empty() )
pcaToShowOut[p] = GAMESTATE->m_vLastPeakComboAwards[p].back();
// erase awards from the Last list that have been received so that we
// won't show them again.
{
for( int i=GAMESTATE->m_vLastPerDifficultyAwards[p].size()-1; i>=0; i-- )
// erase awards from the Last list that have been received so that we
// won't show them again.
{
PerDifficultyAward pda = GAMESTATE->m_vLastPerDifficultyAwards[p][i];
Steps* pSteps = stageStats.pSteps[p];
bool bAlreadyHad = pProfile->HasPerDifficultyAward( pSteps->m_StepsType, pSteps->GetDifficulty(), pda );
pProfile->AddPerDifficultyAward( pSteps->m_StepsType, pSteps->GetDifficulty(), pda );
if( bAlreadyHad )
GAMESTATE->m_vLastPerDifficultyAwards[p].erase( GAMESTATE->m_vLastPerDifficultyAwards[p].begin()+i );
for( int i=GAMESTATE->m_vLastPerDifficultyAwards[p].size()-1; i>=0; i-- )
{
PerDifficultyAward pda = GAMESTATE->m_vLastPerDifficultyAwards[p][i];
Steps* pSteps = stageStats.pSteps[p];
bool bAlreadyHad = pProfile->HasPerDifficultyAward( pSteps->m_StepsType, pSteps->GetDifficulty(), pda );
pProfile->AddPerDifficultyAward( pSteps->m_StepsType, pSteps->GetDifficulty(), pda );
if( bAlreadyHad )
GAMESTATE->m_vLastPerDifficultyAwards[p].erase( GAMESTATE->m_vLastPerDifficultyAwards[p].begin()+i );
}
}
}
{
for( int i=GAMESTATE->m_vLastPeakComboAwards[p].size()-1; i>=0; i-- )
{
PeakComboAward pca = GAMESTATE->m_vLastPeakComboAwards[p][i];
bool bAlreadyHad = pProfile->HasPeakComboAward( pca );
pProfile->AddPeakComboAward( pca );
if( bAlreadyHad )
GAMESTATE->m_vLastPeakComboAwards[p].erase( GAMESTATE->m_vLastPeakComboAwards[p].begin()+i );
for( int i=GAMESTATE->m_vLastPeakComboAwards[p].size()-1; i>=0; i-- )
{
PeakComboAward pca = GAMESTATE->m_vLastPeakComboAwards[p][i];
bool bAlreadyHad = pProfile->HasPeakComboAward( pca );
pProfile->AddPeakComboAward( pca );
if( bAlreadyHad )
GAMESTATE->m_vLastPeakComboAwards[p].erase( GAMESTATE->m_vLastPeakComboAwards[p].begin()+i );
}
}
}
}
+2 -2
View File
@@ -139,8 +139,8 @@ protected:
BitmapText m_textTime[NUM_PLAYERS];
// extra area
Sprite m_sprMachineRecord[NUM_PLAYERS];
Sprite m_sprPersonalRecord[NUM_PLAYERS];
AutoActor m_sprMachineRecord[NUM_PLAYERS];
AutoActor m_sprPersonalRecord[NUM_PLAYERS];
bool m_bTryExtraStage;
Sprite m_sprTryExtraStage;
AutoActor m_PerDifficultyAward[NUM_PLAYERS];
+5 -5
View File
@@ -432,7 +432,7 @@ void ScreenGameplay::Init()
m_textSongTitle.LoadFromFont( THEME->GetPathToF("ScreenGameplay song title") );
m_textSongTitle.EnableShadow( false );
m_textSongTitle.SetShadowLength( 0 );
m_textSongTitle.SetName( "SongTitle" );
SET_XY( m_textSongTitle );
this->AddChild( &m_textSongTitle );
@@ -515,7 +515,7 @@ void ScreenGameplay::Init()
for( p=0; p<NUM_PLAYERS; p++ )
{
m_textCourseSongNumber[p].LoadFromNumbers( THEME->GetPathToN("ScreenGameplay song num") );
m_textCourseSongNumber[p].EnableShadow( false );
m_textCourseSongNumber[p].SetShadowLength( 0 );
m_textCourseSongNumber[p].SetName( ssprintf("SongNumberP%d%s",p+1,bExtra?"Extra":"") );
SET_XY( m_textCourseSongNumber[p] );
m_textCourseSongNumber[p].SetText( "" );
@@ -580,14 +580,14 @@ void ScreenGameplay::Init()
continue;
m_textPlayerOptions[p].LoadFromFont( THEME->GetPathToF("ScreenGameplay player options") );
m_textPlayerOptions[p].EnableShadow( false );
m_textPlayerOptions[p].SetShadowLength( 0 );
m_textPlayerOptions[p].SetName( ssprintf("PlayerOptionsP%d%s",p+1,bExtra?"Extra":"") );
SET_XY( m_textPlayerOptions[p] );
this->AddChild( &m_textPlayerOptions[p] );
}
m_textSongOptions.LoadFromFont( THEME->GetPathToF("ScreenGameplay song options") );
m_textSongOptions.EnableShadow( false );
m_textSongOptions.SetShadowLength( 0 );
m_textSongOptions.SetName( ssprintf("SongOptions%s",bExtra?"Extra":"") );
SET_XY( m_textSongOptions );
m_textSongOptions.SetText( GAMESTATE->m_SongOptions.GetString() );
@@ -710,7 +710,7 @@ void ScreenGameplay::Init()
if( GAMESTATE->IsExtraStage() || GAMESTATE->IsExtraStage2() ) // only load if we're going to use it
{
m_textSurviveTime.LoadFromFont( THEME->GetPathToF("ScreenGameplay survive time") );
m_textSurviveTime.EnableShadow( false );
m_textSurviveTime.SetShadowLength( 0 );
m_textSurviveTime.SetName( "SurviveTime" );
SET_XY( m_textSurviveTime );
m_textSurviveTime.SetDiffuse( RageColor(1,1,1,0) );
+1 -1
View File
@@ -105,7 +105,7 @@ ScreenSystemLayer::ScreenSystemLayer() : Screen("ScreenSystemLayer")
m_textSkips[i].SetVertAlign( Actor::align_top );
m_textSkips[i].SetZoom( 0.5f );
m_textSkips[i].SetDiffuse( RageColor(1,1,1,0) );
m_textSkips[i].EnableShadow(false);
m_textSkips[i].SetShadowLength( 0 );
this->AddChild(&m_textSkips[i]);
}
+4 -4
View File
@@ -263,7 +263,7 @@ void ScreenOptions::Init( InputMode im, OptionRowData OptionRows[], int iNumOpti
bt->LoadFromFont( THEME->GetPathToF("ScreenOptions item") );
bt->SetText( optline.choices[c] );
bt->SetZoom( ITEMS_ZOOM );
bt->EnableShadow( false );
bt->SetShadowLength( 0 );
// set the X position of each item in the line
float fItemWidth = bt->GetZoomedWidth();
@@ -318,7 +318,7 @@ void ScreenOptions::Init( InputMode im, OptionRowData OptionRows[], int iNumOpti
bt->LoadFromFont( THEME->GetPathToF("ScreenOptions item") );
bt->SetText( optline.choices[iChoiceWithFocus] );
bt->SetZoom( ITEMS_ZOOM );
bt->EnableShadow( false );
bt->SetShadowLength( 0 );
if( optline.bOneChoiceForAllPlayers )
{
@@ -373,7 +373,7 @@ void ScreenOptions::Init( InputMode im, OptionRowData OptionRows[], int iNumOpti
bt->LoadFromFont( THEME->GetPathToF("ScreenOptions item") );
bt->SetText( THEME->GetMetric("OptionNames","Exit") );
bt->SetZoom( ITEMS_ZOOM );
bt->EnableShadow( false );
bt->SetShadowLength( 0 );
bt->SetX( CENTER_X );
m_framePage.AddChild( bt );
@@ -646,7 +646,7 @@ void ScreenOptions::InitOptionsText()
title.SetZoom( LABELS_ZOOM );
title.SetHorizAlign( (Actor::HorizAlign)LABELS_H_ALIGN );
title.SetVertAlign( Actor::align_middle );
title.EnableShadow( false );
title.SetShadowLength( 0 );
Sprite &bullet = row.m_sprBullet;
bullet.Load( THEME->GetPathToG("ScreenOptions bullet") );
+3 -3
View File
@@ -105,19 +105,19 @@ ScreenRanking::ScreenRanking( CString sClassName ) : ScreenAttract( sClassName )
m_textCategory.SetName( "Category" );
m_textCategory.LoadFromFont( THEME->GetPathToF("ScreenRanking category") );
m_textCategory.EnableShadow( false );
m_textCategory.SetShadowLength( 0 );
m_textCategory.SetHidden( true );
this->AddChild( &m_textCategory );
m_textCourseTitle.SetName( "CourseTitle" );
m_textCourseTitle.LoadFromFont( THEME->GetPathToF("ScreenRanking course title") );
m_textCourseTitle.EnableShadow( false );
m_textCourseTitle.SetShadowLength( 0 );
m_textCourseTitle.SetHidden( true );
this->AddChild( &m_textCourseTitle );
m_textStepsType.SetName( "StepsType" );
m_textStepsType.LoadFromFont( THEME->GetPathToF("ScreenRanking steps type") );
m_textStepsType.EnableShadow( false );
m_textStepsType.SetShadowLength( 0 );
m_textStepsType.SetHidden( true );
this->AddChild( &m_textStepsType );
+2 -2
View File
@@ -87,12 +87,12 @@ ScreenSelectCourse::ScreenSelectCourse( CString sClassName ) : Screen( sClassNam
this->AddChild( &m_sprBannerFrame );
m_textNumSongs.LoadFromNumbers( THEME->GetPathToN("ScreenSelectCourse num songs") );
m_textNumSongs.EnableShadow( false );
m_textNumSongs.SetShadowLength( 0 );
m_textNumSongs.SetXY( STAGES_X, STAGES_Y );
this->AddChild( &m_textNumSongs );
m_textTime.LoadFromNumbers( THEME->GetPathToN("ScreenSelectCourse total time") );
m_textTime.EnableShadow( false );
m_textTime.SetShadowLength( 0 );
m_textTime.SetXY( TIME_X, TIME_Y );
this->AddChild( &m_textTime );
+2 -2
View File
@@ -152,7 +152,7 @@ ScreenSelectMusic::ScreenSelectMusic( CString sClassName ) : Screen( sClassName
this->AddChild( &m_BPMDisplay );
m_DifficultyDisplay.SetName( "DifficultyDisplay" );
m_DifficultyDisplay.EnableShadow( false );
m_DifficultyDisplay.SetShadowLength( 0 );
SET_XY( m_DifficultyDisplay );
this->AddChild( &m_DifficultyDisplay );
@@ -281,7 +281,7 @@ ScreenSelectMusic::ScreenSelectMusic( CString sClassName ) : Screen( sClassName
m_textHighScore[p].SetName( ssprintf("ScoreP%d",p+1) );
m_textHighScore[p].LoadFromNumbers( THEME->GetPathToN("ScreenSelectMusic score") );
m_textHighScore[p].EnableShadow( false );
m_textHighScore[p].SetShadowLength( 0 );
m_textHighScore[p].SetDiffuse( PlayerToColor(p) );
SET_XY( m_textHighScore[p] );
this->AddChild( &m_textHighScore[p] );
+3 -3
View File
@@ -439,9 +439,9 @@ ScreenStage::ScreenStage( CString sClassName ) : Screen( sClassName )
// for (i=0; i<2; i++) // specify the font file.
// {
// m_ez2ukm[i].LoadFromFont( THEME->GetPathToF("Stage ez2") );
// m_ez2ukm[i].EnableShadow( false );
// m_ez2ukm[i].SetShadowLength( 0 );
// m_stagedesc[i].LoadFromFont( THEME->GetPathToF("Stage ez2") );
// m_stagedesc[i].EnableShadow( false );
// m_stagedesc[i].SetShadowLength( 0 );
// }
//
// m_ez2ukm[0].SetXY( CENTER_X-400, CENTER_Y-220 ); // set the intiial UKMOVE positions
@@ -555,7 +555,7 @@ ScreenStage::ScreenStage( CString sClassName ) : Screen( sClassName )
//
// // write the stage name
// m_stagename.LoadFromFont( THEME->GetPathToF("Stage ez2") );
// m_stagename.EnableShadow( false );
// m_stagename.SetShadowLength( 0 );
//
// m_stagename.SetXY( CENTER_X+400, CENTER_Y-30+element_y_offsets ); // set initial position
//
+1 -1
View File
@@ -49,7 +49,7 @@ ScreenTestFonts::ScreenTestFonts( CString sClassName ) : Screen( sClassName )
void ScreenTestFonts::SetText(CString text)
{
txt.EnableShadow( false );
txt.SetShadowLength( 0 );
txt.SetText(""); /* force it */
txt.SetText(text);
curtext = text;
+1 -2
View File
@@ -123,7 +123,6 @@ ScreenTitleMenu::ScreenTitleMenu( CString sClassName ) : ScreenSelect( sClassNam
m_textHelp.SetXY( HELP_X, HELP_Y );
m_textHelp.SetZoom( 0.5f );
m_textHelp.SetEffectDiffuseBlink();
m_textHelp.EnableShadow( true );
m_textHelp.SetShadowLength( 2 );
this->AddChild( &m_textHelp );
@@ -140,7 +139,7 @@ ScreenTitleMenu::ScreenTitleMenu( CString sClassName ) : ScreenSelect( sClassNam
m_textChoice[i].SetText( NAME(mc.m_sName) );
m_textChoice[i].SetXY( CHOICES_X, CHOICES_START_Y + i*CHOICES_SPACING_Y );
m_textChoice[i].SetShadowLength( CHOICES_SHADOW_LENGTH );
m_textChoice[i].EnableShadow( true );
m_textChoice[i].SetShadowLength( 4 );
this->AddChild( &m_textChoice[i] );
}
}
+1 -1
View File
@@ -396,7 +396,7 @@ void Sprite::DrawTexture( const TweenState *state )
//////////////////////
// render the shadow
//////////////////////
if( m_bShadow )
if( m_fShadowLength != 0 )
{
DISPLAY->PushMatrix();
DISPLAY->TranslateWorld( m_fShadowLength, m_fShadowLength, 0 ); // shift by 5 units