X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fscreens.c;h=92c752afb09beb956f0902d4b767d44008270cb0;hb=c3e0f340f3ba490911b5e1dce7d9902b01afc207;hp=bf8ca0ef9d3dc6e6ef228183bfcaf5e32e74ac7b;hpb=e17dc52b6a235b5fdfa16698083eee534e413341;p=rocksndiamonds.git diff --git a/src/screens.c b/src/screens.c index bf8ca0ef..92c752af 100644 --- a/src/screens.c +++ b/src/screens.c @@ -1745,10 +1745,10 @@ void HandleTitleScreen(int mx, int my, int dx, int dy, int button) "No title screen for this level set."); return; } - - FadeMenuSoundsAndMusic(); } + FadeMenuSoundsAndMusic(); + FadeOut(REDRAW_ALL); // title screens may have different window size @@ -2035,9 +2035,23 @@ void HandleMainMenu(int mx, int my, int dx, int dy, int button) if (pos == MAIN_CONTROL_NAME) { - SetGameStatus(GAME_MODE_PSEUDO_TYPENAME); + if ((mx || my) && + insideTextPosRect(main_controls[i].pos_text, mx - mSX, my - mSY)) + { + // special case: menu text "name/team" clicked -- toggle team mode + setup.team_mode = !setup.team_mode; + + InitializeMainControls(); + DrawCursorAndText_Main(choice, TRUE, FALSE); - HandleTypeName(strlen(setup.player_name), 0); + DrawPreviewPlayers(); + } + else + { + SetGameStatus(GAME_MODE_PSEUDO_TYPENAME); + + HandleTypeName(strlen(setup.player_name), 0); + } } else if (pos == MAIN_CONTROL_LEVELS) {