Some rather massive changes to Evaluation to allow for theming of Pump It Up style Evaluation Screens.
In Short: A sound plays each time a judgement appears on the screen. I've made a fair few options available for themers on this one... hence so many redir files.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
//Test file for Miryo's new Unlock system. Songs are matched by name, not folder name
|
||||
[DP]500|Gamelan de Couple
|
||||
[DP]7500|Exotic Ethnic
|
||||
[DP]10000|Maxx Unlimited
|
||||
// [DP]500|Gamelan de Couple
|
||||
// [DP]7500|Exotic Ethnic
|
||||
// [DP]10000|Maxx Unlimited
|
||||
[DP]4000|Paranoia Survivor Max
|
||||
@@ -861,6 +861,15 @@ TickEarlySeconds=0.05
|
||||
[ScreenEvaluation]
|
||||
BannerWidth=248
|
||||
BannerHeight=92
|
||||
JudgeSoundTimeMarvelous=-1
|
||||
JudgeSoundTimePerfect=-1
|
||||
JudgeSoundTimeGreat=-1
|
||||
JudgeSoundTimeGood=-1
|
||||
JudgeSoundTimeBoo=-1
|
||||
JudgeSoundTimeMiss=-1
|
||||
JudgeSoundTimeOK=-1
|
||||
JudgeSoundTimeMaxCombo=-1 // how long to wait until we play the sound after the screen appears.... -1 means play no sound ever.
|
||||
JudgeSoundIfJudgeGraphicsFullAlpha=0 // only play the sound if one of the judge graphics for the associated sound are full alpha
|
||||
LargeBannerX=320
|
||||
LargeBannerY=100
|
||||
LargeBannerOnCommand=addy,480;sleep,0.0;decelerate,0.3;addy,-480
|
||||
@@ -1230,6 +1239,15 @@ ShowScoreArea=1
|
||||
ShowTimeArea=0
|
||||
HelpText=Press START to continue
|
||||
TimerSeconds=15
|
||||
JudgeSoundTimeMarvelous=-1
|
||||
JudgeSoundTimePerfect=-1
|
||||
JudgeSoundTimeGreat=-1
|
||||
JudgeSoundTimeGood=-1
|
||||
JudgeSoundTimeBoo=-1
|
||||
JudgeSoundTimeMiss=-1
|
||||
JudgeSoundTimeOK=-1
|
||||
JudgeSoundTimeMaxCombo=-1
|
||||
JudgeSoundIfJudgeGraphicsFullAlpha=0
|
||||
|
||||
[ScreenEvaluationSummary]
|
||||
NextScreen=ScreenNameEntry
|
||||
@@ -1252,6 +1270,15 @@ ShowScoreArea=1
|
||||
ShowTimeArea=0
|
||||
HelpText=Press START to continue
|
||||
TimerSeconds=30
|
||||
JudgeSoundTimeMarvelous=-1
|
||||
JudgeSoundTimePerfect=-1
|
||||
JudgeSoundTimeGreat=-1
|
||||
JudgeSoundTimeGood=-1
|
||||
JudgeSoundTimeBoo=-1
|
||||
JudgeSoundTimeMiss=-1
|
||||
JudgeSoundTimeOK=-1
|
||||
JudgeSoundTimeMaxCombo=-1
|
||||
JudgeSoundIfJudgeGraphicsFullAlpha=0
|
||||
|
||||
[ScreenEvaluationNonstop]
|
||||
NextScreen=ScreenNameEntry
|
||||
@@ -1274,6 +1301,15 @@ ShowScoreArea=1
|
||||
ShowTimeArea=0
|
||||
HelpText=Press START to continue
|
||||
TimerSeconds=30
|
||||
JudgeSoundTimeMarvelous=-1
|
||||
JudgeSoundTimePerfect=-1
|
||||
JudgeSoundTimeGreat=-1
|
||||
JudgeSoundTimeGood=-1
|
||||
JudgeSoundTimeBoo=-1
|
||||
JudgeSoundTimeMiss=-1
|
||||
JudgeSoundTimeOK=-1
|
||||
JudgeSoundTimeMaxCombo=-1
|
||||
JudgeSoundIfJudgeGraphicsFullAlpha=0
|
||||
|
||||
[ScreenEvaluationOni]
|
||||
NextScreen=ScreenNameEntry
|
||||
@@ -1296,6 +1332,15 @@ ShowScoreArea=0
|
||||
ShowTimeArea=1
|
||||
HelpText=Press START to continue
|
||||
TimerSeconds=30
|
||||
JudgeSoundTimeMarvelous=-1
|
||||
JudgeSoundTimePerfect=-1
|
||||
JudgeSoundTimeGreat=-1
|
||||
JudgeSoundTimeGood=-1
|
||||
JudgeSoundTimeBoo=-1
|
||||
JudgeSoundTimeMiss=-1
|
||||
JudgeSoundTimeOK=-1
|
||||
JudgeSoundTimeMaxCombo=-1
|
||||
JudgeSoundIfJudgeGraphicsFullAlpha=0
|
||||
|
||||
[ScreenEvaluationEndless]
|
||||
NextScreen=ScreenNameEntry
|
||||
@@ -1318,6 +1363,15 @@ ShowScoreArea=0
|
||||
ShowTimeArea=1
|
||||
HelpText=Press START to continue
|
||||
TimerSeconds=30
|
||||
JudgeSoundTimeMarvelous=-1
|
||||
JudgeSoundTimePerfect=-1
|
||||
JudgeSoundTimeGreat=-1
|
||||
JudgeSoundTimeGood=-1
|
||||
JudgeSoundTimeBoo=-1
|
||||
JudgeSoundTimeMiss=-1
|
||||
JudgeSoundTimeOK=-1
|
||||
JudgeSoundTimeMaxCombo=-1
|
||||
JudgeSoundIfJudgeGraphicsFullAlpha=0
|
||||
|
||||
[ScreenEvaluationBattle]
|
||||
NextScreen=ScreenSelectMusic
|
||||
@@ -1340,6 +1394,15 @@ ShowScoreArea=1
|
||||
ShowTimeArea=0
|
||||
HelpText=Press START to continue
|
||||
TimerSeconds=15
|
||||
JudgeSoundTimeMarvelous=-1
|
||||
JudgeSoundTimePerfect=-1
|
||||
JudgeSoundTimeGreat=-1
|
||||
JudgeSoundTimeGood=-1
|
||||
JudgeSoundTimeBoo=-1
|
||||
JudgeSoundTimeMiss=-1
|
||||
JudgeSoundTimeOK=-1
|
||||
JudgeSoundTimeMaxCombo=-1
|
||||
JudgeSoundIfJudgeGraphicsFullAlpha=0
|
||||
|
||||
[ScreenEvaluationRave]
|
||||
NextScreen=ScreenSelectMusic
|
||||
@@ -1362,6 +1425,15 @@ ShowScoreArea=1
|
||||
ShowTimeArea=0
|
||||
HelpText=Press START to continue
|
||||
TimerSeconds=15
|
||||
JudgeSoundTimeMarvelous=-1
|
||||
JudgeSoundTimePerfect=-1
|
||||
JudgeSoundTimeGreat=-1
|
||||
JudgeSoundTimeGood=-1
|
||||
JudgeSoundTimeBoo=-1
|
||||
JudgeSoundTimeMiss=-1
|
||||
JudgeSoundTimeOK=-1
|
||||
JudgeSoundTimeMaxCombo=-1
|
||||
JudgeSoundIfJudgeGraphicsFullAlpha=0
|
||||
|
||||
[ScreenMusicScroll]
|
||||
ScrollDelay=0.2
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
#include "RageMath.h"
|
||||
#include "GameConstantsAndTypes.h"
|
||||
#include "RageLog.h"
|
||||
#include "ThemeManager.h"
|
||||
|
||||
/* This is Reset instead of Init since many derived classes have Init() functions
|
||||
* that shouldn't change the position of the actor. */
|
||||
@@ -280,6 +281,7 @@ void Actor::Update( float fDeltaTime )
|
||||
|
||||
if( m_bFirstUpdate )
|
||||
m_bFirstUpdate = false;
|
||||
|
||||
}
|
||||
|
||||
void Actor::BeginTweening( float time, TweenType tt )
|
||||
@@ -646,6 +648,8 @@ void Actor::Command( CString sCommandString )
|
||||
CStringArray asCommands;
|
||||
split( sCommandString, ";", asCommands, true );
|
||||
|
||||
float fTimeElapsed=0;
|
||||
|
||||
for( unsigned c=0; c<asCommands.size(); c++ )
|
||||
{
|
||||
CStringArray asTokens;
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
|
||||
#include "RageTypes.h"
|
||||
|
||||
|
||||
class Actor
|
||||
{
|
||||
public:
|
||||
@@ -270,6 +269,7 @@ protected:
|
||||
TweenState m_start;
|
||||
vector<TweenState> m_TweenStates;
|
||||
vector<TweenInfo> m_TweenInfo;
|
||||
|
||||
TweenState& LatestTween() { ASSERT(m_TweenStates.size()>0); return m_TweenStates.back(); };
|
||||
|
||||
//
|
||||
@@ -277,8 +277,6 @@ protected:
|
||||
//
|
||||
TweenState m_temp;
|
||||
|
||||
|
||||
|
||||
bool m_bFirstUpdate;
|
||||
|
||||
//
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "ThemeManager.h"
|
||||
#include "RageSoundManager.h"
|
||||
#include "ActorUtil.h"
|
||||
#include "RageTimer.h"
|
||||
|
||||
const int NUM_SCORE_DIGITS = 9;
|
||||
|
||||
@@ -87,6 +88,8 @@ const char* JUDGE_STRING[NUM_JUDGE_LINES] = { "Marvelous", "Perfect", "Great", "
|
||||
#define TRY_EXTRA_STAGE_UtilOffCommand THEME->GetMetric ("ScreenEvaluation",ssprintf("TryExtraStageUtilOffCommand"))
|
||||
*/
|
||||
|
||||
#define JUDGE_SOUND_TIME( name ) THEME->GetMetricF( m_sName, ssprintf("JudgeSoundTime%s", name) );
|
||||
#define SOUND_ON_FULL_ALPHA THEME->GetMetricB( m_sName, "JudgeSoundIfJudgeGraphicsFullAlpha" )
|
||||
// metrics that are specific to classes derived from ScreenEvaluation
|
||||
#define NEXT_SCREEN THEME->GetMetric (m_sName,"NextScreen")
|
||||
#define END_SCREEN THEME->GetMetric (m_sName,"EndScreen")
|
||||
@@ -131,7 +134,6 @@ ScreenEvaluation::ScreenEvaluation( CString sClassName, Type type ) : Screen(sCl
|
||||
m_sName = sClassName;
|
||||
m_Type = type;
|
||||
|
||||
|
||||
int p;
|
||||
|
||||
//
|
||||
@@ -521,6 +523,7 @@ ScreenEvaluation::ScreenEvaluation( CString sClassName, Type type ) : Screen(sCl
|
||||
int l;
|
||||
for( l=0; l<NUM_JUDGE_LINES; l++ )
|
||||
{
|
||||
m_TimeToPlayJudgeSound[l] = -1;
|
||||
if( l == 0 && !PREFSMAN->m_bMarvelousTiming )
|
||||
continue; // skip
|
||||
|
||||
@@ -533,6 +536,9 @@ ScreenEvaluation::ScreenEvaluation( CString sClassName, Type type ) : Screen(sCl
|
||||
UtilSetXYAndOnCommand( m_sprJudgeLabels[l], "ScreenEvaluation" );
|
||||
this->AddChild( &m_sprJudgeLabels[l] );
|
||||
|
||||
m_soundJudgeSound[l].Load( THEME->GetPathToS( ssprintf("ScreenEvaluation JudgeSound %s", JUDGE_STRING[l]) ) );
|
||||
m_TimeToPlayJudgeSound[l] = JUDGE_SOUND_TIME( JUDGE_STRING[l] );
|
||||
|
||||
for( p=0; p<NUM_PLAYERS; p++ )
|
||||
{
|
||||
if( !GAMESTATE->IsPlayerEnabled( (PlayerNumber)p ) )
|
||||
@@ -680,6 +686,7 @@ ScreenEvaluation::ScreenEvaluation( CString sClassName, Type type ) : Screen(sCl
|
||||
|
||||
|
||||
SOUNDMAN->PlayMusic( THEME->GetPathToS("ScreenEvaluation music") );
|
||||
m_fScreenCreateTime = RageTimer::GetTimeSinceStart();
|
||||
}
|
||||
|
||||
|
||||
@@ -798,10 +805,29 @@ void ScreenEvaluation::TweenOffScreen()
|
||||
UtilOffCommand( m_sprTryExtraStage, "ScreenEvaluation" );
|
||||
}
|
||||
|
||||
|
||||
void ScreenEvaluation::Update( float fDeltaTime )
|
||||
{
|
||||
Screen::Update( fDeltaTime );
|
||||
|
||||
for( int l=0; l<NUM_JUDGE_LINES; l++ )
|
||||
{
|
||||
if(SHOW_JUDGMENT(l))
|
||||
{
|
||||
if(m_TimeToPlayJudgeSound[l] != -1)
|
||||
{
|
||||
RageColor c;
|
||||
c.a = 1;
|
||||
if((m_fScreenCreateTime + m_TimeToPlayJudgeSound[l]) < RageTimer::GetTimeSinceStart())
|
||||
{
|
||||
if((SOUND_ON_FULL_ALPHA && (m_sprJudgeLabels[l].GetDiffuse().a == c.a || m_textJudgeNumbers[l][PLAYER_1].GetDiffuse().a == c.a || m_textJudgeNumbers[l][PLAYER_2].GetDiffuse().a == c.a) || !SOUND_ON_FULL_ALPHA) )
|
||||
{
|
||||
m_soundJudgeSound[l].Play();
|
||||
m_TimeToPlayJudgeSound[l] = -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ScreenEvaluation::DrawPrimitives()
|
||||
|
||||
@@ -47,6 +47,8 @@ protected:
|
||||
CString m_sName;
|
||||
Type m_Type;
|
||||
|
||||
float m_fScreenCreateTime;
|
||||
|
||||
MenuElements m_Menu;
|
||||
|
||||
// banner area
|
||||
@@ -84,6 +86,9 @@ protected:
|
||||
|
||||
// judgment area
|
||||
Sprite m_sprJudgeLabels[NUM_JUDGE_LINES];
|
||||
RageSound m_soundJudgeSound[NUM_JUDGE_LINES];
|
||||
float m_TimeToPlayJudgeSound[NUM_JUDGE_LINES];
|
||||
|
||||
BitmapText m_textJudgeNumbers[NUM_JUDGE_LINES][NUM_PLAYERS];
|
||||
|
||||
// score area
|
||||
|
||||
@@ -71,6 +71,13 @@ BEGIN
|
||||
END
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Cursor
|
||||
//
|
||||
|
||||
IDC_CURSOR1 CURSOR DISCARDABLE "cursor1.cur"
|
||||
#endif // Japanese resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Microsoft Developer Studio Project File - Name="StepMania" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 60000
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||
@@ -57,10 +57,10 @@ LINK32=link.exe
|
||||
# SUBTRACT LINK32 /verbose /pdb:none
|
||||
# Begin Special Build Tool
|
||||
IntDir=.\../Release6
|
||||
TargetDir=\stepmania\stepmania
|
||||
TargetDir=\Stepmania\stepmania
|
||||
TargetName=StepMania
|
||||
SOURCE="$(InputPath)"
|
||||
PreLink_Cmds=disasm\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||
PreLink_Cmds=disasm\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||
PostBuild_Cmds=disasm\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi ia32.vdi
|
||||
# End Special Build Tool
|
||||
|
||||
@@ -92,10 +92,10 @@ LINK32=link.exe
|
||||
# SUBTRACT LINK32 /verbose /profile /pdb:none /incremental:no /nodefaultlib
|
||||
# Begin Special Build Tool
|
||||
IntDir=.\../Debug6
|
||||
TargetDir=\stepmania\stepmania
|
||||
TargetDir=\Stepmania\stepmania
|
||||
TargetName=StepMania-debug
|
||||
SOURCE="$(InputPath)"
|
||||
PreLink_Cmds=disasm\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||
PreLink_Cmds=disasm\verinc cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
|
||||
PostBuild_Cmds=disasm\mapconv $(IntDir)\$(TargetName).map $(TargetDir)\StepMania.vdi ia32.vdi
|
||||
# End Special Build Tool
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
#define BITMAP_CRASH 121
|
||||
#define IDD_DIALOG1 126
|
||||
#define IDD_DIALOG2 127
|
||||
#define IDC_CURSOR1 128
|
||||
#define BITMAP_ERROR 129
|
||||
#define IDD_DISASM_CRASH 199
|
||||
#define IDC_SHOCKWAVEFLASH1 1000
|
||||
@@ -40,7 +41,7 @@
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 128
|
||||
#define _APS_NEXT_RESOURCE_VALUE 129
|
||||
#define _APS_NEXT_COMMAND_VALUE 40009
|
||||
#define _APS_NEXT_CONTROL_VALUE 1015
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
|
||||
Reference in New Issue
Block a user