diff --git a/data/translations/text.dat b/data/translations/text.dat index db146ae35..bc1f6a500 100644 --- a/data/translations/text.dat +++ b/data/translations/text.dat @@ -86,8 +86,10 @@ eng=LEFT eng=RIGHT [STR__FRONTEND__JUMP] eng=JUMP -[STR__FRONTEND__ACTION] -eng=ACTION +[STR__FRONTEND__FIRE] +eng=FIRE +[STR__FRONTEND__CATCH] +eng=CATCH ; Screen menu [STR__FRONTEND__HORIZONTAL_POSITION] diff --git a/source/frontend/options.cpp b/source/frontend/options.cpp index 4e7d53013..b7b96a185 100644 --- a/source/frontend/options.cpp +++ b/source/frontend/options.cpp @@ -115,7 +115,8 @@ int CFrontEndOptions::s_buttonOrder[]= CPadConfig::PAD_CFG_LEFT, CPadConfig::PAD_CFG_RIGHT, CPadConfig::PAD_CFG_JUMP, - CPadConfig::PAD_CFG_ACTION, + CPadConfig::PAD_CFG_FIRE, + CPadConfig::PAD_CFG_CATCH, }; CGUISpriteReadout::SpriteReadoutData CFrontEndOptions::s_controlReadoutSprites[]= @@ -302,12 +303,21 @@ void CFrontEndOptions::init() sr=new ("spritereadout") CGUISpriteReadout(); sr->init(fr); sr->setObjectXYWH(146,15,26,15); - sr->setReadoutTarget(&m_controlIcons[CONTROL_ACTION]); + sr->setReadoutTarget(&m_controlIcons[CONTROL_FIRE]); sr->setReadoutData(s_controlReadoutSprites); tb=new ("textbox") CGUITextBox(); tb->init(fr); tb->setObjectXYWH(146+26,15,120,15); - tb->setText(STR__FRONTEND__ACTION); + tb->setText(STR__FRONTEND__FIRE); + sr=new ("spritereadout") CGUISpriteReadout(); + sr->init(fr); + sr->setObjectXYWH(146,30,26,15); + sr->setReadoutTarget(&m_controlIcons[CONTROL_CATCH]); + sr->setReadoutData(s_controlReadoutSprites); + tb=new ("textbox") CGUITextBox(); + tb->init(fr); + tb->setObjectXYWH(146+26,30,120,15); + tb->setText(STR__FRONTEND__CATCH); // Populate SCREEN menu diff --git a/source/frontend/options.h b/source/frontend/options.h index eb735ddfb..811214a70 100644 --- a/source/frontend/options.h +++ b/source/frontend/options.h @@ -69,7 +69,8 @@ private: CONTROL_LEFT, CONTROL_RIGHT, CONTROL_JUMP, - CONTROL_ACTION, + CONTROL_FIRE, + CONTROL_CATCH, CONTROL_COUNT }; diff --git a/source/game/convo.cpp b/source/game/convo.cpp index a450e6235..df0122dc1 100644 --- a/source/game/convo.cpp +++ b/source/game/convo.cpp @@ -530,7 +530,7 @@ void CConversation::thinkQuestion() if(s_currentQuestion==QUESTION_YES_NO) { - if(pad&CPadConfig::getButton(CPadConfig::PAD_CFG_ACTION)) + if(pad&CPadConfig::getButton(CPadConfig::PAD_CFG_FIRE)) { s_currentAnswer=s_currentSelectedAnswer==0?ANSWER_YES:ANSWER_NO; s_currentQuestion=QUESTION_NONE; @@ -542,7 +542,7 @@ void CConversation::thinkQuestion() } else if(s_currentQuestion==QUESTION_OK) { - if(pad&CPadConfig::getButton(CPadConfig::PAD_CFG_ACTION)) + if(pad&CPadConfig::getButton(CPadConfig::PAD_CFG_FIRE)) { s_currentAnswer=ANSWER_OK; s_currentQuestion=QUESTION_NONE; diff --git a/source/pad/pads.cpp b/source/pad/pads.cpp index d8a8da498..d246fd8d3 100644 --- a/source/pad/pads.cpp +++ b/source/pad/pads.cpp @@ -398,7 +398,8 @@ CPadConfig::sPadConfigTable CPadConfig::s_padConfigs[NUM_PAD_CONFIGS]= PAD_UP, // PAD_CFG_UP PAD_DOWN, // PAD_CFG_DOWN - PAD_CROSS, // PAD_CFG_ACTION + PAD_CROSS, // PAD_CFG_FIRE + PAD_TRIANGLE, // PAD_CFG_CATCH PAD_SQUARE, // PAD_CFG_JUMP }}, // Config B @@ -409,7 +410,8 @@ CPadConfig::sPadConfigTable CPadConfig::s_padConfigs[NUM_PAD_CONFIGS]= PAD_UP, // PAD_CFG_UP PAD_DOWN, // PAD_CFG_DOWN - PAD_SQUARE, // PAD_CFG_ACTION + PAD_SQUARE, // PAD_CFG_FIRE + PAD_TRIANGLE, // PAD_CFG_CATCH PAD_CROSS, // PAD_CFG_JUMP }}, // Config C @@ -420,7 +422,8 @@ CPadConfig::sPadConfigTable CPadConfig::s_padConfigs[NUM_PAD_CONFIGS]= PAD_UP, // PAD_CFG_UP PAD_DOWN, // PAD_CFG_DOWN - PAD_CIRCLE, // PAD_CFG_ACTION + PAD_CIRCLE, // PAD_CFG_FIRE + PAD_CROSS, // PAD_CFG_CATCH PAD_TRIANGLE, // PAD_CFG_JUMP }}, // Config D @@ -431,7 +434,8 @@ CPadConfig::sPadConfigTable CPadConfig::s_padConfigs[NUM_PAD_CONFIGS]= PAD_TRIANGLE, // PAD_CFG_UP PAD_CROSS, // PAD_CFG_DOWN - PAD_LEFT, // PAD_CFG_ACTION + PAD_LEFT, // PAD_CFG_FIRE + PAD_UP, // PAD_CFG_CATCH PAD_DOWN, // PAD_CFG_JUMP }}, }; diff --git a/source/pad/pads.h b/source/pad/pads.h index 58ce5454e..f96a10c54 100644 --- a/source/pad/pads.h +++ b/source/pad/pads.h @@ -116,7 +116,8 @@ public: PAD_CFG_UP, PAD_CFG_DOWN, - PAD_CFG_ACTION, + PAD_CFG_FIRE, + PAD_CFG_CATCH, PAD_CFG_JUMP, PAD_CFG_MAX diff --git a/source/player/player.cpp b/source/player/player.cpp index d0a474094..af2041ce8 100644 --- a/source/player/player.cpp +++ b/source/player/player.cpp @@ -1545,9 +1545,13 @@ PLAYERINPUT CPlayer::readPadInput() { input=(PLAYERINPUT)(input|PI_JUMP); } - if(pad&CPadConfig::getButton(CPadConfig::PAD_CFG_ACTION)) + if(pad&CPadConfig::getButton(CPadConfig::PAD_CFG_FIRE)) { - input=(PLAYERINPUT)(input|PI_ACTION); + input=(PLAYERINPUT)(input|PI_FIRE); + } + if(pad&CPadConfig::getButton(CPadConfig::PAD_CFG_CATCH)) + { + input=(PLAYERINPUT)(input|PI_CATCH); } diff --git a/source/player/player.h b/source/player/player.h index c7f340014..d906321e5 100644 --- a/source/player/player.h +++ b/source/player/player.h @@ -130,7 +130,8 @@ typedef enum PI_LEFT =1<<2, PI_RIGHT =1<<3, PI_JUMP =1<<4, - PI_ACTION =1<<5, + PI_FIRE =1<<5, + PI_CATCH =1<<6, }PLAYERINPUT; diff --git a/source/player/pmbubble.cpp b/source/player/pmbubble.cpp index 90833d586..8f10c5cc1 100644 --- a/source/player/pmbubble.cpp +++ b/source/player/pmbubble.cpp @@ -99,7 +99,7 @@ void CPlayerModeBubbleMixture::think() else { // Start to blow? - if(!m_blowing&&getPadInputDown()&PI_ACTION&&canBlowBubbleFromThisState()&&m_player->getBubbleAmmo()) + if(!m_blowing&&getPadInputDown()&PI_FIRE&&canBlowBubbleFromThisState()&&m_player->getBubbleAmmo()) { // Spawn the bubbly platform thingy..! CNpcPlayerBubblePlatform *bubble; diff --git a/source/player/pmchop.cpp b/source/player/pmchop.cpp index 60405fb72..c72055cad 100644 --- a/source/player/pmchop.cpp +++ b/source/player/pmchop.cpp @@ -79,7 +79,7 @@ void CPlayerModeChop::think() CPlayerModeBase::think(); // Start to chop? - if(!m_chopping&&getPadInputDown()&PI_ACTION&&canAttackFromThisState()) + if(!m_chopping&&getPadInputDown()&PI_FIRE&&canAttackFromThisState()) { m_chopFrame=0; getPlayerCollisionSize(&m_savedCSX,&m_savedCSY,&m_savedCSW,&m_savedCSH); diff --git a/source/player/pmcoral.cpp b/source/player/pmcoral.cpp index bb8efc1ce..a7fb95dd8 100644 --- a/source/player/pmcoral.cpp +++ b/source/player/pmcoral.cpp @@ -158,14 +158,14 @@ void CPlayerModeCoralBlower::think() switch(m_blowerState) { case BLOWER_STATE__EMPTY: - if(getPadInputDown()&PI_ACTION&&getState()==STATE_IDLE) + if(getPadInputDown()&PI_FIRE&&getState()==STATE_IDLE) { m_blowerState=BLOWER_STATE__SUCKING; m_enemy=NULL; } break; case BLOWER_STATE__SUCKING: - if(!(getPadInputHeld()&PI_ACTION&&getState()==STATE_IDLE)) + if(!(getPadInputHeld()&PI_FIRE&&getState()==STATE_IDLE)) { m_blowerState=BLOWER_STATE__EMPTY; } @@ -225,7 +225,7 @@ void CPlayerModeCoralBlower::think() } break; case BLOWER_STATE__FULL: - if(getPadInputDown()&PI_ACTION&&getState()==STATE_IDLE) + if(getPadInputDown()&PI_FIRE&&getState()==STATE_IDLE) { m_blowerState=BLOWER_STATE__AIMING; } @@ -235,7 +235,7 @@ void CPlayerModeCoralBlower::think() { m_blowerState=BLOWER_STATE__FULL; } - else if(!(getPadInputHeld()&PI_ACTION)) + else if(!(getPadInputHeld()&PI_FIRE)) { // Fire! m_blowerState=BLOWER_STATE__EMPTY; diff --git a/source/player/pmdead.cpp b/source/player/pmdead.cpp index 108e8ee93..e5e7a4655 100644 --- a/source/player/pmdead.cpp +++ b/source/player/pmdead.cpp @@ -73,7 +73,7 @@ void CPlayerModeDead::think() m_player->moveVertical(5); - if((m_deadTime>DEATH_DELAY&&m_player->getPadInputDown()&PI_ACTION)|| + if((m_deadTime>DEATH_DELAY&&m_player->getPadInputDown()&PI_FIRE)|| m_deadTime>DEATH_TIMEOUT) { respawn(); diff --git a/source/player/pmjelly.cpp b/source/player/pmjelly.cpp index 7c8092b20..674e3655d 100644 --- a/source/player/pmjelly.cpp +++ b/source/player/pmjelly.cpp @@ -92,7 +92,7 @@ void CPlayerModeJellyLauncher::think() switch(m_firingState) { case FIRING_STATE__NONE: - if(getPadInputDown()&PI_ACTION&&m_player->getJellyAmmo()&&canFireFromThisState()) + if(getPadInputDown()&PI_FIRE&&m_player->getJellyAmmo()&&canFireFromThisState()) { m_firingFrame=0; m_firingTime=0; @@ -100,7 +100,7 @@ void CPlayerModeJellyLauncher::think() } break; case FIRING_STATE__POWERINGUP: - if(getPadInputHeld()&PI_ACTION) + if(getPadInputHeld()&PI_FIRE) { int fc,frame; if(m_firingTime