[sm5a2futures -> default] Not that much changed...

Mainly minor stuff. Time this gets brought in.

The other multi chain branches...
unsure of their fate. May need to be redone again
since not everyone is happy with its progress.
This commit is contained in:
Jason Felds
2012-03-18 22:05:07 -04:00
7 changed files with 492 additions and 230 deletions
+4 -2
View File
@@ -8,6 +8,8 @@ class PlayerState;
/** @brief An action made against a Player to make things more difficult. */
struct Attack
{
static const int ATTACK_STARTS_NOW = -10000;
AttackLevel level;
/**
* @brief the starting point of this attack.
@@ -25,14 +27,14 @@ struct Attack
void MakeBlank()
{
level = ATTACK_LEVEL_1;
fStartSecond = -1;
fStartSecond = ATTACK_STARTS_NOW;
fSecsRemaining = 0;
sModifiers = RString();
bOn = false;
bGlobal = false;
bShowInAttackList = true;
}
Attack(): level(ATTACK_LEVEL_1), fStartSecond(-1),
Attack(): level(ATTACK_LEVEL_1), fStartSecond(ATTACK_STARTS_NOW),
fSecsRemaining(0), sModifiers(RString()),
bOn(false), bGlobal(false), bShowInAttackList(true)
{} // MakeBlank() is effectively called here.
+3 -1
View File
@@ -40,7 +40,9 @@ for( map<keyType, valType>::const_iterator var = (vect).begin(); var != (vect).e
#define FOREACHMM( keyType, valType, vect, var ) \
for( multimap<keyType, valType>::iterator var = (vect).begin(); var != (vect).end(); ++var )
/* Hmm...any reason why there is no FOREACHMM_CONST? */
/** @brief General foreach loop iterating over a multimap, using a constant iterator. */
#define FOREACHMM_CONST( keyType, valType, vect, var ) \
for( multimap<keyType, valType>::const_iterator var = (vect).begin(); var != (vect).end(); ++var )
#endif
+1 -1
View File
@@ -2859,7 +2859,7 @@ void Player::UpdateJudgedRows()
Attack attMineAttack;
attMineAttack.sModifiers = ApplyRandomAttack();
attMineAttack.fStartSecond = -1.0f;
attMineAttack.fStartSecond = attMineAttack.ATTACK_STARTS_NOW;
attMineAttack.fSecsRemaining = fAttackRunTime;
m_pPlayerState->LaunchAttack( attMineAttack );
+6 -6
View File
@@ -63,10 +63,10 @@ void PlayerState::Update( float fDelta )
{
Attack &attack = m_ActiveAttacks[s];
// -1 is the "starts now" sentinel value. You must add the attack
// by calling GameState::LaunchAttack, or else the -1 won't be
// You must add sattack by calling GameState::LaunchAttack,
// or else the sentinel value won't be
// converted into the current music time.
ASSERT( attack.fStartSecond != -1 );
ASSERT( attack.fStartSecond != attack.ATTACK_STARTS_NOW );
bool bCurrentlyEnabled =
attack.bGlobal ||
@@ -111,12 +111,12 @@ void PlayerState::LaunchAttack( const Attack& a )
Attack attack = a;
/* If fStartSecond is -1, it means "launch as soon as possible". For m_ActiveAttacks,
/* If fStartSecond is the sentinel, it means "launch as soon as possible". For m_ActiveAttacks,
* mark the real time it's starting (now), so Update() can know when the attack
* started so it can be removed later. For m_ModsToApply, leave the -1 in,
* started so it can be removed later. For m_ModsToApply, leave the sentinel in,
* so Player::Update knows to apply attack transforms correctly. (yuck) */
m_ModsToApply.push_back( attack );
if( attack.fStartSecond == -1 )
if( attack.fStartSecond == attack.ATTACK_STARTS_NOW )
attack.fStartSecond = m_Position.m_fMusicSeconds;
m_ActiveAttacks.push_back( attack );
+1 -8
View File
@@ -304,8 +304,7 @@ void ScoreKeeperNormal::AddScoreInternal( TapNoteScore score )
int &iCurMaxScore = m_pPlayerStageStats->m_iCurMaxScore;
// See Aaron In Japan for more details about the scoring formulas.
if( GAMESTATE->IsCourseMode() )
{
// Note: this assumes no custom scoring systems are in use.
int p = 0; // score multiplier
switch( score )
@@ -360,12 +359,6 @@ void ScoreKeeperNormal::AddScoreInternal( TapNoteScore score )
}
iCurMaxScore += m_iPointBonus;
}
}
// Custom Scoring
else
{
}
ASSERT_M( iScore >= 0, "iScore < 0 before re-rounding" );
+393 -128
View File
@@ -528,31 +528,65 @@ static MenuDef g_KeysoundTrack(
static MenuDef g_MainMenu(
"ScreenMiniMenuMainMenu",
MenuRowDef( ScreenEdit::play_whole_song, "Play whole song", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::play_current_beat_to_end, "Play current beat to end", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::save, "Save", true, EditMode_Home, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::play_selection, "Play selection", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::set_selection_start, "Set selection start", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::set_selection_end, "Set selection end", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::revert_to_last_save, "Revert to last save", true, EditMode_Home, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::revert_from_disk, "Revert from disk", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::options, "Editor options", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::edit_song_info, "Edit song info", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::edit_steps_information, "Edit steps information", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::edit_timing_data, "Edit Timing Data", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::view_steps_data, "View steps data", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::play_preview_music, "Play preview music", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::exit, "Exit Edit Mode", true, EditMode_Practice, true, true, 0, NULL )
MenuRowDef(ScreenEdit::play_whole_song,
"Play whole song",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::play_current_beat_to_end,
"Play current beat to end",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::save,
"Save",
true, EditMode_Home, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::play_selection,
"Play selection",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::set_selection_start,
"Set selection start",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::set_selection_end,
"Set selection end",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::revert_to_last_save,
"Revert to last save",
true, EditMode_Home, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::revert_from_disk,
"Revert from disk",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::options,
"Editor options",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::edit_song_info,
"Edit song info",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::edit_steps_information,
"Edit steps information",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::edit_timing_data,
"Edit Timing Data",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::view_steps_data,
"View steps data",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::play_preview_music,
"Play preview music",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::exit,
"Exit Edit Mode",
true, EditMode_Practice, true, true, 0, NULL )
);
static MenuDef g_AlterMenu(
"ScreenMiniMenuAlterMenu",
MenuRowDef(ScreenEdit::cut, "Cut", true,
EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::copy, "Copy", true,
EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::copy_partial_timing, "Copy Partial Timing", true,
MenuRowDef(ScreenEdit::cut,
"Cut",
true,
EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::copy,
"Copy",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::copy_partial_timing,
"Copy Partial Timing",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::clear, "Clear area", true,
EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::quantize, "Quantize", true,
@@ -571,64 +605,131 @@ static MenuDef g_AlterMenu(
MenuRowDef(ScreenEdit::tempo, "Tempo", true,
EditMode_Full, true, true, 0, "Compress 2x","Compress 3->2",
"Compress 4->3","Expand 3->4","Expand 2->3","Expand 2x" ),
MenuRowDef(ScreenEdit::play, "Play selection", true,
MenuRowDef(ScreenEdit::play,
"Play selection",
true,
EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::record, "Record in selection", true,
MenuRowDef(ScreenEdit::record,
"Record in selection",
true,
EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::preview_designation, "Designate as Music Preview", true,
MenuRowDef(ScreenEdit::preview_designation,
"Designate as Music Preview",
true,
EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::convert_to_pause, "Convert selection to pause", true,
MenuRowDef(ScreenEdit::convert_to_pause,
"Convert selection to pause",
true,
EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::convert_to_delay, "Convert selection to delay", true,
MenuRowDef(ScreenEdit::convert_to_delay,
"Convert selection to delay",
true,
EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::convert_to_warp, "Convert selection to warp", true,
MenuRowDef(ScreenEdit::convert_to_warp,
"Convert selection to warp",
true,
EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::convert_to_fake, "Convert selection to fake", true,
MenuRowDef(ScreenEdit::convert_to_fake,
"Convert selection to fake",
true,
EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::convert_to_attack, "Convert selection to attack", true,
MenuRowDef(ScreenEdit::convert_to_attack,
"Convert selection to attack",
true,
EditMode_Full, true, true, 0, NULL),
MenuRowDef(ScreenEdit::routine_invert_notes, "Invert notes' player", true,
MenuRowDef(ScreenEdit::routine_invert_notes,
"Invert notes' player",
true,
EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::routine_mirror_1_to_2, "Mirror Player 1 to 2", true,
MenuRowDef(ScreenEdit::routine_mirror_1_to_2,
"Mirror Player 1 to 2",
true,
EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::routine_mirror_2_to_1, "Mirror Player 2 to 1", true,
MenuRowDef(ScreenEdit::routine_mirror_2_to_1,
"Mirror Player 2 to 1",
true,
EditMode_Full, true, true, 0, NULL )
);
static MenuDef g_AreaMenu(
"ScreenMiniMenuAreaMenu",
MenuRowDef( ScreenEdit::paste_at_current_beat, "Paste at current beat", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::paste_at_begin_marker, "Paste at begin marker", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::paste_partial_timing_at_beat, "Paste Partial Timing at current beat", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::insert_and_shift, "Insert beat and shift down", true, EditMode_Practice, true, true, 0, "4th","8th","12th","16th","24th","32nd","48th","64th","192nd" ),
MenuRowDef( ScreenEdit::delete_and_shift, "Delete beat and shift up", true, EditMode_Practice, true, true, 0, "4th","8th","12th","16th","24th","32nd","48th","64th","192nd" ),
MenuRowDef( ScreenEdit::shift_pauses_forward, "Shift all timing changes down", true, EditMode_Full, true, true, 0, "4th","8th","12th","16th","24th","32nd","48th","64th","192nd" ),
MenuRowDef( ScreenEdit::shift_pauses_backward, "Shift all timing changes up", true, EditMode_Full, true, true, 0, "4th","8th","12th","16th","24th","32nd","48th","64th","192nd" ),
MenuRowDef(ScreenEdit::convert_pause_to_beat, "Convert pause to beats", true,
MenuRowDef(ScreenEdit::paste_at_current_beat,
"Paste at current beat",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::paste_at_begin_marker,
"Paste at begin marker",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::paste_partial_timing_at_beat,
"Paste Partial Timing at current beat",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::insert_and_shift,
"Insert beat and shift down",
true, EditMode_Practice, true, true, 0, "4th","8th","12th","16th","24th","32nd","48th","64th","192nd" ),
MenuRowDef(ScreenEdit::delete_and_shift,
"Delete beat and shift up",
true, EditMode_Practice, true, true, 0, "4th","8th","12th","16th","24th","32nd","48th","64th","192nd" ),
MenuRowDef(ScreenEdit::shift_pauses_forward,
"Shift all timing changes down",
true, EditMode_Full, true, true, 0, "4th","8th","12th","16th","24th","32nd","48th","64th","192nd" ),
MenuRowDef(ScreenEdit::shift_pauses_backward,
"Shift all timing changes up",
true, EditMode_Full, true, true, 0, "4th","8th","12th","16th","24th","32nd","48th","64th","192nd" ),
MenuRowDef(ScreenEdit::convert_pause_to_beat,
"Convert pause to beats",
true,
EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::convert_delay_to_beat, "Convert delay to beats", true,
MenuRowDef(ScreenEdit::convert_delay_to_beat,
"Convert delay to beats",
true,
EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::last_second_at_beat, "Designate last second at current beat", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::undo, "Undo", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::clear_clipboard, "Clear clipboard", true,
MenuRowDef(ScreenEdit::last_second_at_beat,
"Designate last second at current beat",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::undo,
"Undo",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::clear_clipboard,
"Clear clipboard",
true,
EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::modify_keysounds_at_row, "Modify Keysounds at current beat",
MenuRowDef(ScreenEdit::modify_keysounds_at_row,
"Modify Keysounds at current beat",
true, EditMode_Full, true, true, 0, NULL)
);
static MenuDef g_StepsInformation(
"ScreenMiniMenuStepsInformation",
MenuRowDef( ScreenEdit::difficulty, "Difficulty", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::meter, "Meter", true, EditMode_Practice, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::predict_meter, "Predicted Meter", false, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::chartname, "Chart Name", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::description, "Description", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::chartstyle, "Chart Style", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::step_credit, "Step Author", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::step_display_bpm, "Display BPM", true, EditMode_Full, true, true, 0, "Actual", "Specified", "Random" ),
MenuRowDef( ScreenEdit::step_min_bpm, "Min BPM", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::step_max_bpm, "Max BPM", true, EditMode_Full, true, true, 0, NULL )
MenuRowDef(ScreenEdit::difficulty,
"Difficulty",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::meter,
"Meter",
true, EditMode_Practice, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::predict_meter,
"Predicted Meter",
false, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::chartname,
"Chart Name",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::description,
"Description",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::chartstyle,
"Chart Style",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::step_credit,
"Step Author",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::step_display_bpm,
"Display BPM",
true, EditMode_Full, true, true, 0, "Actual", "Specified", "Random" ),
MenuRowDef(ScreenEdit::step_min_bpm,
"Min BPM",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::step_max_bpm,
"Max BPM",
true, EditMode_Full, true, true, 0, NULL )
);
static MenuDef g_StepsData(
@@ -651,45 +752,120 @@ static MenuDef g_StepsData(
static MenuDef g_SongInformation(
"ScreenMiniMenuSongInformation",
MenuRowDef( ScreenEdit::main_title, "Main title", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::sub_title, "Sub title", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::artist, "Artist", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::genre, "Genre", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::credit, "Credit", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::main_title_transliteration, "Main title transliteration", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::sub_title_transliteration, "Sub title transliteration", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::artist_transliteration, "Artist transliteration", true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::last_second_hint, "Last second hint", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::preview_start, "Preview Start", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::preview_length, "Preview Length", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::display_bpm, "Display BPM", true, EditMode_Full, true, true, 0, "Actual", "Specified", "Random" ),
MenuRowDef( ScreenEdit::min_bpm, "Min BPM", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::max_bpm, "Max BPM", true, EditMode_Full, true, true, 0, NULL )
MenuRowDef(ScreenEdit::main_title,
"Main title",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::sub_title,
"Sub title",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::artist,
"Artist",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::genre,
"Genre",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::credit,
"Credit",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::main_title_transliteration,
"Main title transliteration",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::sub_title_transliteration,
"Sub title transliteration",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::artist_transliteration,
"Artist transliteration",
true, EditMode_Practice, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::last_second_hint,
"Last second hint",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::preview_start,
"Preview Start",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::preview_length,
"Preview Length",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::display_bpm,
"Display BPM",
true, EditMode_Full, true, true, 0, "Actual", "Specified", "Random" ),
MenuRowDef(ScreenEdit::min_bpm,
"Min BPM",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::max_bpm,
"Max BPM",
true, EditMode_Full, true, true, 0, NULL )
);
static MenuDef g_TimingDataInformation(
"ScreenMiniMenuTimingDataInformation",
MenuRowDef( ScreenEdit::beat_0_offset, "Beat 0 Offset", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::bpm, "Edit BPM change", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::stop, "Edit stop", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::delay, "Edit delay", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::time_signature, "Edit time signature", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::label, "Edit label", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::tickcount, "Edit tickcount", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::combo, "Edit combo", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::warp, "Edit warp", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::speed_percent, "Edit speed (percent)", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::speed_wait, "Edit speed (wait)", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::speed_mode, "Edit speed (mode)", true, EditMode_Full, true, true, 0, "Beats", "Seconds" ),
MenuRowDef( ScreenEdit::scroll, "Edit scrolling factor", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::fake, "Edit fake", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::copy_full_timing, "Copy timing data", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::paste_full_timing, "Paste timing data", true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef( ScreenEdit::erase_step_timing, "Erase step timing", true, EditMode_Full, true, true, 0, NULL )
MenuRowDef(ScreenEdit::beat_0_offset,
"Beat 0 Offset",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::bpm,
"Edit BPM change",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::stop,
"Edit stop",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::delay,
"Edit delay",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::time_signature,
"Edit time signature",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::label,
"Edit label",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::tickcount,
"Edit tickcount",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::combo,
"Edit combo",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::warp,
"Edit warp",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::speed_percent,
"Edit speed (percent)",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::speed_wait,
"Edit speed (wait)",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::speed_mode,
"Edit speed (mode)",
true, EditMode_Full, true, true, 0, "Beats", "Seconds" ),
MenuRowDef(ScreenEdit::scroll,
"Edit scrolling factor",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::fake,
"Edit fake",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::copy_full_timing,
"Copy timing data",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::paste_full_timing,
"Paste timing data",
true, EditMode_Full, true, true, 0, NULL ),
MenuRowDef(ScreenEdit::erase_step_timing,
"Erase step timing",
true, EditMode_Full, true, true, 0, NULL )
);
enum { song_bganimation, song_movie, song_bitmap, global_bganimation, global_movie, global_movie_song_group, global_movie_song_group_and_genre, dynamic_random, baked_random, none };
// XXX: What are these enums used for?
enum
{
song_bganimation,
song_movie,
song_bitmap,
global_bganimation,
global_movie,
global_movie_song_group,
global_movie_song_group_and_genre,
dynamic_random,
baked_random,
none
};
static bool EnabledIfSet1SongBGAnimation();
static bool EnabledIfSet1SongMovie();
static bool EnabledIfSet1SongBitmap();
@@ -706,29 +882,108 @@ static bool EnabledIfSet2GlobalMovieSongGroup();
static bool EnabledIfSet2GlobalMovieSongGroupAndGenre();
static MenuDef g_BackgroundChange(
"ScreenMiniMenuBackgroundChange",
MenuRowDef( ScreenEdit::layer, "Layer", false, EditMode_Full, true, false, 0, "" ),
MenuRowDef( ScreenEdit::rate, "Rate", true, EditMode_Full, true, false, 10, "0%","10%","20%","30%","40%","50%","60%","70%","80%","90%","100%","120%","140%","160%","180%","200%","220%","240%","260%","280%","300%","350%","400%" ),
MenuRowDef( ScreenEdit::transition, "Force Transition", true, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::effect, "Force Effect", true, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::color1, "Force Color 1", true, EditMode_Full, true, false, 0, "-","#FFFFFF","#808080","#FFFFFF80","#000000","#FF0000","#00FF00","#0000FF","#FFFF00","#00FFFF","#FF00FF" ),
MenuRowDef( ScreenEdit::color2, "Force Color 2", true, EditMode_Full, true, false, 0, "-","#FFFFFF","#808080","#FFFFFF80","#000000","#FF0000","#00FF00","#0000FF","#FFFF00","#00FFFF","#FF00FF" ),
MenuRowDef( ScreenEdit::file1_type, "File1 Type", true, EditMode_Full, true, true, 0, "Song BGAnimation", "Song Movie", "Song Bitmap", "Global BGAnimation", "Global Movie", "Global Movie from Song Group", "Global Movie from Song Group and Genre", "Dynamic Random", "Baked Random", "None" ),
MenuRowDef( ScreenEdit::file1_song_bganimation, "File1 Song BGAnimation", EnabledIfSet1SongBGAnimation, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file1_song_movie, "File1 Song Movie", EnabledIfSet1SongMovie, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file1_song_still, "File1 Song Still", EnabledIfSet1SongBitmap, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file1_global_bganimation, "File1 Global BGAnimation", EnabledIfSet1GlobalBGAnimation, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file1_global_movie, "File1 Global Movie", EnabledIfSet1GlobalMovie, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file1_global_movie_song_group, "File1 Global Movie (Group)", EnabledIfSet1GlobalMovieSongGroup, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file1_global_movie_song_group_and_genre, "File1 Global Movie (Group + Genre)", EnabledIfSet1GlobalMovieSongGroupAndGenre, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file2_type, "File2 Type", true, EditMode_Full, true, true, 0, "Song BGAnimation", "Song Movie", "Song Bitmap", "Global BGAnimation", "Global Movie", "Global Movie from Song Group", "Global Movie from Song Group and Genre", "Dynamic Random", "Baked Random", "None" ),
MenuRowDef( ScreenEdit::file2_song_bganimation, "File2 Song BGAnimation", EnabledIfSet2SongBGAnimation, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file2_song_movie, "File2 Song Movie", EnabledIfSet2SongMovie, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file2_song_still, "File2 Song Still", EnabledIfSet2SongBitmap, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file2_global_bganimation, "File2 Global BGAnimation", EnabledIfSet2GlobalBGAnimation, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file2_global_movie, "File2 Global Movie", EnabledIfSet2GlobalMovie, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file2_global_movie_song_group, "File2 Global Movie (Group)", EnabledIfSet2GlobalMovieSongGroup, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::file2_global_movie_song_group_and_genre, "File2 Global Movie (Group + Genre)", EnabledIfSet2GlobalMovieSongGroupAndGenre, EditMode_Full, true, false, 0, NULL ),
MenuRowDef( ScreenEdit::delete_change, "Remove Change", true, EditMode_Full, true, true, 0, NULL )
MenuRowDef(ScreenEdit::layer,
"Layer",
false,
EditMode_Full, true, false, 0, "" ),
MenuRowDef(ScreenEdit::rate,
"Rate",
true,
EditMode_Full, true, false, 10, "0%","10%","20%","30%","40%","50%",
"60%","70%","80%","90%","100%","120%","140%","160%","180%","200%",
"220%","240%","260%","280%","300%","350%","400%" ),
MenuRowDef(ScreenEdit::transition,
"Force Transition",
true,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::effect,
"Force Effect",
true,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::color1,
"Force Color 1",
true,
EditMode_Full, true, false, 0, "-","#FFFFFF","#808080","#FFFFFF80",
"#000000","#FF0000","#00FF00","#0000FF","#FFFF00","#00FFFF","#FF00FF" ),
MenuRowDef(ScreenEdit::color2,
"Force Color 2",
true,
EditMode_Full, true, false, 0, "-","#FFFFFF","#808080","#FFFFFF80",
"#000000","#FF0000","#00FF00","#0000FF","#FFFF00","#00FFFF","#FF00FF" ),
MenuRowDef(ScreenEdit::file1_type,
"File1 Type",
true,
EditMode_Full, true, true, 0, "Song BGAnimation", "Song Movie",
"Song Bitmap", "Global BGAnimation", "Global Movie",
"Global Movie from Song Group", "Global Movie from Song Group and Genre",
"Dynamic Random", "Baked Random", "None" ),
MenuRowDef(ScreenEdit::file1_song_bganimation,
"File1 Song BGAnimation",
EnabledIfSet1SongBGAnimation,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file1_song_movie,
"File1 Song Movie",
EnabledIfSet1SongMovie,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file1_song_still,
"File1 Song Still",
EnabledIfSet1SongBitmap,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file1_global_bganimation,
"File1 Global BGAnimation",
EnabledIfSet1GlobalBGAnimation,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file1_global_movie,
"File1 Global Movie",
EnabledIfSet1GlobalMovie,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file1_global_movie_song_group,
"File1 Global Movie (Group)",
EnabledIfSet1GlobalMovieSongGroup,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file1_global_movie_song_group_and_genre,
"File1 Global Movie (Group + Genre)",
EnabledIfSet1GlobalMovieSongGroupAndGenre,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file2_type,
"File2 Type",
true,
EditMode_Full, true, true, 0, "Song BGAnimation", "Song Movie",
"Song Bitmap", "Global BGAnimation", "Global Movie",
"Global Movie from Song Group", "Global Movie from Song Group and Genre",
"Dynamic Random", "Baked Random", "None" ),
MenuRowDef(ScreenEdit::file2_song_bganimation,
"File2 Song BGAnimation",
EnabledIfSet2SongBGAnimation,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file2_song_movie,
"File2 Song Movie",
EnabledIfSet2SongMovie,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file2_song_still,
"File2 Song Still",
EnabledIfSet2SongBitmap,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file2_global_bganimation,
"File2 Global BGAnimation",
EnabledIfSet2GlobalBGAnimation,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file2_global_movie,
"File2 Global Movie",
EnabledIfSet2GlobalMovie,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file2_global_movie_song_group,
"File2 Global Movie (Group)",
EnabledIfSet2GlobalMovieSongGroup,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::file2_global_movie_song_group_and_genre,
"File2 Global Movie (Group + Genre)",
EnabledIfSet2GlobalMovieSongGroupAndGenre,
EditMode_Full, true, false, 0, NULL ),
MenuRowDef(ScreenEdit::delete_change,
"Remove Change",
true,
EditMode_Full, true, true, 0, NULL )
);
static bool EnabledIfSet1SongBGAnimation() { return ScreenMiniMenu::s_viLastAnswers[ScreenEdit::file1_type] == song_bganimation && !g_BackgroundChange.rows[ScreenEdit::file1_song_bganimation].choices.empty(); }
static bool EnabledIfSet1SongMovie() { return ScreenMiniMenu::s_viLastAnswers[ScreenEdit::file1_type] == song_movie && !g_BackgroundChange.rows[ScreenEdit::file1_song_movie].choices.empty(); }
@@ -763,21 +1018,38 @@ static RString GetOneBakedRandomFile( Song *pSong, bool bTryGenre = true )
static MenuDef g_InsertTapAttack(
"ScreenMiniMenuInsertTapAttack",
MenuRowDef( -1, "Duration seconds", true, EditMode_Practice, true, false, 3, "5","10","15","20","25","30","35","40","45" ),
MenuRowDef( -1, "Set modifiers", true, EditMode_Practice, true, true, 0, "Press Start" )
MenuRowDef(-1,
"Duration seconds",
true, EditMode_Practice, true, false, 3, "5","10","15","20","25","30","35","40","45" ), // TODO: Replace
MenuRowDef(-1,
"Set modifiers",
true, EditMode_Practice, true, true, 0, "Press Start" )
);
static MenuDef g_InsertCourseAttack(
"ScreenMiniMenuInsertCourseAttack",
MenuRowDef( ScreenEdit::duration, "Duration seconds", true, EditMode_Practice, true, false, 3, "5","10","15","20","25","30","35","40","45" ),
MenuRowDef( ScreenEdit::set_mods, "Set modifiers", true, EditMode_Practice, true, true, 0, "Press Start" ),
MenuRowDef( ScreenEdit::remove, "Remove", true, EditMode_Practice, true, true, 0, "Press Start" )
MenuRowDef(ScreenEdit::duration,
"Duration seconds",
true, EditMode_Practice, true, false, 3, "5","10","15","20","25","30","35","40","45" ),
MenuRowDef(ScreenEdit::set_mods,
"Set modifiers",
true, EditMode_Practice, true, true, 0, "Press Start" ),
MenuRowDef(ScreenEdit::remove,
"Remove",
true, EditMode_Practice, true, true, 0, "Press Start" )
);
static MenuDef g_InsertStepAttack("ScreenMiniMenuInsertCourseAttack",
MenuRowDef( ScreenEdit::sa_duration, "Duration seconds", true, EditMode_Practice, true, false, 3, "5","10","15","20","25","30","35","40","45" ),
MenuRowDef( ScreenEdit::sa_set_mods, "Set modifiers", true, EditMode_Practice, true, true, 0, "Press Start" ),
MenuRowDef( ScreenEdit::sa_remove, "Remove", true, EditMode_Practice, true, true, 0, "Press Start" ));
static MenuDef g_InsertStepAttack(
"ScreenMiniMenuInsertCourseAttack",
MenuRowDef(ScreenEdit::sa_duration,
"Duration seconds",
true, EditMode_Practice, true, false, 3, "5","10","15","20","25","30","35","40","45" ),
MenuRowDef(ScreenEdit::sa_set_mods,
"Set modifiers",
true, EditMode_Practice, true, true, 0, "Press Start" ),
MenuRowDef(ScreenEdit::sa_remove,
"Remove",
true, EditMode_Practice, true, true, 0, "Press Start" ));
static MenuDef g_CourseMode(
"ScreenMiniMenuCourseDisplay",
@@ -1262,14 +1534,8 @@ void ScreenEdit::UpdateTextInfo()
sText += SELECTION_BEAT_UNFINISHED_FORMAT;
}
switch( EDIT_MODE.GetValue() )
if (EDIT_MODE.GetValue() == EditMode_Full)
{
DEFAULT_FAIL( EDIT_MODE.GetValue() );
case EditMode_Practice:
case EditMode_CourseMods:
case EditMode_Home:
break;
case EditMode_Full:
sText += ssprintf( DIFFICULTY_FORMAT.GetValue(), DIFFICULTY.GetValue().c_str(), DifficultyToString( m_pSteps->GetDifficulty() ).c_str() );
if ( m_InputPlayerNumber != PLAYER_INVALID )
sText += ssprintf( ROUTINE_PLAYER_FORMAT.GetValue(), ROUTINE_PLAYER.GetValue().c_str(), m_InputPlayerNumber + 1 );
@@ -1282,7 +1548,6 @@ void ScreenEdit::UpdateTextInfo()
sText += ssprintf( SUBTITLE_FORMAT.GetValue(), SUBTITLE.GetValue().c_str(), m_pSong->m_sSubTitle.c_str() );
sText += ssprintf( SEGMENT_TYPE_FORMAT.GetValue(), SEGMENT_TYPE.GetValue().c_str(), TimingSegmentTypeToString(currentCycleSegment).c_str() );
sText += ssprintf( TAP_NOTE_TYPE_FORMAT.GetValue(), TAP_NOTE_TYPE.GetValue().c_str(), TapNoteTypeToString( m_selectedTap.type ).c_str() );
break;
}
GAMESTATE->SetProcessedTimingData(&m_pSteps->m_Timing);
@@ -1814,7 +2079,7 @@ void ScreenEdit::InputEdit( const InputEventPlus &input, EditButton EditB )
pSteps->SetNoteData( m_NoteDataEdit );
// Get all Steps of this StepsType
StepsType st = pSteps->m_StepsType;
const StepsType st = pSteps->m_StepsType;
vector<Steps*> vSteps;
SongUtil::GetSteps( GAMESTATE->m_pCurSong, vSteps, st );
@@ -3147,7 +3412,7 @@ void ScreenEdit::HandleScreenMessage( const ScreenMessage SM )
else if ( SM == SM_BackFromFakeChange && !ScreenTextEntry::s_bCancelledLast )
{
float fFake = StringToFloat( ScreenTextEntry::s_sLastAnswer );
if( fFake >= 0 ) // allow 0 to kill a warp.
if( fFake >= 0 ) // allow 0 to kill a fake.
{
GetAppropriateTiming().AddSegment( FakeSegment(GetRow(), fFake) );
SetDirty( true );
+2 -2
View File
@@ -968,7 +968,7 @@ void ScreenGameplay::SetupSong( int iSongIndex )
Attack a = pi->m_asModifiersQueue[iSongIndex][i];
if( a.fStartSecond != 0 )
continue;
a.fStartSecond = -1; // now
a.fStartSecond = a.ATTACK_STARTS_NOW; // now
PlayerOptions po;
po.FromString( a.sModifiers );
@@ -1018,7 +1018,7 @@ void ScreenGameplay::SetupSong( int iSongIndex )
{
Attack a = pi->m_asModifiersQueue[iSongIndex][i];
if( a.fStartSecond == 0 )
a.fStartSecond = -1; // now
a.fStartSecond = a.ATTACK_STARTS_NOW; // now
pi->GetPlayerState()->LaunchAttack( a );
GAMESTATE->m_SongOptions.FromString( ModsLevel_Song, a.sModifiers );