resolve issue #2136

In original code, SingleplayerMenu's `_playerdata` is inited in `__init__` and no more updates in show(), thus MP -> SP not work. However, MultiplayerMenu's `_playerdata` is inited every time in show(). thus gets updated in color in SP -> MP. But SingleplayerMenu's playername never gets saved, thus playername not updated in SP->MP. In MultiplayerMenu, playername and color gets saved everytime in close().