]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Merge branch 'master' into TimePath/issue-1170
authorTimePath <andrew.hardaker1995@gmail.com>
Mon, 15 Dec 2014 05:58:42 +0000 (16:58 +1100)
committerTimePath <andrew.hardaker1995@gmail.com>
Mon, 15 Dec 2014 06:07:11 +0000 (17:07 +1100)
Conflicts:
qcsrc/menu/classes.c
qcsrc/menu/xonotic/dialog_settings_input.c
qcsrc/menu/xonotic/dialog_settings_misc.c
qcsrc/menu/xonotic/mainwindow.c

1  2 
defaultXonotic.cfg
qcsrc/menu/classes.c
qcsrc/menu/xonotic/dialog_settings_input.c
qcsrc/menu/xonotic/dialog_settings_misc.c
qcsrc/menu/xonotic/keybinder.c
qcsrc/menu/xonotic/mainwindow.c

diff --combined defaultXonotic.cfg
index b956cd6359ceb898b07431377e39f2aa7591b9a5,fa88a0530a96b2a400e0d5bcf1de5065edd555fb..2939ddf98df7f07340feac19c4d481ed1c320e9a
@@@ -44,6 -44,8 +44,6 @@@ alias dropweapon "impulse 17
  alias +show_info +button7
  alias -show_info -button7
  
 -bind f6 team_auto
 -
  // merge lightmaps up to 2048x2048 textures
  mod_q3bsp_lightmapmergepower 4
  
@@@ -58,7 -60,8 +58,8 @@@ seta cl_reticle_stretch 0 "whether to s
  seta cl_reticle_item_vortex 1 "draw aiming reticle for the vortex weapon's zoom, 0 disables and values between 0 and 1 change alpha"
  seta cl_reticle_item_normal 1 "draw reticle when zooming with the zoom button, 0 disables and values between 0 and 1 change alpha"
  fov 100
- seta cl_velocityzoom 0        "velocity based zooming of fov, negative values zoom out"
+ seta cl_velocityzoom_enabled 0 "velocity based zooming of fov"
+ seta cl_velocityzoom_factor 0 "factor of fov zooming (negative values zoom out)"
  seta cl_velocityzoom_type 3 "how to factor in speed, 1 = all velocity in all directions, 2 = velocity only in forward direction (can be negative), 3 = velocity only in forward direction (limited to forward only)"
  seta cl_velocityzoom_speed 1000 "target speed for fov factoring"
  seta cl_velocityzoom_time 0.2 "time value for averaging speed values"
@@@ -224,7 -227,7 +225,7 @@@ seta cl_hitsound_min_pitch 0.75 "minimu
  seta cl_hitsound_max_pitch 1.5 "maximum pitch of hit sound"
  seta cl_hitsound_nom_damage 25 "damage amount at which hitsound bases pitch off"
  
- seta cl_eventchase_death 1 "camera goes into 3rd person mode when the player is dead"
+ seta cl_eventchase_death 1 "camera goes into 3rd person mode when the player is dead; set to 2 to active the effect only when the corpse doesn't move anymore"
  seta cl_eventchase_nexball 1 "camera goes into 3rd person mode when in nexball game-mode"
  seta cl_eventchase_distance 140 "final camera distance"
  seta cl_eventchase_speed 1.3 "how fast the camera slides back, 0 is instant"
@@@ -418,8 -421,6 +419,6 @@@ set g_pickup_items -1 "if set to 0 all 
  set g_weaponarena "0" "put in a list of weapons to enable a weapon arena mode, or try \"all\" or \"most\""
  set g_weaponarena_random "0"  "if set to a number, only that weapon count is given on every spawn (randomly)"
  set g_weaponarena_random_with_blaster "1"     "additionally, always provide the blaster in random weapon arena games"
- set g_midair 0 "if set to 1 you can only apply damage to your opponent while he is airborne"
- set g_midair_shieldtime 0.3 "number of seconds you are still invincible since you lost contact to the ground"
  set g_spawnpoints_auto_move_out_of_solid 0 "if set to 1 you will see a warning if a spawn point was placed inside a solid"
  set g_forced_respawn 0 "if set to 1 and a player died, that player gets automatically respawned once <g_respawn_delay> seconds are over"
  set g_fullbrightplayers 0 "brightens up player models (note that the color, skin or model of the players does not change!)"
@@@ -457,6 -458,8 +456,6 @@@ seta menu_sandbox_edit_physics 
  seta menu_sandbox_edit_force 1
  seta menu_sandbox_edit_material ""
  
 -bind f7 menu_showsandboxtools
 -
  seta menu_monsters_edit_spawn ""
  seta menu_monsters_edit_skin 0
  seta menu_monsters_edit_movetarget 1
@@@ -486,7 -489,7 +485,7 @@@ seta timelimit_suddendeath 5 "number o
  set g_tdm 0 "Team Deathmatch: the team who kills their opponents most often wins"
  set g_tdm_on_dm_maps 0 "when this is set, all DM maps automatically support TDM"
  
- seta teamplay_mode 4 "default teamplay setting in team games. 1 = no friendly fire, self damage. 2 = friendly fire and self damage enabled. 3 = no friendly fire, but self damage enabled. 4 = obey the following four cvars"
+ seta teamplay_mode 4 "default teamplay setting in team games. 1 = no friendly fire, self damage. 2 = friendly fire and self damage enabled. 3 = no friendly fire, but self damage enabled. 4 = obey the cvars g_mirrordamage*, g_friendlyfire* and g_teamdamage_threshold*"
  seta g_mirrordamage 0.700000  "for teamplay 4: mirror damage factor"
  seta g_mirrordamage_virtual 1 "for teamplay 4: do not actually apply mirror damage, just show graphics effect for it"
  seta g_friendlyfire 0.500000  "for teamplay 4: fiendly fire factor"
@@@ -507,8 -510,6 +506,6 @@@ set g_bloodloss 0   "amount of health b
  
  set g_footsteps 1     "serverside footstep sounds"
  
- set g_deathglow 1.25 "when enabled, players stop glowing after they die (the value specifies glow fading speed)"
  set g_multijump 0     "Number of multiple jumps to allow (jumping again in the air), -1 allows for infinite jumps"
  set g_multijump_add 0 "0 = make the current z velocity equal to jumpvelocity, 1 = add jumpvelocity to the current z velocity"
  set g_multijump_speed -999999 "Minimum vertical speed a player must have in order to jump again"
@@@ -627,6 -628,19 +624,6 @@@ alias togglezoom "${_togglezoom}zoom
  
  alias reload "impulse 20"
  
 -// movement
 -bind w +forward
 -bind a +moveleft
 -bind s +back
 -bind d +moveright
 -bind UPARROW +forward
 -bind LEFTARROW +moveleft
 -bind DOWNARROW +back
 -bind RIGHTARROW +moveright
 -bind SHIFT +crouch
 -bind ENTER +jump
 -bind SPACE +jump
 -
  // weapons
  alias weapon_group_1 "impulse 1"
  alias weapon_group_2 "impulse 2"
@@@ -639,6 -653,102 +636,6 @@@ alias weapon_group_8 "impulse 8
  alias weapon_group_9 "impulse 9"
  alias weapon_group_0 "impulse 14" // cycles the superweapons
  exec weapons.cfg
 -bind 0 weapon_group_0
 -bind 1 weapon_group_1
 -bind 2 weapon_group_2
 -bind 3 weapon_group_3
 -bind 4 weapon_group_4
 -bind 5 weapon_group_5
 -bind 6 weapon_group_6
 -bind 7 weapon_group_7
 -bind 8 weapon_group_8
 -bind 9 weapon_group_9
 -bind q weaplast
 -bind MOUSE1 +fire
 -bind MOUSE2 +fire2
 -bind MOUSE3 togglezoom
 -bind MOUSE4 weaplast
 -bind MOUSE5 +hook
 -bind MWHEELUP weapnext
 -bind MWHEELDOWN weapprev
 -bind r reload
 -bind BACKSPACE dropweapon
 -bind g dropweapon
 -bind f +use
 -bind v +button8 // drag object
 -
 -// misc
 -bind e +hook
 -bind ` toggleconsole
 -bind ~ toggleconsole
 -bind TAB +showscores
 -bind ESCAPE togglemenu
 -bind t messagemode
 -bind y messagemode2
 -bind z messagemode2
 -bind u "+con_chat_maximize"
 -bind m +hud_panel_radar_maximized
 -bind i +show_info
 -bind PAUSE pause
 -bind F10 menu_showquitdialog
 -bind F11 disconnect
 -bind F12 screenshot
 -bind F4 ready
 -bind ALT +showaccuracy
 -
 -// Gamepad defaults. Tested with Logitech Rumblepad 2, I hope similar ones works as well.
 -bind JOY1 "+crouch"
 -bind JOY2 "+jump"
 -bind JOY3 "weapprev"
 -bind JOY4 "weapnext"
 -bind JOY5 "+fire2"
 -bind JOY6 "+fire"
 -bind JOY7 "+zoom"
 -bind JOY8 "dropweapon"
 -bind JOY9 "menu_showteamselect"
 -bind JOY10 "+show_info"
 -bind JOY11 "+showscores"
 -bind JOY12 "+con_chat_maximize"
 -seta joyadvanced "1"
 -seta joyadvaxisr "2"
 -seta joyadvaxisx "3"
 -seta joyadvaxisy "1"
 -seta joyadvaxisz "4"
 -seta joysidesensitivity "1.0"
 -seta joypitchsensitivity "0.9"
 -seta joyyawsensitivity "-1.8"
 -// SDL only
 -seta joy_deadzoneforward "0.05"
 -seta joy_deadzonepitch "0.05"
 -seta joy_deadzoneside "0.05"
 -seta joy_deadzoneup "0.05"
 -seta joy_deadzoneyaw "0.05"
 -seta joy_sensitivitypitch "0.9"
 -seta joy_sensitivityyaw "-1.8"
 -
 -// team say
 -bind kp_ins messagemode
 -bind kp_del messagemode2
 -bind kp_end "+userbind 1"
 -bind kp_downarrow "+userbind 2"
 -bind kp_pgdn "+userbind 3"
 -bind kp_leftarrow "+userbind 4"
 -bind kp_5 "+userbind 6"
 -bind kp_rightarrow "+userbind 7"
 -bind kp_home "+userbind 9"
 -bind kp_uparrow "+userbind 10"
 -bind kp_pgup "+userbind 11"
 -bind kp_multiply "+userbind 12"
 -bind kp_slash "+userbind 13"
 -bind kp_enter "+userbind 16"
 -bind kp_plus "+userbind 17"
 -bind kp_minus "+userbind 18"
 -
 -bind F1 vyes
 -bind F2 vno
 -
 -//used for spectate/observer mode
 -bind F3 spec
  
  // score log
  set sv_logscores_console 0    "print scores to server console"
@@@ -784,7 -894,43 +781,7 @@@ set g_banned_list_idmode "1"      "when set
  
  r_labelsprites_scale 0.40625 // labels sprites get displayed at 0.5x from 640x480 to 1280x1024, and at 1x from 1600x1200 onwards
  
 -// usercommands. These can be edited and bound by the menu.
 -seta "userbind1_press" "say_team quad soon";  seta "userbind1_release" "";  seta "userbind1_description" "team: quad soon"
 -seta "userbind2_press" "say_team free item %x^7 (l:%y^7); g_waypointsprite_team_here_p";  seta "userbind2_release" "";  seta "userbind2_description" "team: free item, icon"
 -seta "userbind3_press" "say_team took item (l:%l^7); g_waypointsprite_team_here";  seta "userbind3_release" "";  seta "userbind3_description" "team: took item, icon"
 -seta "userbind4_press" "say_team negative";  seta "userbind4_release" "";  seta "userbind4_description" "team: negative"
 -seta "userbind5_press" "say_team positive";  seta "userbind5_release" "";  seta "userbind5_description" "team: positive"
 -seta "userbind6_press" "say_team need help (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_helpme; cmd voice needhelp";  seta "userbind6_release" "";  seta "userbind6_description" "team: need help, icon"
 -seta "userbind7_press" "say_team enemy seen (l:%y^7); g_waypointsprite_team_danger_p; cmd voice incoming";  seta "userbind7_release" "";  seta "userbind7_description" "team: enemy seen, icon"
 -seta "userbind8_press" "say_team flag seen (l:%y^7); g_waypointsprite_team_here_p; cmd voice seenflag";  seta "userbind8_release" "";  seta "userbind8_description" "team: flag seen, icon"
 -seta "userbind9_press" "say_team defending (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_here";  seta "userbind9_release" "";  seta "userbind9_description" "team: defending, icon"
 -seta "userbind10_press" "say_team roaming (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_here";  seta "userbind10_release" "";  seta "userbind10_description" "team: roaming, icon"
 -seta "userbind11_press" "say_team attacking (l:%l^7) (h:%h^7 a:%a^7 w:%w^7); g_waypointsprite_team_here";  seta "userbind11_release" "";  seta "userbind11_description" "team: attacking, icon"
 -seta "userbind12_press" "say_team killed flagcarrier (l:%y^7); g_waypointsprite_team_here_p"; seta "userbind12_release" ""; seta "userbind12_description" "team: killed flag, icon"
 -seta "userbind13_press" "say_team dropped flag (l:%d^7); g_waypointsprite_team_here_d"; seta "userbind13_release" ""; seta "userbind13_description" "team: dropped flag, icon"
 -seta "userbind14_press" "say_team dropped gun %w^7 (l:%l^7); g_waypointsprite_team_here; wait; dropweapon"; seta "userbind14_release" ""; seta "userbind14_description" "team: drop gun, icon"
 -// TODO change this to "use" once we can
 -seta "userbind15_press" "say_team dropped flag/key %w^7 (l:%l^7); g_waypointsprite_team_here; wait; +use"; seta "userbind15_release" "-use"; seta "userbind15_description" "team: drop flag/key, icon"
 -seta "userbind16_press" "say :-) / nice one"; seta "userbind16_release" ""; seta "userbind16_description" "chat: nice one"
 -seta "userbind17_press" "say good game"; seta "userbind17_release" ""; seta "userbind17_description" "chat: good game"
 -seta "userbind18_press" "say hi / good luck and have fun"; seta "userbind18_release" ""; seta "userbind18_description" "chat: hi / good luck"
 -seta "userbind19_press" "+showscores; +con_chat_maximize"; seta "userbind19_release" "-showscores; -con_chat_maximize"; seta "userbind19_description" "scoreboard / chat history"
 -seta "userbind20_press" "toggle cl_capturevideo"; seta "userbind20_release" ""; seta "userbind20_description" "toggle recording .avi"
 -seta "userbind21_press" "toggle vid_fullscreen; vid_restart"; seta "userbind21_release" ""; seta "userbind21_description" "toggle fullscreen"
 -seta "userbind22_press" ""; seta "userbind22_release" ""; seta "userbind22_description" ""
 -seta "userbind23_press" ""; seta "userbind23_release" ""; seta "userbind23_description" ""
 -seta "userbind24_press" ""; seta "userbind24_release" ""; seta "userbind24_description" ""
 -seta "userbind25_press" ""; seta "userbind25_release" ""; seta "userbind25_description" ""
 -seta "userbind26_press" ""; seta "userbind26_release" ""; seta "userbind26_description" ""
 -seta "userbind27_press" ""; seta "userbind27_release" ""; seta "userbind27_description" ""
 -seta "userbind28_press" ""; seta "userbind28_release" ""; seta "userbind28_description" ""
 -seta "userbind29_press" ""; seta "userbind29_release" ""; seta "userbind29_description" ""
 -seta "userbind30_press" ""; seta "userbind30_release" ""; seta "userbind30_description" ""
 -seta "userbind31_press" ""; seta "userbind31_release" ""; seta "userbind31_description" ""
 -seta "userbind32_press" ""; seta "userbind32_release" ""; seta "userbind32_description" ""
 -alias _userbind_call "${$1}"
 -alias +userbind "_userbind_call userbind${1}_press"
 -alias -userbind "_userbind_call userbind${1}_release"
 +exec binds-default.cfg
  
  // we must change its default from 1.0 to 1 to be consistent with menuqc
  set slowmo 1
@@@ -1030,6 -1176,8 +1027,6 @@@ seta cl_clippedspectating 1 "movement c
  seta cl_autoscreenshot 1 "Take a screenshot upon the end of a match... 0 = Disable completely, 1 = Allow sv_autoscreenshot to take a screenshot when requested, 2 = Always take an autoscreenshot anyway."
  
  // must be at the bottom of this file:
 -// alias for switching the teamselect menu
 -bind f5 menu_showteamselect
  
  set g_bugrigs 0
  set g_bugrigs_planar_movement 1       "BROTRR bug emulation"
@@@ -1164,8 -1312,6 +1161,6 @@@ set sv_accuracy_data_send 1 "1 send wea
  set cl_accuracy_data_share 0 "1 share my weapon accuracy data statistics with other players, 0 keep my weapon accuracy data statistics hidden"
  set cl_accuracy_data_receive 0 "1 receive weapon accuracy data statistics at the end of the match"
  
- set developer_fteqccbugs 0 "check fteqcc bugs on startup"
- set _allow_unacceptable_compiler_bugs 0 "don't bail out if certain bugs are detected (HANDLE WITH CARE)"
  set spawn_debug 0 "use all spawns one by one, then abort, to verify all spawnpoints"
  set loddebug 0 "force this LOD level"
  set spawn_debugview 0 "display spawnpoints and their rating on spawn to debug spawnpoint rating calculation"
@@@ -1229,6 -1375,8 +1224,8 @@@ volume 
  // sucks less than the old one
  cl_decals_newsystem 1
  
+ seta cl_cubemaps_extra 1
  set sv_q3acompat_machineshotgunswap 0 "shorthand for swapping machinegun and shotgun (for Q3A map compatibility in mapinfo files)"
  
  set g_movement_highspeed 1 "movement speed modification factor (only changes movement when above maxspeed)"
diff --combined qcsrc/menu/classes.c
index 60063224906878d91a83baa098da86f5febd9f95,9b872cbf2945d8a17a454456840692f305faeb72..bc60898c88213dec842d73b2930dbca094ebb77f
@@@ -26,6 -26,7 +26,7 @@@
  #include "xonotic/bigbutton.c"
  #include "xonotic/commandbutton.c"
  #include "xonotic/bigcommandbutton.c"
+ #include "xonotic/textlabel.c"
  #include "xonotic/dialog_firstrun.c"
  #include "xonotic/dialog_teamselect.c"
  #include "xonotic/dialog_sandboxtools.c"
  #include "xonotic/dialog_settings_video.c"
  #include "xonotic/dialog_settings_effects.c"
  #include "xonotic/dialog_settings_audio.c"
+ #include "xonotic/dialog_settings_game.c"
  #include "xonotic/dialog_settings_user.c"
  #include "xonotic/dialog_settings_user_languagewarning.c"
  #include "xonotic/dialog_settings_misc.c"
  #include "xonotic/dialog_multiplayer.c"
- #include "xonotic/dialog_multiplayer_playersetup.c"
+ #include "xonotic/dialog_multiplayer_profile.c"
  #include "xonotic/tabcontroller.c"
- #include "xonotic/textlabel.c"
  #include "xonotic/slider.c"
  #include "xonotic/slider_resolution.c"
  #include "xonotic/checkbox.c"
@@@ -60,7 -61,6 +61,6 @@@
  #include "xonotic/dialog_quit.c"
  #include "xonotic/dialog_multiplayer_create.c"
  #include "xonotic/dialog_multiplayer_create_mutators.c"
- #include "xonotic/dialog_multiplayer_create_advanced.c"
  #include "xonotic/dialog_multiplayer_create_mapinfo.c"
  #include "xonotic/gametypelist.c"
  #include "xonotic/maplist.c"
  #include "xonotic/dialog_singleplayer_winner.c"
  #include "xonotic/dialog_credits.c"
  #include "xonotic/credits.c"
- #include "xonotic/dialog_multiplayer_playersetup_crosshair.c"
- #include "xonotic/dialog_multiplayer_playersetup_hud.c"
- #include "xonotic/dialog_multiplayer_playersetup_hudconfirm.c"
- #include "xonotic/dialog_multiplayer_playersetup_model.c"
- #include "xonotic/dialog_multiplayer_playersetup_view.c"
- #include "xonotic/dialog_multiplayer_playersetup_weapons.c"
+ #include "xonotic/dialog_settings_game_crosshair.c"
+ #include "xonotic/dialog_settings_game_hud.c"
+ #include "xonotic/dialog_settings_game_hudconfirm.c"
+ #include "xonotic/dialog_settings_game_model.c"
+ #include "xonotic/dialog_settings_game_messages.c"
+ #include "xonotic/dialog_settings_game_view.c"
+ #include "xonotic/dialog_settings_game_weapons.c"
  #include "xonotic/weaponslist.c"
- #include "xonotic/dialog_multiplayer_demo.c"
+ #include "xonotic/dialog_multiplayer_media.c"
+ #include "xonotic/dialog_multiplayer_media_demo.c"
+ #include "xonotic/dialog_multiplayer_media_demo_startconfirm.c"
+ #include "xonotic/dialog_multiplayer_media_demo_timeconfirm.c"
  #include "xonotic/demolist.c"
+ #include "xonotic/screenshotimage.c"
+ #include "xonotic/dialog_multiplayer_media_screenshot.c"
+ #include "xonotic/dialog_multiplayer_media_screenshot_viewer.c"
+ #include "xonotic/screenshotlist.c"
+ #include "xonotic/statslist.c"
  #include "xonotic/colorpicker.c"
  #include "xonotic/colorpicker_string.c"
  #include "xonotic/cvarlist.c"
  #include "xonotic/dialog_hudpanel_buffs.c"
  #include "xonotic/slider_picmip.c"
  #include "xonotic/slider_particles.c"
+ #include "xonotic/slider_sbfadetime.c"
 +#include "xonotic/dialog_settings_misc_reset.c"
index c8ba7c4fd4483defb98d124de8ddbc88c736cf74,f58ce157232886d3119c2f56d73c3e9a783d28e9..4287f1f82e37d52bb8be673378a3ac372e99f469
@@@ -3,7 -3,7 +3,7 @@@ CLASS(XonoticInputSettingsTab) EXTENDS(
        METHOD(XonoticInputSettingsTab, fill, void(entity))
        ATTRIB(XonoticInputSettingsTab, title, string, _("Input"))
        ATTRIB(XonoticInputSettingsTab, intendedWidth, float, 0.9)
-       ATTRIB(XonoticInputSettingsTab, rows, float, 17)
+       ATTRIB(XonoticInputSettingsTab, rows, float, 14.5)
        ATTRIB(XonoticInputSettingsTab, columns, float, 6.2) // added extra .2 for center space
  ENDCLASS(XonoticInputSettingsTab)
  entity makeXonoticInputSettingsTab();
@@@ -17,19 -17,23 +17,23 @@@ entity makeXonoticInputSettingsTab(
        me.configureDialog(me);
        return me;
  }
+ void CheckBox_Click_Redisplay(entity me, entity checkbox)
+ {
+       CheckBox_Click(me, checkbox);
+       cmd("\ndefer 0.2 \"togglemenu 1\"\n");
+       //m_display();
+ }
  void XonoticInputSettingsTab_fill(entity me)
  {
        entity e;
 -      entity kb;
 +      entity kb = makeXonoticKeyBinder();
  
        me.TR(me);
-               me.TD(me, 1, 2, e = makeXonoticTextLabel(0, _("Key bindings:")));
-               me.TD(me, 1, 1, e = makeXonoticButton(_("Reset all"), '0 0 0'));
-                       e.onClick = KeyBinder_Bind_Reset_All;
-                       e.onClickEntity = kb;
+               me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Key Bindings")));
        me.TR(me);
 -              me.TD(me, me.rows - 2.5, 3, kb = makeXonoticKeyBinder());
 -      me.gotoRC(me, me.rows - 1.5, 0);
 +              me.TD(me, me.rows - 4, 3, kb);
 +      me.gotoRC(me, me.rows - 3, 0);
                me.TD(me, 1, 1, e = makeXonoticButton(_("Change key..."), '0 0 0'));
                        e.onClick = KeyBinder_Bind_Change;
                        e.onClickEntity = kb;
                        e.onClick = KeyBinder_Bind_Clear;
                        e.onClickEntity = kb;
                        kb.clearButton = e;
++      me.TR(me);
++              me.TD(me, 1, 3, e = makeXonoticButton(_("Reset all"), '0 0 0'));
++                      e.onClick = KeyBinder_Bind_Reset_All;
++                      e.onClickEntity = kb;
  
        me.gotoRC(me, 0, 3.2); me.setFirstColumn(me, me.currentColumn);
-               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "con_closeontoggleconsole", _("Pressing \"enter console\" key also closes it")));
+               me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Mouse")));
        me.TR(me);
-               me.TD(me, 1, 3, e = makeXonoticCheckBox(1, "cl_movement_track_canjump", _("Automatically repeat jumping if holding jump")));
+               me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Sensitivity:")));
+               me.TD(me, 1, 2, e = makeXonoticSlider(1, 32, 0.2, "sensitivity"));
        me.TR(me);
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "m_filter", _("Smooth aiming")));
        me.TR(me);
-               if(cvar_type("joy_enable") & CVAR_TYPEFLAG_ENGINE)
-                       me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "joy_enable", _("Use joystick input")));
-               else if(cvar_type("joystick") & CVAR_TYPEFLAG_ENGINE)
-                       me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "joystick", _("Use joystick input")));
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(1.022, "m_pitch", _("Invert aiming")));
+       me.TR(me);
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "menu_mouse_absolute", _("Use system mouse positioning")));
+                       makeMulti(e, "hud_cursormode");
+                       e.onClick = CheckBox_Click_Redisplay;
+                       e.onClickEntity = e;
+       me.TR(me);
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "m_accelerate", _("Enable built in mouse acceleration")));
+       me.TR(me);
+               if(cvar_type("vid_dgamouse") & CVAR_TYPEFLAG_ENGINE)
+                       me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "vid_dgamouse", _("Disable system mouse acceleration")));
+               else if(cvar_type("apple_mouse_noaccel") & CVAR_TYPEFLAG_ENGINE)
+                       me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "apple_mouse_noaccel", _("Disable system mouse acceleration")));
                else
                {
-                       me.TD(me, 1, 3, e = makeXonoticCheckBox(0, string_null, _("Use joystick input")));
+                       me.TD(me, 1, 3, e = makeXonoticCheckBox(0, string_null, _("Disable system mouse acceleration")));
                        e.disabled = 1; // the option is never available in this case, just there for show
                }
        me.TR(me);
        me.TR(me);
-               me.TD(me, 1, 3, e = makeXonoticTextLabel(0, _("Mouse:")));
+               me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Other")));
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Sensitivity:")));
-               me.TD(me, 1, 2, e = makeXonoticSlider(1, 32, 0.2, "sensitivity"));
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "con_closeontoggleconsole", _("Pressing \"enter console\" key also closes it")));
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "m_filter", _("Smooth aiming")));
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(1, "cl_movement_track_canjump", _("Automatically repeat jumping if holding jump")));
+                       e.sendCvars = TRUE;
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 2.8, e = makeXonoticCheckBox(1.022, "m_pitch", _("Invert aiming")));
        me.TR(me);
-               me.TDempty(me, 0.2);
-               if(cvar_type("vid_dgamouse") & CVAR_TYPEFLAG_ENGINE)
-                       me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "vid_dgamouse", _("Disable system mouse acceleration")));
-               else if(cvar_type("apple_mouse_noaccel") & CVAR_TYPEFLAG_ENGINE)
-                       me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "apple_mouse_noaccel", _("Disable system mouse acceleration")));
+               if(cvar_type("joy_enable") & CVAR_TYPEFLAG_ENGINE)
+               {
+                       me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "joy_enable", _("Use joystick input")));
+                       setDependent(e, "joy_detected", 1, 10000000);
+               }
+               else if(cvar_type("joystick") & CVAR_TYPEFLAG_ENGINE)
+               {
+                       me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "joystick", _("Use joystick input")));
+                       setDependent(e, "joy_detected", 1, 10000000);
+               }
                else
                {
-                       me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, string_null, _("Disable system mouse acceleration")));
+                       me.TD(me, 1, 3, e = makeXonoticCheckBox(0, string_null, _("Use joystick input")));
                        e.disabled = 1; // the option is never available in this case, just there for show
                }
-       me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "m_accelerate", _("Enable built in mouse acceleration")));
-       me.gotoRC(me, me.rows - 1, 0);
-               me.TD(me, 1, me.columns, makeXonoticCommandButton(_("Apply immediately"), '0 0 0', "sendcvar cl_movement_track_canjump", COMMANDBUTTON_APPLY));
  }
  #endif
index 489b00967b95e74d0177f979f9dd860f52866295,0fd2db2fe08d541c6d288fa66d6e43f5aa920624..1deda87df078a26c24569b2bf1dd6cb54155b1b6
@@@ -3,7 -3,7 +3,7 @@@ CLASS(XonoticMiscSettingsTab) EXTENDS(X
        METHOD(XonoticMiscSettingsTab, fill, void(entity))
        ATTRIB(XonoticMiscSettingsTab, title, string, _("Misc"))
        ATTRIB(XonoticMiscSettingsTab, intendedWidth, float, 0.9)
-       ATTRIB(XonoticMiscSettingsTab, rows, float, 17)
+       ATTRIB(XonoticMiscSettingsTab, rows, float, 14.5)
        ATTRIB(XonoticMiscSettingsTab, columns, float, 6.2)
  ENDCLASS(XonoticMiscSettingsTab)
  entity makeXonoticMiscSettingsTab();
@@@ -23,10 -23,13 +23,13 @@@ void XonoticMiscSettingsTab_fill(entit
        //entity sk;
  
        me.TR(me);
-               me.TD(me, 1, 3, e = makeXonoticTextLabel(0, _("Network:")));
+               me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Network")));
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Speed:")));
+               me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Client UDP port:")));
+               me.TD(me, 1, 1.5, e = makeXonoticInputBox(0, "cl_port"));
+       me.TR(me);
+       me.TR(me);
+               me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Bandwidth:")));
                me.TD(me, 1, 2, e = makeXonoticTextSlider("_cl_rate"));
                        e.addValue(e, _("56k"), "4000");
                        e.addValue(e, _("ISDN"), "7000");
                        e.addValue(e, _("Broadband"), "66666");
                        e.configureXonoticTextSliderValues(e);
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Input packets/s:")));
+               me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Input packets/s:")));
                me.TD(me, 1, 2, e = makeXonoticSlider(20, 100, 5, "cl_netfps"));
        me.TR(me);
-               if(cvar("developer"))
-               {
-                       me.TDempty(me, 0.2);
-                       me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Local latency:")));
-                       me.TD(me, 1, 2, e = makeXonoticSlider(0, 1000, 25, "cl_netlocalping"));
-               }
+               me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Server queries/s:")));
+               me.TD(me, 1, 2, e = makeXonoticSlider(20, 100, 10, "net_slist_queriespersecond"));
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 1.8, e = makeXonoticTextLabel(0, _("Client UDP port:")));
-               me.TD(me, 1, 1, e = makeXonoticInputBox(0, "cl_port"));
-                       e.enableClearButton = 0;
        me.TR(me);
-               me.TDempty(me, 0.2);
-               if(cvar_type("crypto_aeslevel") & CVAR_TYPEFLAG_ENGINE)
-                       me.TD(me, 1, 2.8, e = makeXonoticCheckBoxEx(2, 1, "crypto_aeslevel", _("Use encryption (AES) when available")));
+               me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Downloads:")));
+               me.TD(me, 1, 2, e = makeXonoticSlider(1, 5, 1, "cl_curl_maxdownloads"));
        me.TR(me);
+               me.TDempty(me, 0.1);
+               me.TD(me, 1, 0.9, e = makeXonoticTextLabel(0, _("Speed (kB/s):")));
+               me.TD(me, 1, 2, e = makeXonoticSlider(10, 2000, 50, "cl_curl_maxspeed"));
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "shownetgraph", _("Show netgraph")));
+               if(cvar("developer"))
+               {
+                       me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Local latency:")));
+                       me.TD(me, 1, 2, e = makeXonoticSlider(0, 1000, 25, "cl_netlocalping"));
+               }
        me.TR(me);
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "shownetgraph", _("Show netgraph")));
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "cl_movement", _("Client-side movement prediction")));
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_movement", _("Client-side movement prediction")));
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "cl_movement_errorcompensation", _("Movement error compensation")));
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_movement_errorcompensation", _("Movement error compensation")));
                setDependent(e, "cl_movement", 1, 1);
        me.TR(me);
-       me.TR(me);
-               me.TD(me, 1, 3, e = makeXonoticTextLabel(0, _("Downloads:")));
-       me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Maximum:")));
-               me.TD(me, 1, 2, e = makeXonoticSlider(1, 5, 1, "cl_curl_maxdownloads"));
-       me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Speed (kB/s):")));
-               me.TD(me, 1, 2, e = makeXonoticSlider(10, 1500, 10, "cl_curl_maxspeed"));
-       me.TR(me);
+               if(cvar_type("crypto_aeslevel") & CVAR_TYPEFLAG_ENGINE)
+                       me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(2, 1, "crypto_aeslevel", _("Use encryption (AES) when available"))); // TODO: move up
  
        me.gotoRC(me, 0, 3.2); me.setFirstColumn(me, me.currentColumn);
-               me.TD(me, 1, 3, e = makeXonoticTextLabel(0, _("Framerate:")));
+               me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Framerate")));
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Maximum:")));
+               me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Maximum:")));
                me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_maxfps"));
                        e.addValue(e, ZCTX(_("MAXFPS^5 fps")), "5");
                        e.addValue(e, ZCTX(_("MAXFPS^10 fps")), "10");
@@@ -99,8 -87,7 +87,7 @@@
                        e.addValue(e, ZCTX(_("MAXFPS^Unlimited")), "0");
                        e.configureXonoticTextSliderValues(e);
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Target:")));
+               me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Target:")));
                me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_minfps"));
                        e.addValue(e, ZCTX(_("TRGT^Disabled")), "0");
                        e.addValue(e, ZCTX(_("TRGT^30 fps")), "30");
                        e.addValue(e, ZCTX(_("TRGT^200 fps")), "200");
                        e.configureXonoticTextSliderValues(e);
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Idle limit:")));
+               me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Idle limit:")));
                me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_maxidlefps"));
                        e.addValue(e, ZCTX(_("IDLFPS^10 fps")), "10");
                        e.addValue(e, ZCTX(_("IDLFPS^20 fps")), "20");
                        e.configureXonoticTextSliderValues(e);
        me.TR(me);
        me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "showfps", _("Show frames per second")));
-       me.TR(me);
-               me.TDempty(me, 0.2);
-               me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "cl_maxfps_alwayssleep", _("Save processing time for other apps")));
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_maxfps_alwayssleep", _("Save processing time for other apps")));
                setDependent(e, "cl_maxfps", 1, 1000);
+       me.TR(me);
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "showfps", _("Show frames per second")));
        me.TR(me);
+       me.TR(me);
+               me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Other")));
        me.TR(me);
                me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Menu tooltips:")));
                me.TD(me, 1, 2, e = makeXonoticTextSlider("menu_tooltips"));
                        e.addValue(e, ZCTX(_("TLTIP^Advanced")), "2");
                        e.configureXonoticTextSliderValues(e);
        me.TR(me);
-       me.TR(me);
-               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "showtime", _("Show current time")));
-       me.TR(me);
-               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "showdate", _("Show current date")));
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "showtime", _("Show current date and time")));
+                       makeMulti(e, "showdate");
        me.TR(me);
                me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "developer", _("Enable developer mode")));
--      me.TR(me);
++
        me.TR(me);
                me.TDempty(me, 0.5);
                me.TD(me, 1, 2, e = makeXonoticButton(_("Advanced settings..."), '0 0 0'));
                        e.onClick = DialogOpenButton_Click;
                        e.onClickEntity = main.cvarsDialog;
-       me.TR(me);
 +      me.TR(me);
 +              me.TDempty(me, 0.5);
 +              me.TD(me, 1, 2, e = makeXonoticButton(_("Factory reset"), '0 0 0'));
 +                      e.onClick = DialogOpenButton_Click;
 +                      e.onClickEntity = main.resetDialog;
  }
  #endif
index d54ab6671f95e506950af0de8ce959dd6a9fd5f0,57f501f5c145a050724cb570045aa4b332622a74..6fe961871c14c99ca0873e385d3af1e21593e826
@@@ -238,21 -238,15 +238,21 @@@ void KeyBinder_Bind_Clear(entity btn, e
        localcmd("-zoom\n"); // to make sure we aren't in togglezoom'd state
        cvar_set("_hud_showbinds_reload", "1");
  }
 +void KeyBinder_Bind_Reset_All(entity btn, entity me)
 +{
 +      localcmd("exec binds-default.cfg\n");
 +      localcmd("-zoom\n"); // to make sure we aren't in togglezoom'd state
 +      cvar_set("_hud_showbinds_reload", "1");
 +}
  void XonoticKeyBinder_clickListBoxItem(entity me, float i, vector where)
  {
-       if(i == me.lastClickedServer)
+       if(i == me.lastClickedKey)
                if(time < me.lastClickedTime + 0.3)
                {
                        // DOUBLE CLICK!
                        KeyBinder_Bind_Change(NULL, me);
                }
-       me.lastClickedServer = i;
+       me.lastClickedKey = i;
        me.lastClickedTime = time;
  }
  void XonoticKeyBinder_setSelected(entity me, float i)
index 480e801d4818344f17bc3880bb318193fd10e80d,6eba4f7a7a316a3f27fbf3ffe032e310f3daa915..6fa40bfac69cf687997ec45952d7b10eb7825d12
@@@ -5,22 -5,20 +5,21 @@@ CLASS(MainWindow) EXTENDS(ModalControll
        ATTRIB(MainWindow, firstRunDialog, entity, NULL)
        ATTRIB(MainWindow, advancedDialog, entity, NULL)
        ATTRIB(MainWindow, mutatorsDialog, entity, NULL)
-       ATTRIB(MainWindow, weaponsDialog, entity, NULL)
        ATTRIB(MainWindow, mapInfoDialog, entity, NULL)
        ATTRIB(MainWindow, userbindEditDialog, entity, NULL)
        ATTRIB(MainWindow, winnerDialog, entity, NULL)
        ATTRIB(MainWindow, serverInfoDialog, entity, NULL)
        ATTRIB(MainWindow, cvarsDialog, entity, NULL)
+       ATTRIB(MainWindow, screenshotViewerDialog, entity, NULL)
        ATTRIB(MainWindow, viewDialog, entity, NULL)
-       ATTRIB(MainWindow, modelDialog, entity, NULL)
-       ATTRIB(MainWindow, crosshairDialog, entity, NULL)
-       ATTRIB(MainWindow, hudDialog, entity, NULL)
        ATTRIB(MainWindow, hudconfirmDialog, entity, NULL)
        ATTRIB(MainWindow, languageWarningDialog, entity, NULL)
        ATTRIB(MainWindow, mainNexposee, entity, NULL)
        ATTRIB(MainWindow, fadedAlpha, float, SKINALPHA_BEHIND)
        ATTRIB(MainWindow, dialogToShow, entity, NULL)
+       ATTRIB(MainWindow, demostartconfirmDialog, entity, NULL)
+       ATTRIB(MainWindow, demotimeconfirmDialog, entity, NULL)
 +      ATTRIB(MainWindow, resetDialog, entity, NULL)
  ENDCLASS(MainWindow)
  #endif
  
@@@ -118,10 -116,14 +117,14 @@@ void MainWindow_configureMainWindow(ent
        i = spawnXonoticHUDInfoMessagesDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
+       
        i = spawnXonoticHUDPhysicsDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
+       
+       me.screenshotViewerDialog = i = spawnXonoticScreenshotViewerDialog();
+       i.configureDialog(i);
+       me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
  
        i = spawnXonoticHUDCenterprintDialog();
        i.configureDialog(i);
        me.cvarsDialog = i = spawnXonoticCvarsDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
 +      
 +      me.resetDialog = i = spawnXonoticResetDialog();
 +      i.configureDialog(i);
 +      me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
  
        me.languageWarningDialog = i = spawnXonoticLanguageWarningDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
  
+       me.hudconfirmDialog = i = spawnXonoticHUDConfirmDialog();
+       i.configureDialog(i);
+       me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
  
        // dialog used by singleplayer
        me.winnerDialog = i = spawnXonoticWinnerDialog();
        me.serverInfoDialog = i = spawnXonoticServerInfoDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
-       // dialogs used by multiplayer/create
-       me.mapInfoDialog = i = spawnXonoticMapInfoDialog();
-       i.configureDialog(i);
-       me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
-       me.advancedDialog = i = spawnXonoticAdvancedDialog();
-       i.configureDialog(i);
-       me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
-       me.mutatorsDialog = i = spawnXonoticMutatorsDialog();
-       i.configureDialog(i);
-       me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
-       // dialogs used by multiplayer/player setup
-       me.crosshairDialog = i = spawnXonoticCrosshairDialog();
-       i.configureDialog(i);
-       me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
-       me.hudDialog = i = spawnXonoticHUDDialog();
+       
+       me.demostartconfirmDialog = i = spawnXonoticDemoStartConfirmDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
  
-       me.hudconfirmDialog = i = spawnXonoticHUDConfirmDialog();
+       me.demotimeconfirmDialog = i = spawnXonoticDemoTimeConfirmDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
  
-       me.modelDialog = i = spawnXonoticModelDialog();
-       i.configureDialog(i);
-       me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
  
-       me.viewDialog = i = spawnXonoticViewDialog();
+       // dialogs used by multiplayer/create
+       me.mapInfoDialog = i = spawnXonoticMapInfoDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
  
-       me.weaponsDialog = i = spawnXonoticWeaponsDialog();
+       me.mutatorsDialog = i = spawnXonoticMutatorsDialog();
        i.configureDialog(i);
        me.addItemCentered(me, i, i.intendedWidth * eX + i.intendedHeight * eY, SKINALPHAS_MAINMENU_z);
  
        // mutator dialogs
        i = spawnXonoticSandboxToolsDialog();
        i.configureDialog(i);