From 37a0ba152092ec9351de16a97c37334a1e68ea43 Mon Sep 17 00:00:00 2001 From: Matt Denham Date: Fri, 13 Feb 2004 09:01:59 +0000 Subject: [PATCH] Separated BM and IIDX into separate modes, since IIDX 5-key isn't necessarily the same as the BM steps to the same song Updated the cache version because SMs based off of a IIDX BMS will have the wrong steps type --- stepmania/src/Game.h | 1 + stepmania/src/GameConstantsAndTypes.h | 11 +- stepmania/src/GameInput.h | 26 +- stepmania/src/GameManager.cpp | 414 +++++++++++++++++++++----- stepmania/src/NotesLoaderBMS.cpp | 8 +- stepmania/src/Song.cpp | 3 +- stepmania/src/Style.h | 8 +- 7 files changed, 385 insertions(+), 86 deletions(-) diff --git a/stepmania/src/Game.h b/stepmania/src/Game.h index 58ad8eccf2..9c7ce8c4e0 100644 --- a/stepmania/src/Game.h +++ b/stepmania/src/Game.h @@ -19,6 +19,7 @@ enum Game GAME_PARA, // ParaPAraParadise GAME_DS3DDX, // Dance Station 3DDX. GAME_BM, // Beatmania + GAME_IIDX, // Beatmania IIDX GAME_MANIAX, // DanceManiax GAME_TECHNO, // TechnoMotion GAME_PNM, // pop n music diff --git a/stepmania/src/GameConstantsAndTypes.h b/stepmania/src/GameConstantsAndTypes.h index caa5a15fb5..70eb265501 100644 --- a/stepmania/src/GameConstantsAndTypes.h +++ b/stepmania/src/GameConstantsAndTypes.h @@ -111,11 +111,14 @@ enum StepsType STEPS_TYPE_PARA_SINGLE, STEPS_TYPE_DS3DDX_SINGLE, STEPS_TYPE_BM_SINGLE, -// MD 10/26/03 - uncomment the following three once we get support in for them -// MD 10/28/03 - I was bored. I wrote support. STEPS_TYPE_BM_DOUBLE, - STEPS_TYPE_BM_SINGLE7, - STEPS_TYPE_BM_DOUBLE7, + STEPS_TYPE_IIDX_SINGLE7, + STEPS_TYPE_IIDX_DOUBLE7, + // These last two are probably going to be treated the same way + // as STEPS_TYPE_DANCE_COUPLE - autogenned for use, and then + // a duplicate "(edit)" entry for editing only. + STEPS_TYPE_IIDX_SINGLE5, + STEPS_TYPE_IIDX_DOUBLE5, STEPS_TYPE_MANIAX_SINGLE, STEPS_TYPE_MANIAX_DOUBLE, STEPS_TYPE_TECHNO_SINGLE8, diff --git a/stepmania/src/GameInput.h b/stepmania/src/GameInput.h index 5bb3d90ee4..4de34442ac 100644 --- a/stepmania/src/GameInput.h +++ b/stepmania/src/GameInput.h @@ -123,8 +123,6 @@ enum // BM Buttons BM_BUTTON_KEY3, BM_BUTTON_KEY4, BM_BUTTON_KEY5, - BM_BUTTON_KEY6, - BM_BUTTON_KEY7, BM_BUTTON_SCRATCHUP, /* XXX special case: this button is an alias of BM_BUTTON_SCRATCHUP for track * matching. */ @@ -140,6 +138,30 @@ enum // BM Buttons NUM_BM_BUTTONS, // leave this at the end. }; +enum // IIDX Buttons +{ + IIDX_BUTTON_KEY1, + IIDX_BUTTON_KEY2, + IIDX_BUTTON_KEY3, + IIDX_BUTTON_KEY4, + IIDX_BUTTON_KEY5, + IIDX_BUTTON_KEY6, + IIDX_BUTTON_KEY7, + IIDX_BUTTON_SCRATCHUP, + /* XXX special case: this button is an alias of IIDX_BUTTON_SCRATCHUP for track + * matching. */ + IIDX_BUTTON_SCRATCHDOWN, + IIDX_BUTTON_START, + IIDX_BUTTON_SELECT, + IIDX_BUTTON_MENULEFT, + IIDX_BUTTON_MENURIGHT, + IIDX_BUTTON_MENUUP, + IIDX_BUTTON_MENUDOWN, + IIDX_BUTTON_COIN, + IIDX_BUTTON_OPERATOR, + NUM_IIDX_BUTTONS, // leave this at the end. +}; + enum // ManiaxButtons { MANIAX_BUTTON_HANDUPLEFT, diff --git a/stepmania/src/GameManager.cpp b/stepmania/src/GameManager.cpp index b6d144c098..26fd08627a 100644 --- a/stepmania/src/GameManager.cpp +++ b/stepmania/src/GameManager.cpp @@ -31,7 +31,8 @@ const int EZ2_COL_SPACING = 46; const int EZ2_REAL_COL_SPACING = 40; const int PARA_COL_SPACING = 54; const int DS3DDX_COL_SPACING = 46; -const int BM_COL_SPACING=34; +const int BM_COL_SPACING = 34; +const int IIDX_COL_SPACING = 34; const int MANIAX_COL_SPACING = 36; const int TECHNO_COL_SPACING = 64; const int PNM5_COL_SPACING = 32; @@ -55,11 +56,11 @@ struct { { "para-single", 5 }, { "ds3ddx-single", 8 }, { "bm-single", 6 }, -// MD 10/26/03 - for future support -// MD 10/28/03 - The future is here! { "bm-double", 12 }, - { "bm-single7", 8 }, - { "bm-double7", 16 }, + { "iidx-single7", 8 }, + { "iidx-double7", 16 }, + { "iidx-single5", 6 }, + { "iidx-double5", 12 }, { "maniax-single", 4 }, { "maniax-double", 8 }, { "techno-single8", 8 }, @@ -547,8 +548,6 @@ GameDef g_GameDefs[NUM_GAMES] = "Key3", "Key4", "Key5", - "Key6", - "Key7", "Scratch", "Scratch (down)", "Start", @@ -566,8 +565,6 @@ GameDef g_GameDefs[NUM_GAMES] = "(MenuRight)", "", "", - "", - "", "(MenuUp)", "(MenuDown)", "(Start)", @@ -607,8 +604,6 @@ GameDef g_GameDefs[NUM_GAMES] = SDLK_COMMA, // BM_BUTTON_KEY3, SDLK_l, // BM_BUTTON_KEY4, SDLK_PERIOD, // BM_BUTTON_KEY5, - SDLK_SEMICOLON, // BM_BUTTON_KEY6, - SDLK_SLASH, // BM_BUTTON_KEY7, SDLK_LSHIFT, // BM_BUTTON_SCRATCHUP, -1, // BM_BUTTON_SCRATCHDOWN, SDLK_RETURN, // BM_BUTTON_START, @@ -626,8 +621,6 @@ GameDef g_GameDefs[NUM_GAMES] = -1, // BM_BUTTON_KEY3, -1, // BM_BUTTON_KEY4, -1, // BM_BUTTON_KEY5, - -1, // BM_BUTTON_KEY6, - -1, // BM_BUTTON_KEY7, -1, // BM_BUTTON_SCRATCHUP, -1, // BM_BUTTON_SCRATCHDOWN, -1, // BM_BUTTON_START, @@ -641,6 +634,111 @@ GameDef g_GameDefs[NUM_GAMES] = }, } }, + { // GAME_IIDX + "iidx", // m_szName + "BeatMania IIDX", // m_szDescription + 2, // m_iNumControllers + NUM_IIDX_BUTTONS, // m_iButtonsPerController + { // m_szButtonNames + "Key1", + "Key2", + "Key3", + "Key4", + "Key5", + "Key6", + "Key7", + "Scratch", + "Scratch (down)", + "Start", + "Select", + "MenuLeft", + "MenuRight", + "MenuUp", + "MenuDown", + "Insert Coin", + "Operator", + }, + { // m_szSecondaryFunction + "(MenuLeft)", + "", + "(MenuRight)", + "", + "", + "", + "", + "(MenuUp)", + "(MenuDown)", + "(Start)", + "(Back)", + "(dedicated)", + "(dedicated)", + "(dedicated)", + "(dedicated)", + "(dedicated)", + "", + "", + }, + { // m_DedicatedMenuButton + IIDX_BUTTON_MENULEFT, // MENU_BUTTON_LEFT + IIDX_BUTTON_MENURIGHT, // MENU_BUTTON_RIGHT + IIDX_BUTTON_MENUUP, // MENU_BUTTON_UP + IIDX_BUTTON_MENUDOWN, // MENU_BUTTON_DOWN + IIDX_BUTTON_START, // MENU_BUTTON_START + IIDX_BUTTON_SELECT, // MENU_BUTTON_BACK + IIDX_BUTTON_COIN, // MENU_BUTTON_COIN + IIDX_BUTTON_OPERATOR, // MENU_BUTTON_OPERATOR + }, + { // m_SecondaryMenuButton + IIDX_BUTTON_KEY1, // MENU_BUTTON_LEFT + IIDX_BUTTON_KEY3, // MENU_BUTTON_RIGHT + IIDX_BUTTON_SCRATCHUP, // MENU_BUTTON_UP + IIDX_BUTTON_SCRATCHDOWN,// MENU_BUTTON_DOWN + IIDX_BUTTON_START, // MENU_BUTTON_START + IIDX_BUTTON_SELECT, // MENU_BUTTON_BACK + IIDX_BUTTON_COIN, // MENU_BUTTON_COIN + IIDX_BUTTON_OPERATOR, // MENU_BUTTON_OPERATOR + }, + { // m_iDefaultKeyboardKey + { // PLAYER_1 + SDLK_m, // IIDX_BUTTON_KEY1, + SDLK_k, // IIDX_BUTTON_KEY2, + SDLK_COMMA, // IIDX_BUTTON_KEY3, + SDLK_l, // IIDX_BUTTON_KEY4, + SDLK_PERIOD, // IIDX_BUTTON_KEY5, + SDLK_SEMICOLON, // IIDX_BUTTON_KEY6, + SDLK_SLASH, // IIDX_BUTTON_KEY7, + SDLK_LSHIFT, // IIDX_BUTTON_SCRATCHUP, + -1, // IIDX_BUTTON_SCRATCHDOWN, + SDLK_RETURN, // IIDX_BUTTON_START, + -1, // IIDX_BUTTON_SELECT, + SDLK_LEFT, // IIDX_BUTTON_MENULEFT + SDLK_RIGHT, // IIDX_BUTTON_MENURIGHT + SDLK_UP, // IIDX_BUTTON_MENUUP + SDLK_DOWN, // IIDX_BUTTON_MENUDOWN + SDLK_F1, // IIDX_BUTTON_COIN + SDLK_SCROLLOCK // IIDX_BUTTON_OPERATOR + }, + { // PLAYER_2 + -1, // IIDX_BUTTON_KEY1, + -1, // IIDX_BUTTON_KEY2, + -1, // IIDX_BUTTON_KEY3, + -1, // IIDX_BUTTON_KEY4, + -1, // IIDX_BUTTON_KEY5, + -1, // IIDX_BUTTON_KEY6, + -1, // IIDX_BUTTON_KEY7, + -1, // IIDX_BUTTON_SCRATCHUP, + -1, // IIDX_BUTTON_SCRATCHDOWN, + -1, // IIDX_BUTTON_START, + -1, // IIDX_BUTTON_SELECT, + -1, // IIDX_BUTTON_MENULEFT + -1, // IIDX_BUTTON_MENURIGHT + -1, // IIDX_BUTTON_MENUUP + -1, // IIDX_BUTTON_MENUDOWN + -1, // IIDX_BUTTON_COIN + -1 // IIDX_BUTTON_OPERATOR + }, + } + }, { // GAME_MANIAX "maniax", // m_szName "Dance Maniax", // m_szDescription @@ -1568,7 +1666,7 @@ StyleDef g_StyleDefs[NUM_STYLES] = GAME_BM, // m_Game true, // m_bUsedForGameplay true, // m_bUsedForEdit - "BM-single", // m_szName + "single", // m_szName STEPS_TYPE_BM_SINGLE, // m_StepsType StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType { 160, 480 }, // m_iCenterX @@ -1595,12 +1693,11 @@ StyleDef g_StyleDefs[NUM_STYLES] = 0,1,2,3,4,5 }, }, -// MD 10/28/03 - New additions. { // STYLE_BM_DOUBLE GAME_BM, // m_Game true, // m_bUsedForGameplay true, // m_bUsedForEdit - "BM-double", // m_szName + "double", // m_szName STEPS_TYPE_BM_DOUBLE, // m_StepsType StyleDef::ONE_PLAYER_TWO_CREDITS, // m_StyleType { 320, 320 }, // m_iCenterX @@ -1639,93 +1736,264 @@ StyleDef g_StyleDefs[NUM_STYLES] = 0,1,2,3,4,5,6,7,8,9,10,11 }, }, - { // STYLE_BM_SINGLE7 - GAME_BM, // m_Game + { // STYLE_IIDX_SINGLE7 + GAME_IIDX, // m_Game true, // m_bUsedForGameplay true, // m_bUsedForEdit - "BM-single7", // m_szName - STEPS_TYPE_BM_SINGLE, // m_StepsType + "single7", // m_szName + STEPS_TYPE_IIDX_SINGLE7, // m_StepsType StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType { 160, 480 }, // m_iCenterX 8, // m_iColsPerPlayer { // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER]; { // PLAYER_1 - { TRACK_8, GAME_CONTROLLER_1, BM_BUTTON_SCRATCHUP,-BM_COL_SPACING*3.5f }, - { TRACK_1, GAME_CONTROLLER_1, BM_BUTTON_KEY1, -BM_COL_SPACING*2.0f }, - { TRACK_2, GAME_CONTROLLER_1, BM_BUTTON_KEY2, -BM_COL_SPACING*1.0f }, - { TRACK_3, GAME_CONTROLLER_1, BM_BUTTON_KEY3, -BM_COL_SPACING*0.0f }, - { TRACK_4, GAME_CONTROLLER_1, BM_BUTTON_KEY4, +BM_COL_SPACING*1.0f }, - { TRACK_5, GAME_CONTROLLER_1, BM_BUTTON_KEY5, +BM_COL_SPACING*2.0f }, - { TRACK_6, GAME_CONTROLLER_1, BM_BUTTON_KEY6, +BM_COL_SPACING*3.0f }, - { TRACK_7, GAME_CONTROLLER_1, BM_BUTTON_KEY7, +BM_COL_SPACING*4.0f }, + { TRACK_8, GAME_CONTROLLER_1, IIDX_BUTTON_SCRATCHUP, -IIDX_COL_SPACING*3.5f }, + { TRACK_1, GAME_CONTROLLER_1, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*2.0f }, + { TRACK_2, GAME_CONTROLLER_1, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*1.0f }, + { TRACK_3, GAME_CONTROLLER_1, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*0.0f }, + { TRACK_4, GAME_CONTROLLER_1, IIDX_BUTTON_KEY4, +IIDX_COL_SPACING*1.0f }, + { TRACK_5, GAME_CONTROLLER_1, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*2.0f }, + { TRACK_6, GAME_CONTROLLER_1, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*3.0f }, + { TRACK_7, GAME_CONTROLLER_1, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*4.0f }, }, { // PLAYER_2 - { TRACK_1, GAME_CONTROLLER_2, BM_BUTTON_KEY1, -BM_COL_SPACING*3.5f }, - { TRACK_2, GAME_CONTROLLER_2, BM_BUTTON_KEY2, -BM_COL_SPACING*2.5f }, - { TRACK_3, GAME_CONTROLLER_2, BM_BUTTON_KEY3, -BM_COL_SPACING*1.5f }, - { TRACK_4, GAME_CONTROLLER_2, BM_BUTTON_KEY4, -BM_COL_SPACING*0.5f }, - { TRACK_5, GAME_CONTROLLER_2, BM_BUTTON_KEY5, +BM_COL_SPACING*0.5f }, - { TRACK_6, GAME_CONTROLLER_2, BM_BUTTON_KEY6, +BM_COL_SPACING*1.5f }, - { TRACK_7, GAME_CONTROLLER_2, BM_BUTTON_KEY7, +BM_COL_SPACING*2.5f }, - { TRACK_8, GAME_CONTROLLER_2, BM_BUTTON_SCRATCHUP,+BM_COL_SPACING*4.0f }, + { TRACK_1, GAME_CONTROLLER_2, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*3.5f }, + { TRACK_2, GAME_CONTROLLER_2, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*2.5f }, + { TRACK_3, GAME_CONTROLLER_2, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*1.5f }, + { TRACK_4, GAME_CONTROLLER_2, IIDX_BUTTON_KEY4, -IIDX_COL_SPACING*0.5f }, + { TRACK_5, GAME_CONTROLLER_2, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*0.5f }, + { TRACK_6, GAME_CONTROLLER_2, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*1.5f }, + { TRACK_7, GAME_CONTROLLER_2, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*2.5f }, + { TRACK_8, GAME_CONTROLLER_2, IIDX_BUTTON_SCRATCHUP, +IIDX_COL_SPACING*4.0f }, }, }, { // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER]; 0,1,2,3,4,5,6,7 }, }, - { // STYLE_BM_DOUBLE7 - GAME_BM, // m_Game + { // STYLE_IIDX_DOUBLE7 + GAME_IIDX, // m_Game true, // m_bUsedForGameplay true, // m_bUsedForEdit - "BM-double7", // m_szName - STEPS_TYPE_BM_DOUBLE7, // m_StepsType + "double7", // m_szName + STEPS_TYPE_IIDX_DOUBLE7, // m_StepsType StyleDef::ONE_PLAYER_TWO_CREDITS, // m_StyleType { 320, 320 }, // m_iCenterX 16, // m_iColsPerPlayer { // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER]; { // PLAYER_1 - { TRACK_8, GAME_CONTROLLER_1, BM_BUTTON_SCRATCHUP,-BM_COL_SPACING*8.0f }, - { TRACK_1, GAME_CONTROLLER_1, BM_BUTTON_KEY1, -BM_COL_SPACING*6.5f }, - { TRACK_2, GAME_CONTROLLER_1, BM_BUTTON_KEY2, -BM_COL_SPACING*5.5f }, - { TRACK_3, GAME_CONTROLLER_1, BM_BUTTON_KEY3, -BM_COL_SPACING*4.5f }, - { TRACK_4, GAME_CONTROLLER_1, BM_BUTTON_KEY4, -BM_COL_SPACING*3.5f }, - { TRACK_5, GAME_CONTROLLER_1, BM_BUTTON_KEY5, -BM_COL_SPACING*2.5f }, - { TRACK_6, GAME_CONTROLLER_1, BM_BUTTON_KEY6, -BM_COL_SPACING*1.5f }, - { TRACK_7, GAME_CONTROLLER_1, BM_BUTTON_KEY7, -BM_COL_SPACING*0.5f }, - { TRACK_9, GAME_CONTROLLER_2, BM_BUTTON_KEY1, +BM_COL_SPACING*0.5f }, - { TRACK_10, GAME_CONTROLLER_2, BM_BUTTON_KEY2, +BM_COL_SPACING*1.5f }, - { TRACK_11, GAME_CONTROLLER_2, BM_BUTTON_KEY3, +BM_COL_SPACING*2.5f }, - { TRACK_12, GAME_CONTROLLER_2, BM_BUTTON_KEY4, +BM_COL_SPACING*3.5f }, - { TRACK_13, GAME_CONTROLLER_2, BM_BUTTON_KEY5, +BM_COL_SPACING*4.5f }, - { TRACK_14, GAME_CONTROLLER_2, BM_BUTTON_KEY6, +BM_COL_SPACING*5.5f }, - { TRACK_15, GAME_CONTROLLER_2, BM_BUTTON_KEY7, +BM_COL_SPACING*6.5f }, - { TRACK_16, GAME_CONTROLLER_2, BM_BUTTON_SCRATCHUP,+BM_COL_SPACING*8.0f }, + { TRACK_8, GAME_CONTROLLER_1, IIDX_BUTTON_SCRATCHUP, -IIDX_COL_SPACING*8.0f }, + { TRACK_1, GAME_CONTROLLER_1, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*6.5f }, + { TRACK_2, GAME_CONTROLLER_1, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*5.5f }, + { TRACK_3, GAME_CONTROLLER_1, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*4.5f }, + { TRACK_4, GAME_CONTROLLER_1, IIDX_BUTTON_KEY4, -IIDX_COL_SPACING*3.5f }, + { TRACK_5, GAME_CONTROLLER_1, IIDX_BUTTON_KEY5, -IIDX_COL_SPACING*2.5f }, + { TRACK_6, GAME_CONTROLLER_1, IIDX_BUTTON_KEY6, -IIDX_COL_SPACING*1.5f }, + { TRACK_7, GAME_CONTROLLER_1, IIDX_BUTTON_KEY7, -IIDX_COL_SPACING*0.5f }, + { TRACK_9, GAME_CONTROLLER_2, IIDX_BUTTON_KEY1, +IIDX_COL_SPACING*0.5f }, + { TRACK_10, GAME_CONTROLLER_2, IIDX_BUTTON_KEY2, +IIDX_COL_SPACING*1.5f }, + { TRACK_11, GAME_CONTROLLER_2, IIDX_BUTTON_KEY3, +IIDX_COL_SPACING*2.5f }, + { TRACK_12, GAME_CONTROLLER_2, IIDX_BUTTON_KEY4, +IIDX_COL_SPACING*3.5f }, + { TRACK_13, GAME_CONTROLLER_2, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*4.5f }, + { TRACK_14, GAME_CONTROLLER_2, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*5.5f }, + { TRACK_15, GAME_CONTROLLER_2, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*6.5f }, + { TRACK_16, GAME_CONTROLLER_2, IIDX_BUTTON_SCRATCHUP, +IIDX_COL_SPACING*8.0f }, }, { // PLAYER_2 - { TRACK_8, GAME_CONTROLLER_1, BM_BUTTON_SCRATCHUP,-BM_COL_SPACING*8.0f }, - { TRACK_1, GAME_CONTROLLER_1, BM_BUTTON_KEY1, -BM_COL_SPACING*6.5f }, - { TRACK_2, GAME_CONTROLLER_1, BM_BUTTON_KEY2, -BM_COL_SPACING*5.5f }, - { TRACK_3, GAME_CONTROLLER_1, BM_BUTTON_KEY3, -BM_COL_SPACING*4.5f }, - { TRACK_4, GAME_CONTROLLER_1, BM_BUTTON_KEY4, -BM_COL_SPACING*3.5f }, - { TRACK_5, GAME_CONTROLLER_1, BM_BUTTON_KEY5, -BM_COL_SPACING*2.5f }, - { TRACK_6, GAME_CONTROLLER_1, BM_BUTTON_KEY6, -BM_COL_SPACING*1.5f }, - { TRACK_7, GAME_CONTROLLER_1, BM_BUTTON_KEY7, -BM_COL_SPACING*0.5f }, - { TRACK_9, GAME_CONTROLLER_2, BM_BUTTON_KEY1, +BM_COL_SPACING*0.5f }, - { TRACK_10, GAME_CONTROLLER_2, BM_BUTTON_KEY2, +BM_COL_SPACING*1.5f }, - { TRACK_11, GAME_CONTROLLER_2, BM_BUTTON_KEY3, +BM_COL_SPACING*2.5f }, - { TRACK_12, GAME_CONTROLLER_2, BM_BUTTON_KEY4, +BM_COL_SPACING*3.5f }, - { TRACK_13, GAME_CONTROLLER_2, BM_BUTTON_KEY5, +BM_COL_SPACING*4.5f }, - { TRACK_14, GAME_CONTROLLER_2, BM_BUTTON_KEY6, +BM_COL_SPACING*5.5f }, - { TRACK_15, GAME_CONTROLLER_2, BM_BUTTON_KEY7, +BM_COL_SPACING*6.5f }, - { TRACK_16, GAME_CONTROLLER_2, BM_BUTTON_SCRATCHUP,+BM_COL_SPACING*8.0f }, + { TRACK_8, GAME_CONTROLLER_1, IIDX_BUTTON_SCRATCHUP, -IIDX_COL_SPACING*8.0f }, + { TRACK_1, GAME_CONTROLLER_1, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*6.5f }, + { TRACK_2, GAME_CONTROLLER_1, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*5.5f }, + { TRACK_3, GAME_CONTROLLER_1, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*4.5f }, + { TRACK_4, GAME_CONTROLLER_1, IIDX_BUTTON_KEY4, -IIDX_COL_SPACING*3.5f }, + { TRACK_5, GAME_CONTROLLER_1, IIDX_BUTTON_KEY5, -IIDX_COL_SPACING*2.5f }, + { TRACK_6, GAME_CONTROLLER_1, IIDX_BUTTON_KEY6, -IIDX_COL_SPACING*1.5f }, + { TRACK_7, GAME_CONTROLLER_1, IIDX_BUTTON_KEY7, -IIDX_COL_SPACING*0.5f }, + { TRACK_9, GAME_CONTROLLER_2, IIDX_BUTTON_KEY1, +IIDX_COL_SPACING*0.5f }, + { TRACK_10, GAME_CONTROLLER_2, IIDX_BUTTON_KEY2, +IIDX_COL_SPACING*1.5f }, + { TRACK_11, GAME_CONTROLLER_2, IIDX_BUTTON_KEY3, +IIDX_COL_SPACING*2.5f }, + { TRACK_12, GAME_CONTROLLER_2, IIDX_BUTTON_KEY4, +IIDX_COL_SPACING*3.5f }, + { TRACK_13, GAME_CONTROLLER_2, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*4.5f }, + { TRACK_14, GAME_CONTROLLER_2, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*5.5f }, + { TRACK_15, GAME_CONTROLLER_2, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*6.5f }, + { TRACK_16, GAME_CONTROLLER_2, IIDX_BUTTON_SCRATCHUP, +IIDX_COL_SPACING*8.0f }, + }, + }, + { // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER]; + 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 + }, + }, + { // STYLE_IIDX_SINGLE5 + GAME_IIDX, // m_Game + true, // m_bUsedForGameplay + false, // m_bUsedForEdit + "single5", // m_szName + STEPS_TYPE_IIDX_SINGLE5, // m_StepsType + StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType + { 160, 480 }, // m_iCenterX + 8, // m_iColsPerPlayer + { // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER]; + { // PLAYER_1 + { TRACK_8, GAME_CONTROLLER_1, IIDX_BUTTON_SCRATCHUP, -IIDX_COL_SPACING*3.5f }, + { TRACK_1, GAME_CONTROLLER_1, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*2.0f }, + { TRACK_2, GAME_CONTROLLER_1, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*1.0f }, + { TRACK_3, GAME_CONTROLLER_1, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*0.0f }, + { TRACK_4, GAME_CONTROLLER_1, IIDX_BUTTON_KEY4, +IIDX_COL_SPACING*1.0f }, + { TRACK_5, GAME_CONTROLLER_1, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*2.0f }, + { TRACK_6, GAME_CONTROLLER_1, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*3.0f }, + { TRACK_7, GAME_CONTROLLER_1, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*4.0f }, + }, + { // PLAYER_2 + { TRACK_1, GAME_CONTROLLER_2, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*3.5f }, + { TRACK_2, GAME_CONTROLLER_2, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*2.5f }, + { TRACK_3, GAME_CONTROLLER_2, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*1.5f }, + { TRACK_4, GAME_CONTROLLER_2, IIDX_BUTTON_KEY4, -IIDX_COL_SPACING*0.5f }, + { TRACK_5, GAME_CONTROLLER_2, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*0.5f }, + { TRACK_6, GAME_CONTROLLER_2, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*1.5f }, + { TRACK_7, GAME_CONTROLLER_2, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*2.5f }, + { TRACK_8, GAME_CONTROLLER_2, IIDX_BUTTON_SCRATCHUP, +IIDX_COL_SPACING*4.0f }, + }, + }, + { // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER]; + 0,1,2,3,4,5,6,7 + }, + }, + { // STYLE_IIDX_DOUBLE5 + GAME_IIDX, // m_Game + true, // m_bUsedForGameplay + false, // m_bUsedForEdit + "double5", // m_szName + STEPS_TYPE_IIDX_DOUBLE5, // m_StepsType + StyleDef::ONE_PLAYER_TWO_CREDITS, // m_StyleType + { 320, 320 }, // m_iCenterX + 16, // m_iColsPerPlayer + { // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER]; + { // PLAYER_1 + { TRACK_8, GAME_CONTROLLER_1, IIDX_BUTTON_SCRATCHUP, -IIDX_COL_SPACING*8.0f }, + { TRACK_1, GAME_CONTROLLER_1, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*6.5f }, + { TRACK_2, GAME_CONTROLLER_1, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*5.5f }, + { TRACK_3, GAME_CONTROLLER_1, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*4.5f }, + { TRACK_4, GAME_CONTROLLER_1, IIDX_BUTTON_KEY4, -IIDX_COL_SPACING*3.5f }, + { TRACK_5, GAME_CONTROLLER_1, IIDX_BUTTON_KEY5, -IIDX_COL_SPACING*2.5f }, + { TRACK_6, GAME_CONTROLLER_1, IIDX_BUTTON_KEY6, -IIDX_COL_SPACING*1.5f }, + { TRACK_7, GAME_CONTROLLER_1, IIDX_BUTTON_KEY7, -IIDX_COL_SPACING*0.5f }, + { TRACK_9, GAME_CONTROLLER_2, IIDX_BUTTON_KEY1, +IIDX_COL_SPACING*0.5f }, + { TRACK_10, GAME_CONTROLLER_2, IIDX_BUTTON_KEY2, +IIDX_COL_SPACING*1.5f }, + { TRACK_11, GAME_CONTROLLER_2, IIDX_BUTTON_KEY3, +IIDX_COL_SPACING*2.5f }, + { TRACK_12, GAME_CONTROLLER_2, IIDX_BUTTON_KEY4, +IIDX_COL_SPACING*3.5f }, + { TRACK_13, GAME_CONTROLLER_2, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*4.5f }, + { TRACK_14, GAME_CONTROLLER_2, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*5.5f }, + { TRACK_15, GAME_CONTROLLER_2, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*6.5f }, + { TRACK_16, GAME_CONTROLLER_2, IIDX_BUTTON_SCRATCHUP, +IIDX_COL_SPACING*8.0f }, + }, + { // PLAYER_2 + { TRACK_8, GAME_CONTROLLER_1, IIDX_BUTTON_SCRATCHUP, -IIDX_COL_SPACING*8.0f }, + { TRACK_1, GAME_CONTROLLER_1, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*6.5f }, + { TRACK_2, GAME_CONTROLLER_1, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*5.5f }, + { TRACK_3, GAME_CONTROLLER_1, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*4.5f }, + { TRACK_4, GAME_CONTROLLER_1, IIDX_BUTTON_KEY4, -IIDX_COL_SPACING*3.5f }, + { TRACK_5, GAME_CONTROLLER_1, IIDX_BUTTON_KEY5, -IIDX_COL_SPACING*2.5f }, + { TRACK_6, GAME_CONTROLLER_1, IIDX_BUTTON_KEY6, -IIDX_COL_SPACING*1.5f }, + { TRACK_7, GAME_CONTROLLER_1, IIDX_BUTTON_KEY7, -IIDX_COL_SPACING*0.5f }, + { TRACK_9, GAME_CONTROLLER_2, IIDX_BUTTON_KEY1, +IIDX_COL_SPACING*0.5f }, + { TRACK_10, GAME_CONTROLLER_2, IIDX_BUTTON_KEY2, +IIDX_COL_SPACING*1.5f }, + { TRACK_11, GAME_CONTROLLER_2, IIDX_BUTTON_KEY3, +IIDX_COL_SPACING*2.5f }, + { TRACK_12, GAME_CONTROLLER_2, IIDX_BUTTON_KEY4, +IIDX_COL_SPACING*3.5f }, + { TRACK_13, GAME_CONTROLLER_2, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*4.5f }, + { TRACK_14, GAME_CONTROLLER_2, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*5.5f }, + { TRACK_15, GAME_CONTROLLER_2, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*6.5f }, + { TRACK_16, GAME_CONTROLLER_2, IIDX_BUTTON_SCRATCHUP, +IIDX_COL_SPACING*8.0f }, + }, + }, + { // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER]; + 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 + }, + }, + { // STYLE_IIDX_EDIT_SINGLE5 + GAME_IIDX, // m_Game + false, // m_bUsedForGameplay + true, // m_bUsedForEdit + "single5 (edit)", // m_szName + STEPS_TYPE_IIDX_SINGLE5, // m_StepsType + StyleDef::ONE_PLAYER_ONE_CREDIT, // m_StyleType + { 160, 480 }, // m_iCenterX + 8, // m_iColsPerPlayer + { // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER]; + { // PLAYER_1 + { TRACK_8, GAME_CONTROLLER_1, IIDX_BUTTON_SCRATCHUP, -IIDX_COL_SPACING*3.5f }, + { TRACK_1, GAME_CONTROLLER_1, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*2.0f }, + { TRACK_2, GAME_CONTROLLER_1, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*1.0f }, + { TRACK_3, GAME_CONTROLLER_1, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*0.0f }, + { TRACK_4, GAME_CONTROLLER_1, IIDX_BUTTON_KEY4, +IIDX_COL_SPACING*1.0f }, + { TRACK_5, GAME_CONTROLLER_1, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*2.0f }, + { TRACK_6, GAME_CONTROLLER_1, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*3.0f }, + { TRACK_7, GAME_CONTROLLER_1, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*4.0f }, + }, + { // PLAYER_2 + { TRACK_1, GAME_CONTROLLER_2, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*3.5f }, + { TRACK_2, GAME_CONTROLLER_2, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*2.5f }, + { TRACK_3, GAME_CONTROLLER_2, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*1.5f }, + { TRACK_4, GAME_CONTROLLER_2, IIDX_BUTTON_KEY4, -IIDX_COL_SPACING*0.5f }, + { TRACK_5, GAME_CONTROLLER_2, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*0.5f }, + { TRACK_6, GAME_CONTROLLER_2, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*1.5f }, + { TRACK_7, GAME_CONTROLLER_2, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*2.5f }, + { TRACK_8, GAME_CONTROLLER_2, IIDX_BUTTON_SCRATCHUP, +IIDX_COL_SPACING*4.0f }, + }, + }, + { // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER]; + 0,1,2,3,4,5,6,7 + }, + }, + { // STYLE_IIDX_EDIT_DOUBLE5 + GAME_IIDX, // m_Game + false, // m_bUsedForGameplay + true, // m_bUsedForEdit + "double5 (edit)", // m_szName + STEPS_TYPE_IIDX_DOUBLE5, // m_StepsType + StyleDef::ONE_PLAYER_TWO_CREDITS, // m_StyleType + { 320, 320 }, // m_iCenterX + 16, // m_iColsPerPlayer + { // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER]; + { // PLAYER_1 + { TRACK_8, GAME_CONTROLLER_1, IIDX_BUTTON_SCRATCHUP, -IIDX_COL_SPACING*8.0f }, + { TRACK_1, GAME_CONTROLLER_1, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*6.5f }, + { TRACK_2, GAME_CONTROLLER_1, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*5.5f }, + { TRACK_3, GAME_CONTROLLER_1, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*4.5f }, + { TRACK_4, GAME_CONTROLLER_1, IIDX_BUTTON_KEY4, -IIDX_COL_SPACING*3.5f }, + { TRACK_5, GAME_CONTROLLER_1, IIDX_BUTTON_KEY5, -IIDX_COL_SPACING*2.5f }, + { TRACK_6, GAME_CONTROLLER_1, IIDX_BUTTON_KEY6, -IIDX_COL_SPACING*1.5f }, + { TRACK_7, GAME_CONTROLLER_1, IIDX_BUTTON_KEY7, -IIDX_COL_SPACING*0.5f }, + { TRACK_9, GAME_CONTROLLER_2, IIDX_BUTTON_KEY1, +IIDX_COL_SPACING*0.5f }, + { TRACK_10, GAME_CONTROLLER_2, IIDX_BUTTON_KEY2, +IIDX_COL_SPACING*1.5f }, + { TRACK_11, GAME_CONTROLLER_2, IIDX_BUTTON_KEY3, +IIDX_COL_SPACING*2.5f }, + { TRACK_12, GAME_CONTROLLER_2, IIDX_BUTTON_KEY4, +IIDX_COL_SPACING*3.5f }, + { TRACK_13, GAME_CONTROLLER_2, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*4.5f }, + { TRACK_14, GAME_CONTROLLER_2, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*5.5f }, + { TRACK_15, GAME_CONTROLLER_2, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*6.5f }, + { TRACK_16, GAME_CONTROLLER_2, IIDX_BUTTON_SCRATCHUP, +IIDX_COL_SPACING*8.0f }, + }, + { // PLAYER_2 + { TRACK_8, GAME_CONTROLLER_1, IIDX_BUTTON_SCRATCHUP, -IIDX_COL_SPACING*8.0f }, + { TRACK_1, GAME_CONTROLLER_1, IIDX_BUTTON_KEY1, -IIDX_COL_SPACING*6.5f }, + { TRACK_2, GAME_CONTROLLER_1, IIDX_BUTTON_KEY2, -IIDX_COL_SPACING*5.5f }, + { TRACK_3, GAME_CONTROLLER_1, IIDX_BUTTON_KEY3, -IIDX_COL_SPACING*4.5f }, + { TRACK_4, GAME_CONTROLLER_1, IIDX_BUTTON_KEY4, -IIDX_COL_SPACING*3.5f }, + { TRACK_5, GAME_CONTROLLER_1, IIDX_BUTTON_KEY5, -IIDX_COL_SPACING*2.5f }, + { TRACK_6, GAME_CONTROLLER_1, IIDX_BUTTON_KEY6, -IIDX_COL_SPACING*1.5f }, + { TRACK_7, GAME_CONTROLLER_1, IIDX_BUTTON_KEY7, -IIDX_COL_SPACING*0.5f }, + { TRACK_9, GAME_CONTROLLER_2, IIDX_BUTTON_KEY1, +IIDX_COL_SPACING*0.5f }, + { TRACK_10, GAME_CONTROLLER_2, IIDX_BUTTON_KEY2, +IIDX_COL_SPACING*1.5f }, + { TRACK_11, GAME_CONTROLLER_2, IIDX_BUTTON_KEY3, +IIDX_COL_SPACING*2.5f }, + { TRACK_12, GAME_CONTROLLER_2, IIDX_BUTTON_KEY4, +IIDX_COL_SPACING*3.5f }, + { TRACK_13, GAME_CONTROLLER_2, IIDX_BUTTON_KEY5, +IIDX_COL_SPACING*4.5f }, + { TRACK_14, GAME_CONTROLLER_2, IIDX_BUTTON_KEY6, +IIDX_COL_SPACING*5.5f }, + { TRACK_15, GAME_CONTROLLER_2, IIDX_BUTTON_KEY7, +IIDX_COL_SPACING*6.5f }, + { TRACK_16, GAME_CONTROLLER_2, IIDX_BUTTON_SCRATCHUP, +IIDX_COL_SPACING*8.0f }, }, }, { // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER]; 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 }, }, -// end MD 10/28/03 { // STYLE_MANIAX_SINGLE GAME_MANIAX, // m_Game true, // m_bUsedForGameplay diff --git a/stepmania/src/NotesLoaderBMS.cpp b/stepmania/src/NotesLoaderBMS.cpp index 649055680b..6b0acd2a18 100644 --- a/stepmania/src/NotesLoaderBMS.cpp +++ b/stepmania/src/NotesLoaderBMS.cpp @@ -86,13 +86,13 @@ StepsType BMSLoader::CheckTracksMagic( void ) { // these four tracks are IIDX-related return STEPS_TYPE_DANCE_DOUBLE; else - return STEPS_TYPE_BM_SINGLE7; + return STEPS_TYPE_IIDX_SINGLE7; case 9: return STEPS_TYPE_PNM_NINE; case 12: return STEPS_TYPE_BM_DOUBLE; case 16: - return STEPS_TYPE_BM_DOUBLE7; + return STEPS_TYPE_IIDX_DOUBLE7; default: return STEPS_TYPE_INVALID; } @@ -354,7 +354,7 @@ bool BMSLoader::LoadFromBMSFile( const CString &sPath, Steps &out ) iTransformNewToOld[10] = BMS_P2_KEY5; iTransformNewToOld[11] = BMS_P2_TURN; break; - case STEPS_TYPE_BM_SINGLE7: + case STEPS_TYPE_IIDX_SINGLE7: iTransformNewToOld[0] = BMS_P1_KEY1; iTransformNewToOld[1] = BMS_P1_KEY2; iTransformNewToOld[2] = BMS_P1_KEY3; @@ -364,7 +364,7 @@ bool BMSLoader::LoadFromBMSFile( const CString &sPath, Steps &out ) iTransformNewToOld[6] = BMS_P1_KEY7; iTransformNewToOld[7] = BMS_P1_TURN; break; - case STEPS_TYPE_BM_DOUBLE7: + case STEPS_TYPE_IIDX_DOUBLE7: iTransformNewToOld[0] = BMS_P1_KEY1; iTransformNewToOld[1] = BMS_P1_KEY2; iTransformNewToOld[2] = BMS_P1_KEY3; diff --git a/stepmania/src/Song.cpp b/stepmania/src/Song.cpp index 1201d33779..926ab9b1fa 100644 --- a/stepmania/src/Song.cpp +++ b/stepmania/src/Song.cpp @@ -51,7 +51,8 @@ #define CACHE_DIR "Cache/" -const int FILE_CACHE_VERSION = 133; // increment this when Song or Steps changes to invalidate cache +const int FILE_CACHE_VERSION = 134; // increment this when Song or Steps changes to invalidate cache +// also increment it on the rare occasion where we split modes const float DEFAULT_MUSIC_SAMPLE_LENGTH = 12.f; diff --git a/stepmania/src/Style.h b/stepmania/src/Style.h index 03d9b12268..eeb8c5324e 100644 --- a/stepmania/src/Style.h +++ b/stepmania/src/Style.h @@ -34,8 +34,12 @@ enum Style STYLE_DS3DDX_SINGLE, STYLE_BM_SINGLE, STYLE_BM_DOUBLE, - STYLE_BM_SINGLE7, - STYLE_BM_DOUBLE7, + STYLE_IIDX_SINGLE7, + STYLE_IIDX_DOUBLE7, + STYLE_IIDX_SINGLE5, + STYLE_IIDX_DOUBLE5, + STYLE_IIDX_EDIT_SINGLE5, + STYLE_IIDX_EDIT_DOUBLE5, STYLE_MANIAX_SINGLE, STYLE_MANIAX_VERSUS, STYLE_MANIAX_DOUBLE,