Merge with default

This commit is contained in:
Henrik Andersson
2011-06-02 18:36:17 +02:00
8 changed files with 64 additions and 3 deletions
+8 -2
View File
@@ -5,10 +5,15 @@ from StepMania 4 alpha 5 to sm-ssc v1.2.5, see Changelog_sm-ssc.txt.
________________________________________________________________________________ ________________________________________________________________________________
================================================================================ ================================================================================
StepMania 5.0 ????????? | 20110??? StepMania 5.0 Preview 2 | 20110???
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
2011/05/31 2011/06/02
----------
* [BPMDisplay] Added SetFromSteps Lua binding. [AJ]
2011/06/01
----------
* [TimingData] Added the HasScrollChanges lua binding. [Wolfman2000] * [TimingData] Added the HasScrollChanges lua binding. [Wolfman2000]
2011/05/31 2011/05/31
@@ -16,6 +21,7 @@ StepMania 5.0 ????????? | 20110???
* [Player] Added the BattleRaveMirror metric. This determines if Battle and * [Player] Added the BattleRaveMirror metric. This determines if Battle and
Rave mode will have the two players with mirrored charts or not. By default, Rave mode will have the two players with mirrored charts or not. By default,
this is set to true, preserving the ITG style behavior. [Wolfman2000] this is set to true, preserving the ITG style behavior. [Wolfman2000]
* [TimingData] Added the HasScrollChanges lua binding. [Wolfman2000]
================================================================================ ================================================================================
StepMania 5.0 Preview 1 | 20110529 StepMania 5.0 Preview 1 | 20110529
+9
View File
@@ -902,12 +902,18 @@
<Function name='bezier' theme='_fallback' return='void' arguments=''> <Function name='bezier' theme='_fallback' return='void' arguments=''>
[02 Actor.lua] [02 Actor.lua]
</Function> </Function>
<Function name='Center' theme='_fallback' return='void' arguments=''>
[02 Actor.lua] Centers an Actor on the screen. (equivalent to <code>x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y</code>)
</Function>
<Function name='CenterX' theme='_fallback' return='void' arguments=''> <Function name='CenterX' theme='_fallback' return='void' arguments=''>
[03 ProductivityHelpers.lua] Centers an Actor on the X axis. (equivalent to <code>x,SCREEN_CENTER_X</code>) [03 ProductivityHelpers.lua] Centers an Actor on the X axis. (equivalent to <code>x,SCREEN_CENTER_X</code>)
</Function> </Function>
<Function name='CenterY' theme='_fallback' return='void' arguments=''> <Function name='CenterY' theme='_fallback' return='void' arguments=''>
[03 ProductivityHelpers.lua] Centers an Actor on the y axis. (equivalent to <code>y,SCREEN_CENTER_Y</code>) [03 ProductivityHelpers.lua] Centers an Actor on the y axis. (equivalent to <code>y,SCREEN_CENTER_Y</code>)
</Function> </Function>
<Function name='FullScreen' theme='_fallback' return='void' arguments=''>
[02 Actor.lua] Stretches an Actor to cover the screen. (equivalent to <code>stretchto,0,0,SCREEN_WIDTH,SCREEN_HEIGHT</code>)
</Function>
<Function name='heartbeat' theme='_fallback' return='void' arguments='float fEffectPeriod'> <Function name='heartbeat' theme='_fallback' return='void' arguments='float fEffectPeriod'>
[03 ProductivityHelpers.lua] A customized version of pulse that is more appealing for on-beat effects. [03 ProductivityHelpers.lua] A customized version of pulse that is more appealing for on-beat effects.
</Function> </Function>
@@ -1267,6 +1273,9 @@
<Function name='SetFromSong' sm-ssc='true' return='void' arguments='Song s'> <Function name='SetFromSong' sm-ssc='true' return='void' arguments='Song s'>
Sets the BPMDisplay from the specified Song. Sets the BPMDisplay from the specified Song.
</Function> </Function>
<Function name='SetFromSteps' sm-ssc='true' return='void' arguments='Steps s'>
Sets the BPMDisplay from the specified Steps.
</Function>
</Class> </Class>
<Class name='Character'> <Class name='Character'>
<Function name='GetCardPath' return='string' arguments=''> <Function name='GetCardPath' return='string' arguments=''>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 380 KiB

After

Width:  |  Height:  |  Size: 105 KiB

+1 -1
View File
@@ -27,7 +27,7 @@ Top=8
Baseline=23 Baseline=23
LineSpacing=24 LineSpacing=24
line 0=☆★♥Ω line 0=☆★♥Ω
map doublezeta=5 map doublezeta=5
map planet=6 map planet=6
+23
View File
@@ -9,6 +9,7 @@
#include "CommonMetrics.h" #include "CommonMetrics.h"
#include "LocalizedString.h" #include "LocalizedString.h"
#include "Song.h" #include "Song.h"
#include "Steps.h"
#include <limits.h> #include <limits.h>
@@ -198,6 +199,17 @@ void BPMDisplay::SetBpmFromSong( const Song* pSong )
} }
} }
void BPMDisplay::SetBpmFromSteps( const Steps* pSteps )
{
ASSERT( pSteps );
DisplayBpms bpms;
float fMinBPM, fMaxBPM;
pSteps->m_Timing.GetActualBPM( fMinBPM, fMaxBPM );
bpms.Add( fMinBPM );
bpms.Add( fMaxBPM );
m_fCycleTime = 1.0f;
}
void BPMDisplay::SetBpmFromCourse( const Course* pCourse ) void BPMDisplay::SetBpmFromCourse( const Course* pCourse )
{ {
ASSERT( pCourse ); ASSERT( pCourse );
@@ -307,6 +319,16 @@ public:
} }
return 0; return 0;
} }
static int SetFromSteps( T* p, lua_State *L )
{
if( lua_isnil(L,1) ) { p->NoBPM(); }
else
{
const Steps* pSteps = Luna<Steps>::check( L, 1, true );
p->SetBpmFromSteps(pSteps);
}
return 0;
}
static int SetFromCourse( T* p, lua_State *L ) static int SetFromCourse( T* p, lua_State *L )
{ {
if( lua_isnil(L,1) ) { p->NoBPM(); } if( lua_isnil(L,1) ) { p->NoBPM(); }
@@ -323,6 +345,7 @@ public:
{ {
ADD_METHOD( SetFromGameState ); ADD_METHOD( SetFromGameState );
ADD_METHOD( SetFromSong ); ADD_METHOD( SetFromSong );
ADD_METHOD( SetFromSteps );
ADD_METHOD( SetFromCourse ); ADD_METHOD( SetFromCourse );
ADD_METHOD( GetText ); ADD_METHOD( GetText );
} }
+6
View File
@@ -6,6 +6,7 @@
#include "ThemeMetric.h" #include "ThemeMetric.h"
#include "LocalizedString.h" #include "LocalizedString.h"
class Song; class Song;
class Steps;
class Course; class Course;
struct DisplayBpms; struct DisplayBpms;
@@ -30,6 +31,11 @@ public:
* @param pSong the song in question. * @param pSong the song in question.
*/ */
void SetBpmFromSong( const Song* pSong ); void SetBpmFromSong( const Song* pSong );
/**
* @brief Use the BPM[s] from a steps.
* @param pSteps the steps in question.
*/
void SetBpmFromSteps( const Steps* pSteps );
/** /**
* @brief Use the BPM[s] from a course. * @brief Use the BPM[s] from a course.
* @param pCourse the course in question. * @param pCourse the course in question.
+10
View File
@@ -2354,12 +2354,16 @@ void ScreenEdit::TransitionEditState( EditState em )
case STATE_PLAYING: case STATE_PLAYING:
AdjustSync::HandleSongEnd(); AdjustSync::HandleSongEnd();
if (!GAMESTATE->m_bIsUsingStepTiming)
GAMESTATE->m_pCurSteps[PLAYER_1]->m_Timing = backupStepTiming;
if( AdjustSync::IsSyncDataChanged() ) if( AdjustSync::IsSyncDataChanged() )
ScreenSaveSync::PromptSaveSync(); ScreenSaveSync::PromptSaveSync();
break; break;
case STATE_RECORDING: case STATE_RECORDING:
SetDirty( true ); SetDirty( true );
if (!GAMESTATE->m_bIsUsingStepTiming)
GAMESTATE->m_pCurSteps[PLAYER_1]->m_Timing = backupStepTiming;
SaveUndo(); SaveUndo();
// delete old TapNotes in the range // delete old TapNotes in the range
@@ -2411,6 +2415,12 @@ void ScreenEdit::TransitionEditState( EditState em )
GAMESTATE->m_bGameplayLeadIn.Set( false ); GAMESTATE->m_bGameplayLeadIn.Set( false );
if (!GAMESTATE->m_bIsUsingStepTiming)
{
backupStepTiming = GetAppropriateTiming();
GAMESTATE->m_pCurSteps[PLAYER_1]->m_Timing = GAMESTATE->m_pCurSong->m_SongTiming;
}
/* Reset the note skin, in case preferences have changed. */ /* Reset the note skin, in case preferences have changed. */
// XXX // XXX
// GAMESTATE->ResetNoteSkins(); // GAMESTATE->ResetNoteSkins();
+7
View File
@@ -251,6 +251,13 @@ protected:
BitmapText m_textInputTips; BitmapText m_textInputTips;
/**
* @brief Keep a backup of the present Step TimingData when
* entering a playing or recording state.
*
* This is mainly to allow playing a chart with Song Timing. */
TimingData backupStepTiming;
/** @brief The current TapNote that would be inserted. */ /** @brief The current TapNote that would be inserted. */
TapNote m_selectedTap; TapNote m_selectedTap;