Added kickbox game mode with 4 styles.

This commit is contained in:
Kyzentun
2014-12-09 22:22:50 -07:00
parent c9a17dc48e
commit c65c1eb386
10 changed files with 523 additions and 2 deletions
+1
View File
@@ -0,0 +1 @@
return ...
+2
View File
@@ -0,0 +1,2 @@
[Global]
FallbackNoteSkin=common
+12
View File
@@ -170,6 +170,14 @@ Right Blue=Right Blue
Right Green=Right Green
Right Yellow=Right Yellow
Right White=Right White
DownLeftFoot=Down Left Foot
UpLeftFoot=Up Left Foot
UpLeftFist=Up Left Fist
DownLeftFist=Down Left Fist
DownRightFoot=Down Right Foot
UpRightFoot=Up Right Foot
UpRightFist=Up Right Fist
DownRightFist=Down Right Fist
[GameCommand]
Could not launch web browser.=Could not launch web browser.
@@ -2014,6 +2022,10 @@ Pnm_Nine=9 Button
Guitar_Five=5 Frets
Karaoke=Karaoke
Lights_Cabinet=Lights
Kickbox_Human=Human
Kickbox_Quadarm=Quadarm
Kickbox_Insect=Insect
Kickbox_Arachnid=Arachnid
[StyleType]
StyleType_OnePlayerOneSide=1 Player
@@ -1305,4 +1305,85 @@
000000001
100000000
000000001
;
;
//---------------kickbox-quadarm - blank----------------
#NOTEDATA:;
#CHARTNAME:Syncer;
#STEPSTYPE:kickbox-quadarm;
#DESCRIPTION:Sync the Game;
#CHARTSTYLE:;
#DIFFICULTY:Beginner;
#METER:1;
#RADARVALUES:0.414,0.379,0.000,0.000,0.000,49.000,0.000,0.000,0.000,0.000,0.000,0.000,0.000,0.414,0.379,0.000,0.000,0.000,49.000,0.000,0.000,0.000,0.000,0.000,0.000,0.000;
#CREDIT:blank;
#NOTES:
0000
0000
0000
0000
,
0000
0000
0000
0000
,
1000
0001
1000
0001
1000
0001
1000
0001
,
1000
0001
1000
0001
1000
0001
1000
0001
,
1000
0001
1000
0001
1000
0001
1000
0001
,
1000
0001
1000
0001
1000
0001
1000
0001
,
1000
0001
1000
0001
1000
0001
1000
0001
,
1000
0001
1000
0001
1000
0001
1000
0001
,
1000
0000
0000
0000
;
+3 -1
View File
@@ -22,6 +22,7 @@ function GetExtraColorThreshold()
para = 10,
techno = 10,
lights = 10, -- lights shouldn't be playable
kickbox= 100, -- extra color is lame
}
return Modes[CurGameName()] or 10
end
@@ -51,7 +52,8 @@ function GameCompatibleModes()
maniax = "Single,Double,Versus",
-- todo: add versus modes for technomotion
techno = "Single4,Single5,Single8,Double4,Double5,Double8",
lights = "Single" -- lights shouldn't be playable
lights = "Single", -- lights shouldn't be playable
kickbox= "Human,Quadarm,Insect,Arachnid",
}
return Modes[CurGameName()]
end
+5
View File
@@ -1975,6 +1975,11 @@ ChoiceVersus8="name,Versus8;style,versus8;screen,"..Branch.AfterSelectStyle()
ChoiceDouble4="name,Double4;style,double4;screen,"..Branch.AfterSelectStyle()
ChoiceDouble5="name,Double5;style,double5;screen,"..Branch.AfterSelectStyle()
ChoiceDouble8="name,Double8;style,double8;screen,"..Branch.AfterSelectStyle()
# kickbox
ChoiceHuman="name,Human;style,human;screen,"..Branch.AfterSelectStyle()
ChoiceQuadarm="name,Quadarm;style,quadarm;screen,"..Branch.AfterSelectStyle()
ChoiceInsect="name,Insect;style,insect;screen,"..Branch.AfterSelectStyle()
ChoiceArachnid="name,Arachnid;style,arachnid;screen,"..Branch.AfterSelectStyle()
#
PerChoiceScrollElement=false
PerChoiceIconElement=false
+4
View File
@@ -104,6 +104,10 @@ enum StepsType
StepsType_popn_five,
StepsType_popn_nine,
StepsType_lights_cabinet,
StepsType_kickbox_human,
StepsType_kickbox_quadarm,
StepsType_kickbox_insect,
StepsType_kickbox_arachnid,
NUM_StepsType, // leave this at the end
StepsType_Invalid,
};
+10
View File
@@ -174,6 +174,16 @@ GameButton StringToGameButton( const InputScheme* pInputs, const RString& s );
#define LIGHTS_BUTTON_BASS_RIGHT GAME_BUTTON_CUSTOM_08
#define NUM_LIGHTS_BUTTONS GAME_BUTTON_CUSTOM_09
#define KICKBOX_BUTTON_DOWN_LEFT_FOOT GAME_BUTTON_CUSTOM_01
#define KICKBOX_BUTTON_UP_LEFT_FOOT GAME_BUTTON_CUSTOM_02
#define KICKBOX_BUTTON_UP_LEFT_FIST GAME_BUTTON_CUSTOM_03
#define KICKBOX_BUTTON_DOWN_LEFT_FIST GAME_BUTTON_CUSTOM_04
#define KICKBOX_BUTTON_DOWN_RIGHT_FIST GAME_BUTTON_CUSTOM_05
#define KICKBOX_BUTTON_UP_RIGHT_FIST GAME_BUTTON_CUSTOM_06
#define KICKBOX_BUTTON_UP_RIGHT_FOOT GAME_BUTTON_CUSTOM_07
#define KICKBOX_BUTTON_DOWN_RIGHT_FOOT GAME_BUTTON_CUSTOM_08
#define NUM_KICKBOX_BUTTONS GAME_BUTTON_CUSTOM_09
#define GAME_BUTTON_LEFT GAME_BUTTON_MENULEFT
#define GAME_BUTTON_RIGHT GAME_BUTTON_MENURIGHT
#define GAME_BUTTON_UP GAME_BUTTON_MENUUP
+400
View File
@@ -93,6 +93,11 @@ static const StepsTypeInfo g_StepsTypeInfos[] = {
{ "pnm-nine", 9, true, StepsTypeCategory_Single }, // called "pnm" for backward compat
// cabinet lights and other fine StepsTypes that don't exist lol
{ "lights-cabinet", NUM_CabinetLight, false, StepsTypeCategory_Single }, // XXX disable lights autogen for now
// kickbox mania
{ "kickbox-human", 4, true, StepsTypeCategory_Single },
{ "kickbox-quadarm", 4, true, StepsTypeCategory_Single },
{ "kickbox-insect", 6, true, StepsTypeCategory_Single },
{ "kickbox-arachnid", 8, true, StepsTypeCategory_Single },
};
@@ -2859,6 +2864,400 @@ static const Game g_Game_Lights =
TNS_W5, // m_mapW5To
};
/** Kickbox mania **********************************************************/
static const AutoMappings g_AutoKeyMappings_Kickbox = AutoMappings (
"", "", "",
AutoMappingEntry(0, KEY_Cq, GAME_BUTTON_MENULEFT, false),
AutoMappingEntry(0, KEY_Cr, GAME_BUTTON_MENURIGHT, false),
AutoMappingEntry(0, KEY_Ce, GAME_BUTTON_MENUUP, false),
AutoMappingEntry(0, KEY_Cw, GAME_BUTTON_MENUDOWN, false),
AutoMappingEntry(0, KEY_Cz, KICKBOX_BUTTON_DOWN_LEFT_FOOT, false),
AutoMappingEntry(0, KEY_Ca, KICKBOX_BUTTON_UP_LEFT_FOOT, false),
AutoMappingEntry(0, KEY_Cs, KICKBOX_BUTTON_UP_LEFT_FIST, false),
AutoMappingEntry(0, KEY_Cx, KICKBOX_BUTTON_DOWN_LEFT_FIST, false),
AutoMappingEntry(0, KEY_Cc, KICKBOX_BUTTON_DOWN_RIGHT_FIST, false),
AutoMappingEntry(0, KEY_Cd, KICKBOX_BUTTON_UP_RIGHT_FIST, false),
AutoMappingEntry(0, KEY_Cf, KICKBOX_BUTTON_UP_RIGHT_FOOT, false),
AutoMappingEntry(0, KEY_Cv, KICKBOX_BUTTON_DOWN_RIGHT_FOOT, false),
AutoMappingEntry(0, KEY_Cu, GAME_BUTTON_MENULEFT, true),
AutoMappingEntry(0, KEY_Cp, GAME_BUTTON_MENURIGHT, true),
AutoMappingEntry(0, KEY_Ci, GAME_BUTTON_MENUUP, true),
AutoMappingEntry(0, KEY_Co, GAME_BUTTON_MENUDOWN, true),
AutoMappingEntry(0, KEY_Cm, KICKBOX_BUTTON_DOWN_LEFT_FOOT, true),
AutoMappingEntry(0, KEY_Cj, KICKBOX_BUTTON_UP_LEFT_FOOT, true),
AutoMappingEntry(0, KEY_Ck, KICKBOX_BUTTON_UP_LEFT_FIST, true),
AutoMappingEntry(0, KEY_COMMA, KICKBOX_BUTTON_DOWN_LEFT_FIST, true),
AutoMappingEntry(0, KEY_PERIOD, KICKBOX_BUTTON_DOWN_RIGHT_FIST, true),
AutoMappingEntry(0, KEY_Cl, KICKBOX_BUTTON_UP_RIGHT_FIST, true),
AutoMappingEntry(0, KEY_SEMICOLON, KICKBOX_BUTTON_UP_RIGHT_FOOT, true),
AutoMappingEntry(0, KEY_SLASH, KICKBOX_BUTTON_DOWN_RIGHT_FOOT, true)
);
static const int KICKBOX_COL_SPACING= 64;
static const Style g_Style_Kickbox_Human=
{
true, // Used for gameplay
true, // Used for edit
true, // Used for demonstration
true, // Used for how to play
"human", // name
StepsType_kickbox_human, // stepstype
StyleType_OnePlayerOneSide, // styletype
4, // cols per player
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_3, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*1.5f, NULL },
},
{ // PLAYER_2
{ TRACK_1, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_3, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*1.5f, NULL },
},
},
{ // m_iInputColumn[NUM_GameController][NUM_GameButton]
{ 0, 0, 1, 1, 2, 2, 3, 3, Style::END_MAPPING },
{ 0, 0, 1, 1, 2, 2, 3, 3, Style::END_MAPPING }
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3
},
false, // needs zoom out with 2 players
false, // can use beginner helper
false, // lock difficulties
};
static const Style g_Style_Kickbox_Human_Versus=
{
true, // Used for gameplay
false, // Used for edit
true, // Used for demonstration
false, // Used for how to play
"hversus", // name
StepsType_kickbox_human, // stepstype
StyleType_TwoPlayersTwoSides, // styletype
4, // cols per player
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_3, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*1.5f, NULL },
},
{ // PLAYER_2
{ TRACK_1, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_3, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*1.5f, NULL },
},
},
{ // m_iInputColumn[NUM_GameController][NUM_GameButton]
{ 0, 0, 1, 1, 2, 2, 3, 3, Style::END_MAPPING },
{ 0, 0, 1, 1, 2, 2, 3, 3, Style::END_MAPPING }
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3
},
false, // needs zoom out with 2 players
false, // can use beginner helper
false, // lock difficulties
};
static const Style g_Style_Kickbox_Quadarm=
{
true, // Used for gameplay
true, // Used for edit
true, // Used for demonstration
true, // Used for how to play
"quadarm", // name
StepsType_kickbox_quadarm, // stepstype
StyleType_OnePlayerOneSide, // styletype
4, // cols per player
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_3, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*1.5f, NULL },
},
{ // PLAYER_2
{ TRACK_1, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_3, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*1.5f, NULL },
},
},
{ // m_iInputColumn[NUM_GameController][NUM_GameButton]
{ Style::NO_MAPPING, Style::NO_MAPPING, 0, 1, 2, 3, Style::NO_MAPPING, Style::NO_MAPPING, Style::END_MAPPING },
{ Style::NO_MAPPING, Style::NO_MAPPING, 0, 1, 2, 3, Style::NO_MAPPING, Style::NO_MAPPING, Style::END_MAPPING }
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3
},
false, // needs zoom out with 2 players
false, // can use beginner helper
false, // lock difficulties
};
static const Style g_Style_Kickbox_Quadarm_Versus=
{
true, // Used for gameplay
false, // Used for edit
true, // Used for demonstration
false, // Used for how to play
"qversus", // name
StepsType_kickbox_quadarm, // stepstype
StyleType_TwoPlayersTwoSides, // styletype
4, // cols per player
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_3, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*1.5f, NULL },
},
{ // PLAYER_2
{ TRACK_1, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_3, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*1.5f, NULL },
},
},
{ // m_iInputColumn[NUM_GameController][NUM_GameButton]
{ Style::NO_MAPPING, Style::NO_MAPPING, 0, 1, 2, 3, Style::NO_MAPPING, Style::NO_MAPPING, Style::END_MAPPING },
{ Style::NO_MAPPING, Style::NO_MAPPING, 0, 1, 2, 3, Style::NO_MAPPING, Style::NO_MAPPING, Style::END_MAPPING }
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3
},
false, // needs zoom out with 2 players
false, // can use beginner helper
false, // lock difficulties
};
static const Style g_Style_Kickbox_Insect=
{
true, // Used for gameplay
true, // Used for edit
true, // Used for demonstration
true, // Used for how to play
"insect", // name
StepsType_kickbox_insect, // stepstype
StyleType_OnePlayerOneSide, // styletype
6, // cols per player
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, -KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_3, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_5, +KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_6, +KICKBOX_COL_SPACING*2.5f, NULL },
},
{ // PLAYER_2
{ TRACK_1, -KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_3, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_5, +KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_6, +KICKBOX_COL_SPACING*2.5f, NULL },
},
},
{ // m_iInputColumn[NUM_GameController][NUM_GameButton]
{ 0, 0, 1, 2, 3, 4, 5, 5, Style::END_MAPPING },
{ 0, 0, 1, 2, 3, 4, 5, 5, Style::END_MAPPING }
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3, 4, 5
},
false, // needs zoom out with 2 players
false, // can use beginner helper
false, // lock difficulties
};
static const Style g_Style_Kickbox_Insect_Versus=
{
true, // Used for gameplay
false, // Used for edit
true, // Used for demonstration
false, // Used for how to play
"iversus", // name
StepsType_kickbox_insect, // stepstype
StyleType_TwoPlayersTwoSides, // styletype
6, // cols per player
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, -KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_3, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_5, +KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_6, +KICKBOX_COL_SPACING*2.5f, NULL },
},
{ // PLAYER_2
{ TRACK_1, -KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_3, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_4, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_5, +KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_6, +KICKBOX_COL_SPACING*2.5f, NULL },
},
},
{ // m_iInputColumn[NUM_GameController][NUM_GameButton]
{ 0, 0, 1, 2, 3, 4, 5, 5, Style::END_MAPPING },
{ 0, 0, 1, 2, 3, 4, 5, 5, Style::END_MAPPING }
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3, 4, 5
},
false, // needs zoom out with 2 players
false, // can use beginner helper
false, // lock difficulties
};
static const Style g_Style_Kickbox_Arachnid=
{
true, // Used for gameplay
true, // Used for edit
true, // Used for demonstration
true, // Used for how to play
"arachnid", // name
StepsType_kickbox_arachnid, // stepstype
StyleType_OnePlayerOneSide, // styletype
8, // cols per player
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, -KICKBOX_COL_SPACING*3.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_3, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_4, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_5, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_6, +KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_7, +KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_8, +KICKBOX_COL_SPACING*3.5f, NULL },
},
{ // PLAYER_2
{ TRACK_1, -KICKBOX_COL_SPACING*3.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_3, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_4, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_5, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_6, +KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_7, +KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_8, +KICKBOX_COL_SPACING*3.5f, NULL },
},
},
{ // m_iInputColumn[NUM_GameController][NUM_GameButton]
{ 0, 1, 2, 3, 4, 5, 6, 7, Style::END_MAPPING },
{ 0, 1, 2, 3, 4, 5, 6, 7, Style::END_MAPPING }
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3, 4, 5, 6, 7
},
false, // needs zoom out with 2 players
false, // can use beginner helper
false, // lock difficulties
};
static const Style g_Style_Kickbox_Arachnid_Versus=
{
true, // Used for gameplay
false, // Used for edit
true, // Used for demonstration
false, // Used for how to play
"aversus", // name
StepsType_kickbox_arachnid, // stepstype
StyleType_TwoPlayersTwoSides, // styletype
8, // cols per player
{ // m_ColumnInfo[NUM_PLAYERS][MAX_COLS_PER_PLAYER];
{ // PLAYER_1
{ TRACK_1, -KICKBOX_COL_SPACING*3.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_3, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_4, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_5, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_6, +KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_7, +KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_8, +KICKBOX_COL_SPACING*3.5f, NULL },
},
{ // PLAYER_2
{ TRACK_1, -KICKBOX_COL_SPACING*3.5f, NULL },
{ TRACK_2, -KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_3, -KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_4, -KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_5, +KICKBOX_COL_SPACING*0.5f, NULL },
{ TRACK_6, +KICKBOX_COL_SPACING*1.5f, NULL },
{ TRACK_7, +KICKBOX_COL_SPACING*2.5f, NULL },
{ TRACK_8, +KICKBOX_COL_SPACING*3.5f, NULL },
},
},
{ // m_iInputColumn[NUM_GameController][NUM_GameButton]
{ 0, 1, 2, 3, 4, 5, 6, 7, Style::END_MAPPING },
{ 0, 1, 2, 3, 4, 5, 6, 7, Style::END_MAPPING }
},
{ // m_iColumnDrawOrder[MAX_COLS_PER_PLAYER];
0, 1, 2, 3, 4, 5, 6, 7
},
true, // needs zoom out with 2 players
false, // can use beginner helper
false, // lock difficulties
};
static const Style* g_apGame_Kickbox_Styles[] =
{
&g_Style_Kickbox_Human,
&g_Style_Kickbox_Human_Versus,
&g_Style_Kickbox_Quadarm,
&g_Style_Kickbox_Quadarm_Versus,
&g_Style_Kickbox_Insect,
&g_Style_Kickbox_Insect_Versus,
&g_Style_Kickbox_Arachnid,
&g_Style_Kickbox_Arachnid_Versus,
NULL
};
static const Game g_Game_Kickbox =
{
"kickbox", // name
g_apGame_Kickbox_Styles, // styles
true, // count notes separately
false, // tick holds
{ // input scheme
"kickbox",
NUM_KICKBOX_BUTTONS, // buttons per controller
{ // button names
{ "DownLeftFoot", GameButton_Invalid },
{ "UpLeftFoot", GameButton_Invalid },
{ "UpLeftFist", GAME_BUTTON_LEFT },
{ "DownLeftFist", GAME_BUTTON_UP },
{ "DownRightFist", GAME_BUTTON_DOWN },
{ "UpRightFist", GAME_BUTTON_RIGHT },
{ "UpRightFoot", GameButton_Invalid },
{ "DownRightFoot", GameButton_Invalid },
},
&g_AutoKeyMappings_Kickbox
},
{
{ GameButtonType_Step },
{ GameButtonType_Step },
{ GameButtonType_Step },
{ GameButtonType_Step },
{ GameButtonType_Step },
{ GameButtonType_Step },
{ GameButtonType_Step },
{ GameButtonType_Step },
},
TNS_W1, // m_mapW1To
TNS_W2, // m_mapW2To
TNS_W3, // m_mapW3To
TNS_W4, // m_mapW4To
TNS_W5, // m_mapW5To
};
static const Game *g_Games[] =
{
&g_Game_Dance,
@@ -2872,6 +3271,7 @@ static const Game *g_Games[] =
&g_Game_Techno,
&g_Game_Popn,
&g_Game_Lights,
&g_Game_Kickbox,
};
GameManager::GameManager()
+4
View File
@@ -82,8 +82,12 @@ int Style::GameInputToColumn( const GameInput &GameI ) const
return Column_Invalid;
for( int i = 0; i <= iColumnIndex; ++i )
{
if( m_iInputColumn[GameI.controller][i] == END_MAPPING )
{
return Column_Invalid;
}
}
return m_iInputColumn[GameI.controller][iColumnIndex];
}