diff --git a/src/modes/soccer_world.cpp b/src/modes/soccer_world.cpp index 051f036bb..a86a816b8 100644 --- a/src/modes/soccer_world.cpp +++ b/src/modes/soccer_world.cpp @@ -105,9 +105,9 @@ void SoccerWorld::onCheckGoalTriggered(bool first_goal) { //I18N: soccer mode m_race_gui->addMessage(_("GOAL!"), NULL, - /* time */ 3.0f, + /* time */ 5.0f, video::SColor(255,255,255,255), - /*important*/ true, + /*important*/ false, /*big font*/ true); m_team_goals[first_goal ? 0 : 1]++; //printf("Score:\nTeam One %d : %d Team Two\n", m_team_goals[0], m_team_goals[1]); @@ -390,11 +390,11 @@ AbstractKart *SoccerWorld::createKart(const std::string &kart_ident, int index, int posIndex = index; if(race_manager->getLocalKartInfo(index).getSoccerTeam() == SOCCER_TEAM_RED) { - if(index % 2 != 0) posIndex += 1; + if(index % 2 != 1) posIndex += 1; } else if(race_manager->getLocalKartInfo(index).getSoccerTeam() == SOCCER_TEAM_BLUE) { - if(index % 2 != 1) posIndex += 1; + if(index % 2 != 0) posIndex += 1; } int position = index+1; btTransform init_pos = m_track->getStartTransform(posIndex); diff --git a/src/states_screens/race_setup_screen.cpp b/src/states_screens/race_setup_screen.cpp index ef9509c60..731d506b1 100644 --- a/src/states_screens/race_setup_screen.cpp +++ b/src/states_screens/race_setup_screen.cpp @@ -19,6 +19,7 @@ #include "guiengine/widgets/dynamic_ribbon_widget.hpp" #include "guiengine/widgets/ribbon_widget.hpp" #include "guiengine/widgets/spinner_widget.hpp" +#include "input/input_manager.hpp" #include "io/file_manager.hpp" #include "race/race_manager.hpp" #include "states_screens/arenas_screen.hpp" @@ -222,6 +223,7 @@ void RaceSetupScreen::onGameModeChanged() void RaceSetupScreen::init() { Screen::init(); + input_manager->setMasterPlayerOnly(true); RibbonWidget* w = getWidget("difficulty"); assert( w != NULL ); @@ -288,6 +290,7 @@ void RaceSetupScreen::init() } #ifdef ENABLE_SOCCER_MODE +if (race_manager->getNumLocalPlayers() > 1 || UserConfigParams::m_artist_debug_mode) { irr::core::stringw name5 = irr::core::stringw( RaceManager::getNameOf(RaceManager::MINOR_MODE_SOCCER)) + L"\n"; diff --git a/src/states_screens/soccer_setup_screen.cpp b/src/states_screens/soccer_setup_screen.cpp index 8805236de..c20636dbe 100644 --- a/src/states_screens/soccer_setup_screen.cpp +++ b/src/states_screens/soccer_setup_screen.cpp @@ -35,7 +35,7 @@ using namespace GUIEngine; DEFINE_SCREEN_SINGLETON( SoccerSetupScreen ); #define KART_CONTINUOUS_ROTATION_SPEED 35.f -#define KART_CONFIRMATION_ROTATION_SPEED 4.f +#define KART_CONFIRMATION_ROTATION_SPEED 0.f #define KART_CONFIRMATION_TARGET_ANGLE 10.f // ----------------------------------------------------------------------------- @@ -57,6 +57,7 @@ void SoccerSetupScreen::eventCallback(Widget* widget, const std::string& name, c { StateManager::get()->pushScreen( ArenasScreen::getInstance() ); race_manager->setMaxGoal(getWidget("goalamount")->getValue()); + input_manager->setMasterPlayerOnly(true); } else if (name == "back") { @@ -147,7 +148,7 @@ void SoccerSetupScreen::init() bt_continue->setDeactivated(); // We need players to be able to choose their teams - input_manager->getDeviceList()->setAssignMode(ASSIGN); + //~ input_manager->getDeviceList()->setAssignMode(ASSIGN); input_manager->setMasterPlayerOnly(false); } @@ -244,7 +245,7 @@ GUIEngine::EventPropagation SoccerSetupScreen::filterActions( PlayerAction acti ButtonWidget* bt_continue = getWidget("continue"); if(areAllKartsConfirmed()) { - bt_continue->setFocusForPlayer(PLAYER_ID_GAME_MASTER); + //~ bt_continue->setFocusForPlayer(PLAYER_ID_GAME_MASTER); bt_continue->setActivated(); for(int i=0 ; i < nb_players ; i++)