Merge with default
This commit is contained in:
@@ -5,12 +5,19 @@ from StepMania 4 alpha 5 to sm-ssc v1.2.5, see Changelog_sm-ssc.txt.
|
|||||||
________________________________________________________________________________
|
________________________________________________________________________________
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
StepMania 5.0 Preview 2 | 20110???
|
StepMania 5.0 Preview 1a | 20110603
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
Date Forgotten
|
||||||
|
--------------
|
||||||
|
* [ScreenEdit] Fix Song Timing behaviors. [Wolfman2000]
|
||||||
|
* [NotesLoaderSM] Fix an Offset load bug. [Wolfman2000]
|
||||||
|
|
||||||
2011/06/03
|
2011/06/03
|
||||||
----------
|
----------
|
||||||
* [LifeMeterBattery] Added LivesLeft param to LifeChanged message. [AJ]
|
* [LifeMeterBattery] Added LivesLeft param to LifeChanged message. [AJ]
|
||||||
|
* [Windows] Set up directories for pictures and app data in their proper
|
||||||
|
location. [Henke]
|
||||||
|
|
||||||
2011/06/02
|
2011/06/02
|
||||||
----------
|
----------
|
||||||
|
|||||||
+3
-48
@@ -130,6 +130,7 @@
|
|||||||
<Function name='PrintTable'/>
|
<Function name='PrintTable'/>
|
||||||
<Function name='ProductID'/>
|
<Function name='ProductID'/>
|
||||||
<Function name='ProductVersion'/>
|
<Function name='ProductVersion'/>
|
||||||
|
<Function name='Profile'/>
|
||||||
<Function name='RadarCategoryToLocalizedString'/>
|
<Function name='RadarCategoryToLocalizedString'/>
|
||||||
<Function name='ReadGamePrefFromFile'/>
|
<Function name='ReadGamePrefFromFile'/>
|
||||||
<Function name='ReadPrefFromFile'/>
|
<Function name='ReadPrefFromFile'/>
|
||||||
@@ -1025,52 +1026,6 @@
|
|||||||
<Function name='SetPreference'/>
|
<Function name='SetPreference'/>
|
||||||
<Function name='SetPreferenceToDefault'/>
|
<Function name='SetPreferenceToDefault'/>
|
||||||
</Class>
|
</Class>
|
||||||
<Class name='Profile'>
|
|
||||||
<Function name='GetCaloriesBurnedToday'/>
|
|
||||||
<Function name='GetCharacter'/>
|
|
||||||
<Function name='GetCoursesActual'/>
|
|
||||||
<Function name='GetCoursesPercentComplete'/>
|
|
||||||
<Function name='GetCoursesPossible'/>
|
|
||||||
<Function name='GetDisplayName'/>
|
|
||||||
<Function name='GetDisplayTotalCaloriesBurned'/>
|
|
||||||
<Function name='GetGoalCalories'/>
|
|
||||||
<Function name='GetGoalSeconds'/>
|
|
||||||
<Function name='GetGoalType'/>
|
|
||||||
<Function name='GetHighScoreList'/>
|
|
||||||
<Function name='GetLastUsedHighScoreName'/>
|
|
||||||
<Function name='GetMostPopularCourse'/>
|
|
||||||
<Function name='GetMostPopularSong'/>
|
|
||||||
<Function name='GetNumToasties'/>
|
|
||||||
<Function name='GetNumTotalSongsPlayed'/>
|
|
||||||
<Function name='GetSongNumTimesPlayed'/>
|
|
||||||
<Function name='GetSongsActual'/>
|
|
||||||
<Function name='GetSongsAndCoursesPercentCompleteAllDifficulties'/>
|
|
||||||
<Function name='GetSongsPercentComplete'/>
|
|
||||||
<Function name='GetSongsPossible'/>
|
|
||||||
<Function name='GetTotalCaloriesBurned'/>
|
|
||||||
<Function name='GetTotalGameplaySeconds'/>
|
|
||||||
<Function name='GetTotalHands'/>
|
|
||||||
<Function name='GetTotalHolds'/>
|
|
||||||
<Function name='GetTotalJumps'/>
|
|
||||||
<Function name='GetTotalLifts'/>
|
|
||||||
<Function name='GetTotalMines'/>
|
|
||||||
<Function name='GetTotalNumSongsPlayed'/>
|
|
||||||
<Function name='GetTotalRolls'/>
|
|
||||||
<Function name='GetTotalSessionSeconds'/>
|
|
||||||
<Function name='GetTotalSessions'/>
|
|
||||||
<Function name='GetTotalStepsWithTopGrade'/>
|
|
||||||
<Function name='GetTotalTapsAndHolds'/>
|
|
||||||
<Function name='GetTotalTrailsWithTopGrade'/>
|
|
||||||
<Function name='GetUserData'/>
|
|
||||||
<Function name='GetWeightPounds'/>
|
|
||||||
<Function name='HasPassedAnyStepsInSong'/>
|
|
||||||
<Function name='IsCodeUnlocked'/>
|
|
||||||
<Function name='SetCharacter'/>
|
|
||||||
<Function name='SetGoalCalories'/>
|
|
||||||
<Function name='SetGoalSeconds'/>
|
|
||||||
<Function name='SetGoalType'/>
|
|
||||||
<Function name='SetWeightPounds'/>
|
|
||||||
</Class>
|
|
||||||
<Class name='ProfileManager'>
|
<Class name='ProfileManager'>
|
||||||
<Function name='GetLocalProfile'/>
|
<Function name='GetLocalProfile'/>
|
||||||
<Function name='GetLocalProfileFromIndex'/>
|
<Function name='GetLocalProfileFromIndex'/>
|
||||||
@@ -2105,6 +2060,6 @@
|
|||||||
<Constant name='sGame' value=''dance''/>
|
<Constant name='sGame' value=''dance''/>
|
||||||
<Constant name='top' value=''VertAlign_Top''/>
|
<Constant name='top' value=''VertAlign_Top''/>
|
||||||
</Constants>
|
</Constants>
|
||||||
<Version>StepMania 5 v5.0 Preview 1</Version>
|
<Version>StepMania 5 v5.0 Preview 1a</Version>
|
||||||
<Date>2011-06-02</Date>
|
<Date>2011-06-04</Date>
|
||||||
</Lua>
|
</Lua>
|
||||||
|
|||||||
@@ -1,7 +1,4 @@
|
|||||||
-- check if players are playing steps with different timingdata.
|
return Def.SongBPMDisplay {
|
||||||
local numPlayers = GAMESTATE:GetNumPlayersEnabled()
|
|
||||||
|
|
||||||
local displaySingle = Def.SongBPMDisplay {
|
|
||||||
File=THEME:GetPathF("BPMDisplay", "bpm");
|
File=THEME:GetPathF("BPMDisplay", "bpm");
|
||||||
Name="BPMDisplay";
|
Name="BPMDisplay";
|
||||||
InitCommand=cmd(zoom,0.675;shadowlength,1);
|
InitCommand=cmd(zoom,0.675;shadowlength,1);
|
||||||
@@ -9,54 +6,3 @@ local displaySingle = Def.SongBPMDisplay {
|
|||||||
CurrentSongChangedMessageCommand=cmd(playcommand,"Set");
|
CurrentSongChangedMessageCommand=cmd(playcommand,"Set");
|
||||||
CurrentCourseChangedMessageCommand=cmd(playcommand,"Set");
|
CurrentCourseChangedMessageCommand=cmd(playcommand,"Set");
|
||||||
};
|
};
|
||||||
|
|
||||||
if numPlayers == 1 then
|
|
||||||
return displaySingle
|
|
||||||
else
|
|
||||||
-- check if both players are playing the same steps
|
|
||||||
local stepsP1 = GAMESTATE:GetCurrentSteps(PLAYER_1)
|
|
||||||
local stepsP2 = GAMESTATE:GetCurrentSteps(PLAYER_2)
|
|
||||||
|
|
||||||
local stP1 = stepsP1:GetStepsType()
|
|
||||||
local stP2 = stepsP2:GetStepsType()
|
|
||||||
|
|
||||||
local diffP1 = stepsP1:GetDifficulty()
|
|
||||||
local diffP2 = stepsP2:GetDifficulty()
|
|
||||||
|
|
||||||
if stP1 == stP2 and diffP1 == diffP2 then
|
|
||||||
-- both players are using the same steps; only need one.
|
|
||||||
return displaySingle
|
|
||||||
end
|
|
||||||
|
|
||||||
-- otherwise, we have some more work to do.
|
|
||||||
local timingP1 = stepsP1:GetTimingData()
|
|
||||||
local timingP2 = stepsP2:GetTimingData()
|
|
||||||
|
|
||||||
local function UpdateBPM(self)
|
|
||||||
local dispP1 = self:GetChild("DisplayP1")
|
|
||||||
local dispP2 = self:GetChild("DisplayP2")
|
|
||||||
|
|
||||||
-- needs current bpm for p1 and p2
|
|
||||||
for pn in ivalues(PlayerNumber) do
|
|
||||||
local bpmDisplay = (pn == PLAYER_1) and dispP1 or dispP2
|
|
||||||
local pState = GAMESTATE:GetPlayerState(pn);
|
|
||||||
local songPosition = pState:GetSongPosition()
|
|
||||||
local bpm = songPosition:GetCurBPS() * 60
|
|
||||||
bpmDisplay:settext( string.format(%.2f,bpm) )
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local displayTwoPlayers = Def.ActorFrame{
|
|
||||||
-- manual bpm displays
|
|
||||||
LoadFont("BPMDisplay", "bpm")..{
|
|
||||||
Name="DisplayP1";
|
|
||||||
InitCommand=cmd(zoom,0.675;shadowlength,1);
|
|
||||||
};
|
|
||||||
LoadFont("BPMDisplay", "bpm")..{
|
|
||||||
Name="DisplayP2";
|
|
||||||
InitCommand=cmd(zoom,0.675;shadowlength,1);
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
displayTwoPlayers.InitCommand=cmd(SetUpdateFunction,UpdateBPM);
|
|
||||||
end
|
|
||||||
@@ -106,7 +106,7 @@ void LifeMeterBattery::ChangeLife( TapNoteScore score )
|
|||||||
if( m_iLivesLeft == 0 )
|
if( m_iLivesLeft == 0 )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// xxx: This is hardcoded; we should use metrics for this. -aj
|
// todo: let the themer decide how this is handled. -aj
|
||||||
switch( score )
|
switch( score )
|
||||||
{
|
{
|
||||||
case TNS_W1:
|
case TNS_W1:
|
||||||
|
|||||||
@@ -43,7 +43,6 @@ private:
|
|||||||
float m_fBatteryBlinkTime; // if > 0 battery is blinking
|
float m_fBatteryBlinkTime; // if > 0 battery is blinking
|
||||||
|
|
||||||
// theme metrics added for sm-ssc
|
// theme metrics added for sm-ssc
|
||||||
//ThemeMetric<> METRIC_NAME;
|
|
||||||
ThemeMetric<float> BATTERY_BLINK_TIME;
|
ThemeMetric<float> BATTERY_BLINK_TIME;
|
||||||
|
|
||||||
AutoActor m_sprFrame;
|
AutoActor m_sprFrame;
|
||||||
|
|||||||
@@ -560,7 +560,7 @@ bool SMLoader::LoadFromSMFile( const RString &sPath, Song &out, bool bFromCache
|
|||||||
|
|
||||||
else if( sValueName=="OFFSET" )
|
else if( sValueName=="OFFSET" )
|
||||||
{
|
{
|
||||||
out.m_fBeat0OffsetInSeconds = StringToFloat( sParams[1] );
|
out.m_SongTiming.m_fBeat0OffsetInSeconds = StringToFloat( sParams[1] );
|
||||||
}
|
}
|
||||||
else if( sValueName=="BPMS" )
|
else if( sValueName=="BPMS" )
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -265,7 +265,7 @@ void PlayerOptions::FromString( const RString &sMultipleMods )
|
|||||||
{
|
{
|
||||||
if (!FromOneModString( *s, sThrowAway ))
|
if (!FromOneModString( *s, sThrowAway ))
|
||||||
{
|
{
|
||||||
LOG->Trace( "Attempted to load a non-existing mod %s for the Player. Ignoring.", (*s).c_str() );
|
LOG->Trace( "Attempted to load a non-existing mod \'%s\' for the Player. Ignoring.", (*s).c_str() );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -300,8 +300,8 @@ bool PlayerOptions::FromOneModString( const RString &sOneMod, RString &sErrorOut
|
|||||||
* they meant "*123". */
|
* they meant "*123". */
|
||||||
if( s->Right(1) == "*" )
|
if( s->Right(1) == "*" )
|
||||||
{
|
{
|
||||||
/* XXX We know what they want, is there any reason not to handle it? */
|
// XXX: We know what they want, is there any reason not to handle it?
|
||||||
/* Yes. We should be strict in handling the format. -Chris */
|
// Yes. We should be strict in handling the format. -Chris
|
||||||
sErrorOut = ssprintf("Invalid player options \"%s\"; did you mean '*%d'?", s->c_str(), StringToInt(*s) );
|
sErrorOut = ssprintf("Invalid player options \"%s\"; did you mean '*%d'?", s->c_str(), StringToInt(*s) );
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -583,7 +583,7 @@ float PlayerStageStats::GetPercentageOfTaps( TapNoteScore tns ) const
|
|||||||
|
|
||||||
void PlayerStageStats::CalcAwards( PlayerNumber p, bool bGaveUp, bool bUsedAutoplay )
|
void PlayerStageStats::CalcAwards( PlayerNumber p, bool bGaveUp, bool bUsedAutoplay )
|
||||||
{
|
{
|
||||||
LOG->Trace( "hand out awards" );
|
//LOG->Trace( "hand out awards" );
|
||||||
|
|
||||||
m_PeakComboAward = PeakComboAward_Invalid;
|
m_PeakComboAward = PeakComboAward_Invalid;
|
||||||
|
|
||||||
@@ -592,7 +592,7 @@ void PlayerStageStats::CalcAwards( PlayerNumber p, bool bGaveUp, bool bUsedAutop
|
|||||||
|
|
||||||
deque<StageAward> &vPdas = GAMESTATE->m_vLastStageAwards[p];
|
deque<StageAward> &vPdas = GAMESTATE->m_vLastStageAwards[p];
|
||||||
|
|
||||||
LOG->Trace( "per difficulty awards" );
|
//LOG->Trace( "per difficulty awards" );
|
||||||
|
|
||||||
// per-difficulty awards
|
// per-difficulty awards
|
||||||
// don't give per-difficutly awards if using easy mods
|
// don't give per-difficutly awards if using easy mods
|
||||||
@@ -632,7 +632,7 @@ void PlayerStageStats::CalcAwards( PlayerNumber p, bool bGaveUp, bool bUsedAutop
|
|||||||
else
|
else
|
||||||
m_StageAward = StageAward_Invalid;
|
m_StageAward = StageAward_Invalid;
|
||||||
|
|
||||||
LOG->Trace( "done with per difficulty awards" );
|
//LOG->Trace( "done with per difficulty awards" );
|
||||||
|
|
||||||
// DO give peak combo awards if using easy mods
|
// DO give peak combo awards if using easy mods
|
||||||
int iComboAtStartOfStage = GetComboAtStartOfStage();
|
int iComboAtStartOfStage = GetComboAtStartOfStage();
|
||||||
@@ -642,7 +642,7 @@ void PlayerStageStats::CalcAwards( PlayerNumber p, bool bGaveUp, bool bUsedAutop
|
|||||||
{
|
{
|
||||||
int iLevel = 1000 * (pca+1);
|
int iLevel = 1000 * (pca+1);
|
||||||
bool bCrossedLevel = iComboAtStartOfStage < iLevel && iPeakCombo >= iLevel;
|
bool bCrossedLevel = iComboAtStartOfStage < iLevel && iPeakCombo >= iLevel;
|
||||||
LOG->Trace( "pca = %d, iLevel = %d, bCrossedLevel = %d", pca, iLevel, bCrossedLevel );
|
//LOG->Trace( "pca = %d, iLevel = %d, bCrossedLevel = %d", pca, iLevel, bCrossedLevel );
|
||||||
if( bCrossedLevel )
|
if( bCrossedLevel )
|
||||||
GAMESTATE->m_vLastPeakComboAwards[p].push_back( pca );
|
GAMESTATE->m_vLastPeakComboAwards[p].push_back( pca );
|
||||||
}
|
}
|
||||||
@@ -652,7 +652,7 @@ void PlayerStageStats::CalcAwards( PlayerNumber p, bool bGaveUp, bool bUsedAutop
|
|||||||
else
|
else
|
||||||
m_PeakComboAward = PeakComboAward_Invalid;
|
m_PeakComboAward = PeakComboAward_Invalid;
|
||||||
|
|
||||||
LOG->Trace( "done with per combo awards" );
|
//LOG->Trace( "done with per combo awards" );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -35,7 +35,7 @@
|
|||||||
* </li></ul>
|
* </li></ul>
|
||||||
*/
|
*/
|
||||||
#ifndef PRODUCT_VER_BARE
|
#ifndef PRODUCT_VER_BARE
|
||||||
#define PRODUCT_VER_BARE v5.0 Preview 1
|
#define PRODUCT_VER_BARE v5.0 Preview 1a
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
; see ProductInfo.h for use descriptions
|
; see ProductInfo.h for use descriptions
|
||||||
!define PRODUCT_ID "StepMania"
|
!define PRODUCT_ID "StepMania"
|
||||||
!define PRODUCT_VER "v5.0 Preview 1"
|
!define PRODUCT_VER "v5.0 Preview 1a"
|
||||||
!define PRODUCT_DISPLAY "${PRODUCT_ID} ${PRODUCT_VER}"
|
!define PRODUCT_DISPLAY "${PRODUCT_ID} ${PRODUCT_VER}"
|
||||||
!define PRODUCT_BITMAP "ssc"
|
!define PRODUCT_BITMAP "ssc"
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -41,7 +41,7 @@
|
|||||||
* @brief The internal version of the cache for StepMania.
|
* @brief The internal version of the cache for StepMania.
|
||||||
*
|
*
|
||||||
* Increment this value to invalidate the current cache. */
|
* Increment this value to invalidate the current cache. */
|
||||||
const int FILE_CACHE_VERSION = 177;
|
const int FILE_CACHE_VERSION = 178;
|
||||||
|
|
||||||
/** @brief How long does a song sample last by default? */
|
/** @brief How long does a song sample last by default? */
|
||||||
const float DEFAULT_MUSIC_SAMPLE_LENGTH = 12.f;
|
const float DEFAULT_MUSIC_SAMPLE_LENGTH = 12.f;
|
||||||
|
|||||||
@@ -287,9 +287,6 @@ public:
|
|||||||
/** @brief The Song's TimingData. */
|
/** @brief The Song's TimingData. */
|
||||||
TimingData m_SongTiming;
|
TimingData m_SongTiming;
|
||||||
|
|
||||||
/** @brief The initial offset of a song. */
|
|
||||||
float m_fBeat0OffsetInSeconds;
|
|
||||||
|
|
||||||
typedef vector<BackgroundChange> VBackgroundChange;
|
typedef vector<BackgroundChange> VBackgroundChange;
|
||||||
private:
|
private:
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -181,8 +181,8 @@ IDI_ICON1 ICON "smzip.ico"
|
|||||||
//
|
//
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
VS_VERSION_INFO VERSIONINFO
|
||||||
FILEVERSION 1,0,0,1
|
FILEVERSION 5,0,0,2
|
||||||
PRODUCTVERSION 1,2,4,1
|
PRODUCTVERSION 5,0,0,2
|
||||||
FILEFLAGSMASK 0x3fL
|
FILEFLAGSMASK 0x3fL
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
FILEFLAGS 0x1L
|
FILEFLAGS 0x1L
|
||||||
@@ -197,14 +197,14 @@ BEGIN
|
|||||||
BEGIN
|
BEGIN
|
||||||
BLOCK "040904b0"
|
BLOCK "040904b0"
|
||||||
BEGIN
|
BEGIN
|
||||||
VALUE "CompanyName", "the spinal shark collective\nhttp://ssc.ajworld.net/"
|
VALUE "CompanyName", "StepMania Team\nhttp://www.stepmania.com/"
|
||||||
VALUE "FileDescription", "sm-ssc"
|
VALUE "FileDescription", "StepMania"
|
||||||
VALUE "FileVersion", "1, 2, 4, 0"
|
VALUE "FileVersion", "5, 0, 0, 2"
|
||||||
VALUE "InternalName", "sm-ssc"
|
VALUE "InternalName", "sm-ssc"
|
||||||
VALUE "LegalCopyright", "Copyright © 2001-2011"
|
VALUE "LegalCopyright", "Copyright © 2001-2011"
|
||||||
VALUE "OriginalFilename", "StepMania.exe"
|
VALUE "OriginalFilename", "StepMania.exe"
|
||||||
VALUE "ProductName", "sm-ssc"
|
VALUE "ProductName", "StepMania"
|
||||||
VALUE "ProductVersion", "1, 2, 4, 0"
|
VALUE "ProductVersion", "5, 0, 0, 2"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
BLOCK "VarFileInfo"
|
BLOCK "VarFileInfo"
|
||||||
|
|||||||
Reference in New Issue
Block a user