From 7948212234b8ed58128a6faab374e3bb88d6f510 Mon Sep 17 00:00:00 2001 From: ac-stef Date: Mon, 5 Jun 2017 17:53:21 +0200 Subject: [PATCH] add radio buttons and simplify sliders - omit step size for sliders with value descriptions - optionally auto-determine max value by list length menuitemslider text min max value display action wrap menuitemradio text min max value display action text: menu item text min: min value max: max value (or optionally -1 and set by display string length) value: initial value display: list of value descriptions or value step size action: executed on value changes (new value in arg1) wrap: if 1, wrap slider around (radio buttons always wrap) DOCREF menuitemslider menuitemradio --- config/menus_bot.cfg | 6 +- config/menus_edit.cfg | 66 ++++++++--------- config/menus_multiplayer.cfg | 16 ++--- config/menus_settings.cfg | 120 +++++++++++++++---------------- config/opt/autosave.cfg | 2 +- config/opt/convmap.cfg | 4 +- config/opt/survival.cfg | 16 ++--- packages/misc/igraph/8.png | Bin 0 -> 384 bytes packages/misc/igraph/9.png | Bin 0 -> 409 bytes packages/misc/igraph/igraphs.txt | 4 +- source/src/menus.cpp | 73 +++++++++++++------ 11 files changed, 170 insertions(+), 137 deletions(-) create mode 100644 packages/misc/igraph/8.png create mode 100644 packages/misc/igraph/9.png diff --git a/config/menus_bot.cfg b/config/menus_bot.cfg index 177714e6..a009c3cf 100644 --- a/config/menus_bot.cfg +++ b/config/menus_bot.cfg @@ -130,7 +130,7 @@ newmenu [team enemies] genenemyitems [4 8 12 16 24 32] 1 newmenu [Bot settings] -menuitemslider "Bot match length in minutes: " 1 60 "$menuBotGameLength" 1 [] [ menuBotGameLength = $arg1 ] +menuitemslider "Bot match length in minutes: " 1 60 "$menuBotGameLength" 1 [ menuBotGameLength = $arg1 ] menuitemcheckbox "Idle bots?" "(idlebots 2)" [ idlebots $arg1 ] menuitemcheckbox "Bots attack?" "(botsshoot 2)" [ botsshoot $arg1 ] @@ -169,8 +169,8 @@ menuitem "Set waypoint as jumpable" setjumpwp menuitem "Unset waypoint as jumpable" unsetjumpwp menuitem "Set waypoint direction (yaw)" setwpyaw menuitem "" -1 -menuitemslider "Waypoint visibility: " 0 1 [ ] 1 ["Hide waypoints" "Show waypoints"] [ wpvisible $arg1 ] -menuitemslider "Select/place waypoints by: " 0 1 "($xhairwpsel)" 1 ["Your current location" "Clicking a point on the grid"] [ xhairwpsel $arg1 ] +menuitemslider "Waypoint visibility: " 0 1 [ ] ["Hide waypoints" "Show waypoints"] [ wpvisible $arg1 ] +menuitemslider "Select/place waypoints by: " 0 1 "($xhairwpsel)" ["Your current location" "Clicking a point on the grid"] [ xhairwpsel $arg1 ] newmenu [Delete all waypoints] menuinit [ delallwps = 0 ] // Ensures this menu works correctly. diff --git a/config/menus_edit.cfg b/config/menus_edit.cfg index a8bb0fbf..d8b42c0c 100644 --- a/config/menus_edit.cfg +++ b/config/menus_edit.cfg @@ -197,8 +197,8 @@ menuitemcheckbox "Enable fullbright: " "$fullbright" [ fullbright $arg1 ] newmenu [White light] __wlight = 1; __wlight1 = 1 -menuitemslider "Light radius: " 1 32 "$__wlight" 1 [] [ __wlight = $arg1 ] 1 -menuitemslider "Brightness: " 1 255 "$__wlight1" 5 [] [ __wlight1 = $arg1 ] 1 +menuitemslider "Light radius: " 1 32 "$__wlight" 1 [ __wlight = $arg1 ] 1 +menuitemslider "Brightness: " 1 255 "$__wlight1" 5 [ __wlight1 = $arg1 ] 1 menuitem "" -1 menuitem "\f2\t [ OK ]\t\t" [ newent light $__wlight $__wlight1 ] @@ -206,11 +206,11 @@ menuitem "\f2\t [ OK ]\t\t" [ newent light $__wlight $__wlight1 ] newmenu [Coloured light] __clight = 1; __clight1 = 1; __clight2 = 1; __clight3 = 1 -menuitemslider "Light radius: " 1 32 "$__clight" 1 [] [ __clight = $arg1 ] 1 +menuitemslider "Light radius: " 1 32 "$__clight" 1 [ __clight = $arg1 ] 1 menuitem "" -1 -menuitemslider "Red light: " 1 255 "$__clight1" 5 [] [ __clight1 = $arg1 ] 1 -menuitemslider "Green light: " 1 255 "$__clight2" 5 [] [ __clight2 = $arg1 ] 1 -menuitemslider "Blue light: " 1 255 "$__clight3" 5 [] [ __clight3 = $arg1 ] 1 +menuitemslider "Red light: " 1 255 "$__clight1" 5 [ __clight1 = $arg1 ] 1 +menuitemslider "Green light: " 1 255 "$__clight2" 5 [ __clight2 = $arg1 ] 1 +menuitemslider "Blue light: " 1 255 "$__clight3" 5 [ __clight3 = $arg1 ] 1 menuitem "" -1 menuitem "\f2\t\t [ OK ]" [ newent light $__clight $__clight1 $__clight2 $__clight3 ] @@ -240,12 +240,12 @@ menuinit [ resetcurmenu menusynctabstops 1 if (! $editing) [ menuheader "" "\f3not in edit mode" ] - menuitemslider "Elevation from ground: " 0 50 "$_clip01" 1 [] [ _clip01 = $arg1 ] - menuitemslider "Length (X): \t" 0 50 "$_clip02" 1 [] [ _clip02 = $arg1 ] - menuitemslider "Width (Y):\t" 0 50 "$_clip03" 1 [] [ _clip03 = $arg1 ] - menuitemslider "Height (Z):\t" 0 50 "$_clip04" 1 [] [ _clip04 = $arg1 ] - menuitemslider "Slope:\t" -4 4 "$_clip06" 1 [] [ _clip06 = $arg1 ] - menuitemslider "Shape:\t" 0 3 "$_clip07" 1 "regular sloped-x sloped-y rotated" [ _clip07 = $arg1 ] 1 + menuitemslider "Elevation from ground: " 0 50 "$_clip01" 1 [ _clip01 = $arg1 ] + menuitemslider "Length (X): \t" 0 50 "$_clip02" 1 [ _clip02 = $arg1 ] + menuitemslider "Width (Y):\t" 0 50 "$_clip03" 1 [ _clip03 = $arg1 ] + menuitemslider "Height (Z):\t" 0 50 "$_clip04" 1 [ _clip04 = $arg1 ] + menuitemslider "Slope:\t" -4 4 "$_clip06" 1 [ _clip06 = $arg1 ] + menuitemslider "Shape:\t" 0 3 "$_clip07" "regular sloped-x sloped-y rotated" [ _clip07 = $arg1 ] 1 menuitem "" -1 menuitem "\f2\t [ Place clip entity ]" [ newent clip $_clip01 $_clip02 $_clip03 $_clip04 _clip05 $_clip06 $_clip07 ] menuitem "\f2\t [ Place player clip entity]" [ newent plclip $_clip01 $_clip02 $_clip03 $_clip04 _clip05 $_clip06 $_clip07 ] @@ -571,12 +571,12 @@ looplist [__slopeaxis 0 __slopeinc 4 __stairaxis 0 __stairwidth 1 __undoarch "" tempalias __setundoarch [ __undoarch = (concat select (at (selx) 0) (at (sely) 0) (at (selxs) 0) (at (selys) 0) "; if (= (undolevel)" (+ (undolevel) 2) ") [ undolevel" (undolevel) "]") ] newmenu Arches menuinit [ chmenutexture (curmenu) map_editor/axes.png " " ] -menuitemslider "Arch sideways curve delta: " 0 5 "$__archside" 1 [] [ __archside = $arg1 ] +menuitemslider "Arch sideways curve delta: " 0 5 "$__archside" 1 [ __archside = $arg1 ] menuitem "\t[ Place arch ]" [ __setundoarch ; heightfield 2; arch $__archside ] menuitem "Edit arches\i\3" [ showmenu "Edit arches" ] menuitem "" -1 -menuitemslider "Slope axis: " 0 1 "$__slopeaxis" 1 ["West to East (X)" "North to South (Y)"] [ __slopeaxis = $arg1 ] -menuitemslider "Slope increment: " 0 5 "$__slopeinc" 1 ["downwards 3" "downwards 2" "downwards 1" "upwards 1" "upwards 2" "upwards 3"] [ __slopeinc = $arg1 ] +menuitemslider "Slope axis: " 0 1 "$__slopeaxis" ["West to East (X)" "North to South (Y)"] [ __slopeaxis = $arg1 ] +menuitemslider "Slope increment: " 0 5 "$__slopeinc" ["downwards 3" "downwards 2" "downwards 1" "upwards 1" "upwards 2" "upwards 3"] [ __slopeinc = $arg1 ] menuitem "\t[ Place slope ]" [ __setundoarch ; heightfield 0; push i (at "3 2 1 -1 -2 -3" $__slopeinc) ; slope (if $__slopeaxis 0 $i) (if $__slopeaxis $i 0) ; pop i ; 0] menuitem "" -1 menuitem "Clear heightfielding" [ solid 0; slope 0 0 ] @@ -584,8 +584,8 @@ menuitem "Undo last placed arch or slope" [ __undoarch ; -1 ] menuitemcheckbox "Automatically enlarge selections after placing arches and slopes" "$enlargearchslopeselections" [ enlargearchslopeselections $arg1 ] menuitem "Enlarge selections now" enlargevdeltaselections menuitem "" -1 -menuitemslider "Stairs axis: " 0 1 "$__stairaxis" 1 ["West to East (X)" "North to South (Y)"] [ __stairaxis = $arg1 ] -menuitemslider "Step width: " 0 5 "$__stairwidth" 1 ["downwards 3" "downwards 2" "downwards 1" "upwards 1" "upwards 2" "upwards 3"] [ __stairwidth = $arg1 ] +menuitemslider "Stairs axis: " 0 1 "$__stairaxis" ["West to East (X)" "North to South (Y)"] [ __stairaxis = $arg1 ] +menuitemslider "Step width: " 0 5 "$__stairwidth" ["downwards 3" "downwards 2" "downwards 1" "upwards 1" "upwards 2" "upwards 3"] [ __stairwidth = $arg1 ] menuitem "\t[ Place stairs ]" [ push i (at "-3 -2 -1 1 2 3" $__stairwidth) ; stairs (if $__stairaxis 0 $i) (if $__stairaxis $i 0) ; pop i ; 0] //// Main > Editing > Arches > Edit arches //// @@ -611,7 +611,7 @@ menuinit [ push ii "" loop i (div $__pickarch 2) [ ii = (+ $i 1) - menuitemslider (concat vertex $ii "\t") 0 31 (archvertex $__pickarch $ii) 1 [] (concat archvertex $__pickarch $ii "$arg1 ; archvertex" $__pickarch (- $__pickarch $ii) "$arg1") + menuitemslider (concat vertex $ii "\t") 0 31 (archvertex $__pickarch $ii) 1 (concat archvertex $__pickarch $ii "$arg1 ; archvertex" $__pickarch (- $__pickarch $ii) "$arg1") ] pop ii menuitem "" -1 @@ -637,7 +637,7 @@ menuinit [ resetcurmenu menuheader "" (concat "edit arch width" $__pickarch "(non-symmetrical)") loop i $__pickarch [ - if $i [ menuitemslider (concat vertex $i "\t") 0 31 (archvertex $__pickarch $i) 1 [] (concat archvertex $__pickarch $i "$arg1") ] + if $i [ menuitemslider (concat vertex $i "\t") 0 31 (archvertex $__pickarch $i) 1 (concat archvertex $__pickarch $i "$arg1") ] ] ] @@ -669,7 +669,7 @@ menuitem "Print entity stats" entstats menuitem "Copy the current closest entity" copyent menuitem "Paste a previously copied entity" pasteent menuitem "Cycle through multiple closest entities" nextclosestent -menuitemslider "Select only entities of this type: " 0 (listlen (listoptions ents)) "(closestenttype -)" 1 (concat all (listoptions ents)) [ if $arg1 [ closestenttype $arg1 ] [ closestenttype ] ] 1 +menuitemslider "Select only entities of this type: " 0 -1 "(closestenttype -)" (concat all (listoptions ents)) [ if $arg1 [ closestenttype $arg1 ] [ closestenttype ] ] 1 menuitem "Hide entity sparklies\i\3" [ showmenu [Hide entity sparklies] ] menuitem "Multiple map buffers (xmaps)\i\3" [ showmenu xmaps ] @@ -807,14 +807,14 @@ menuinit [ newmenu [Water colour] looplisti [red green blue alpha] n [ - menuitemslider (concatword "Water colour (" $n "): ") 0 255 (concat "(at (getwatercolour)" $i ")") 5 [] (concat setwatercolour $i "$arg1") 1 + menuitemslider (concatword "Water colour (" $n "): ") 0 255 (concat "(at (getwatercolour)" $i ")") 5 (concat setwatercolour $i "$arg1") 1 ] //// Main > Editing > Map settings > Fog colour //// newmenu [Fog colour] looplist [red 0xff0000 0x10000 green 0xff00 0x100 blue 0xff 1] [n m f] [ - menuitemslider (concatword "Fog colour (" $n "): ") 0 255 (concat "(div (&b $fogcolour " $m ")" $f ")") 5 [] (concat "__enableautomapconfig ; fogcolour (|b (&b $fogcolour" (^b 0xffffff $m) ") (* $arg1" $f "))") 1 + menuitemslider (concatword "Fog colour (" $n "): ") 0 255 (concat "(div (&b $fogcolour " $m ")" $f ")") 5 (concat "__enableautomapconfig ; fogcolour (|b (&b $fogcolour" (^b 0xffffff $m) ") (* $arg1" $f "))") 1 ] //// Main > Editing > Map settings > Fog colour > Vantage point //// @@ -1030,9 +1030,9 @@ menuinit [ ] menuitem "" -1 menuitem "Merge" -1 - menuitemslider " slot #" 0 $last 0 1 $slots (concat "__tex_togo = (at" (escape $slots) "$arg1)") + menuitemslider " slot #" 0 $last 0 $slots (concat "__tex_togo = (at" (escape $slots) "$arg1)") menuitem "into" -1 - menuitemslider " slot #" 0 $last $last 1 $slots (concat "__tex_joined = (at" (escape $slots) "$arg1)") + menuitemslider " slot #" 0 $last $last $slots (concat "__tex_joined = (at" (escape $slots) "$arg1)") menuitem " \f0[OK]" [if (!= $__tex_joined $__tex_togo) [deletetextureslot $__tex_togo purge $__tex_joined]] pop info slots usemap last ][ @@ -1087,9 +1087,9 @@ menuinit [ ] menuitem "" -1 menuitem "\f2Create map entity:" -1 - menuitemslider [Sound radius: ] 1 25 "$__snd_rad" 1 [] [ __snd_rad = $arg1 ] - menuitemslider [Sound size: ] 0 25 "$__snd_size" 1 [] [ __snd_size = $arg1 ] - menuitemslider [Sound volume: ] 1 255 "$__snd_vol" 5 [] [ __snd_vol = $arg1 ] + menuitemslider [Sound radius: ] 1 25 "$__snd_rad" 1 [ __snd_rad = $arg1 ] + menuitemslider [Sound size: ] 0 25 "$__snd_size" 1 [ __snd_size = $arg1 ] + menuitemslider [Sound volume: ] 1 255 "$__snd_vol" 5 [ __snd_vol = $arg1 ] menuitem "\f0 Place new entity now" (concat newent sound $__sndslot $__snd_rad $__snd_size $__snd_vol) ] [ menuitem "\f3Unassigned slot" -1 @@ -1116,7 +1116,7 @@ looplist [__mmsort __mmmerge __texsort __texmerge __sndsort __sndmerge] i [tempa newmenu [Sort mapmodel slots] menuitemcheckbox "Sort slots alphabetically" "$__mmsort" [ __mmsort = $arg1 ] -menuitemslider "Merge " 0 2 "$__mmmerge" 1 ["no slots" "unused identical slots" "all identical slots"] [ __mmmerge = $arg1 ] 1 +menuitemslider "Merge " 0 2 "$__mmmerge" ["no slots" "unused identical slots" "all identical slots"] [ __mmmerge = $arg1 ] 1 menuitem "" -1 menuitem "\t\t\f0[Start]" [sortmapmodelslots (at [nosort ""] $__mmsort) (at [nomerge "" mergeused] $__mmmerge)] @@ -1124,7 +1124,7 @@ menuitem "\t\t\f0[Start]" [sortmapmodelslots (at [nosort ""] $__mmsort) (at [nom newmenu [Sort texture slots] menuitemcheckbox "Sort slots alphabetically" "$__texsort" [ __texsort = $arg1 ] -menuitemslider "Merge " 0 2 "$__texmerge" 1 ["no slots" "unused identical slots" "all identical slots"] [ __texmerge = $arg1 ] 1 +menuitemslider "Merge " 0 2 "$__texmerge" ["no slots" "unused identical slots" "all identical slots"] [ __texmerge = $arg1 ] menuitem "" -1 menuitem "\t\t\f0[Start]" [sorttextureslots (at [nosort ""] $__texsort) (at [nomerge "" mergeused] $__texmerge)] @@ -1132,7 +1132,7 @@ menuitem "\t\t\f0[Start]" [sorttextureslots (at [nosort ""] $__texsort) (at [nom newmenu [Sort mapsound slots] menuitemcheckbox "Sort slots alphabetically" "$__sndsort" [ __sndsort = $arg1 ] -menuitemslider "Merge " 0 2 "$__sndmerge" 1 ["no slots" "unused identical slots" "all identical slots"] [ __sndmerge = $arg1 ] 1 +menuitemslider "Merge " 0 2 "$__sndmerge" ["no slots" "unused identical slots" "all identical slots"] [ __sndmerge = $arg1 ] 1 menuitem "" -1 menuitem "\t\t\f0[Start]" [sortmapsoundslots (at [nosort ""] $__sndsort) (at [nomerge "" mergeused] $__sndmerge)] @@ -1259,13 +1259,13 @@ menuinit [ //// Main > Editing > Editing settings //// newmenu [Editing settings] -menuitemslider "Grid/Selection style: " 0 1 "$oldselstyle" 1 [triangles "squares (default)"] [ oldselstyle $arg1 ] 1 +menuitemslider "Grid/Selection style: " 0 1 "$oldselstyle" [triangles "squares (default)"] [ oldselstyle $arg1 ] 1 menuitemcheckbox "Show mapmodel clippings: " "$showmodelclipping" [ showmodelclipping $arg1 ] menuitemcheckbox "Show ladder entities: " "$showladderentities" [ showladderentities $arg1 ] menuitemcheckbox "Show all playerstarts (spawn points): " "$showplayerstarts" [ showplayerstarts $arg1 ] -menuitemslider "Show closest ent slot info: " 0 2 "$hideeditslotinfo" 1 [ always "if unassigned" never ][ hideeditslotinfo $arg1 ] 1 +menuitemslider "Show closest ent slot info: " 0 2 "$hideeditslotinfo" [ always "if unassigned" never ][ hideeditslotinfo $arg1 ] 1 menuitemcheckbox "Show edit info panel: " "(! $hideeditinfopanel)" [ hideeditinfopanel (! $arg1) ] -menuitemslider "Fly speeds multiplier: " 1 5 "$flyspeed" 1 [] [ flyspeed $arg1 ] +menuitemslider "Fly speeds multiplier: " 1 5 "$flyspeed" 1 [ flyspeed $arg1 ] menuitemcheckbox "Write xmaps to disk on quit: " "$persistentxmaps" [ persistentxmaps $arg1 ] // opt/autosave.cfg may add some entries diff --git a/config/menus_multiplayer.cfg b/config/menus_multiplayer.cfg index 5851cc0f..d6a78ffb 100644 --- a/config/menus_multiplayer.cfg +++ b/config/menus_multiplayer.cfg @@ -196,9 +196,9 @@ menuitemcheckbox "F8: Show minutes remaining:" "$showminremain" [ showm menuitemcheckbox "Sort official maps ontop:" "$serversortpreferofficial" [ serversortpreferofficial $arg1 ] menuitemcheckbox "Use gamemode acronyms:" "$modeacronyms" [ modeacronyms $arg1 ] menuitemcheckbox "Show number of all players on the servers:" "$showallplayersnumber" [ showallplayersnumber $arg1 ] -menuitemslider "Favourites tag column:\t" 0 2 "$serverbrowserhidefavtag" 1 ["Show always" "Show when used" "Hide always"] [ serverbrowserhidefavtag $arg1 ] 1 -menuitemslider "Server IP & port:\t\t" 0 2 "$serverbrowserhideip" 1 [Show "Show in grey" Hide] [ serverbrowserhideip $arg1 ] 1 -menuitemslider "Sort servers by:\t\t" 0 7 "$serversort" 1 [Ping "Number of players" "Max players" "Minutes remaining" "Map name" Gamemode "IP address" "Server description"] [ serversort $arg1 ] 1 +menuitemslider "Favourites tag column:\t" 0 2 "$serverbrowserhidefavtag" ["Show always" "Show when used" "Hide always"] [ serverbrowserhidefavtag $arg1 ] 1 +menuitemslider "Server IP & port:\t\t" 0 2 "$serverbrowserhideip" [Show "Show in grey" Hide] [ serverbrowserhideip $arg1 ] 1 +menuitemslider "Sort servers by:\t\t" 0 7 "$serversort" [Ping "Number of players" "Max players" "Minutes remaining" "Map name" Gamemode "IP address" "Server description"] [ serversort $arg1 ] 1 menuinitselection 1 tempalias addallfavcatmenus [ @@ -224,16 +224,16 @@ const addfavcatmenu [ menuitemtextinput "Tag: " (concatword "result $" sbfavourite_ $arg1 _tag) (concatword sbfavourite_ $arg1 _tag " = $arg1") [] 15 menuitemtextinput "Description: " (concatword "result $" sbfavourite_ $arg1 _desc) (concatword sbfavourite_ $arg1 _desc " = $arg1") [] 45 menuitem "" -1 - menuitemslider "Background red:\t" 0 100 (concatword "$" sbfavourite_ $arg1 _red) 10 [] (concatword sbfavourite_ $arg1 _red " = $arg1") 1 - menuitemslider "Background green:\t" 0 100 (concatword "$" sbfavourite_ $arg1 _green) 10 [] (concatword sbfavourite_ $arg1 _green " = $arg1") 1 - menuitemslider "Background blue:\t" 0 100 (concatword "$" sbfavourite_ $arg1 _blue) 10 [] (concatword sbfavourite_ $arg1 _blue " = $arg1") 1 - menuitemslider "Background alpha:\t" 0 100 (concatword "$" sbfavourite_ $arg1 _alpha) 10 [] (concatword sbfavourite_ $arg1 _alpha " = $arg1") 1 + menuitemslider "Background red:\t" 0 100 (concatword "$" sbfavourite_ $arg1 _red) 10 (concatword sbfavourite_ $arg1 _red " = $arg1") 1 + menuitemslider "Background green:\t" 0 100 (concatword "$" sbfavourite_ $arg1 _green) 10 (concatword sbfavourite_ $arg1 _green " = $arg1") 1 + menuitemslider "Background blue:\t" 0 100 (concatword "$" sbfavourite_ $arg1 _blue) 10 (concatword sbfavourite_ $arg1 _blue " = $arg1") 1 + menuitemslider "Background alpha:\t" 0 100 (concatword "$" sbfavourite_ $arg1 _alpha) 10 (concatword sbfavourite_ $arg1 _alpha " = $arg1") 1 menuitem "" -1 menuitemtextinput "Keyword list: " (concatword "result $" sbfavourite_ $arg1 _keys) (concatword sbfavourite_ $arg1 _keys " = $arg1") [] 255 menuitem "" -1 menuitemtextinput "Weight: " (concatword "result $" sbfavourite_ $arg1 _weight) (concatword sbfavourite_ $arg1 _weight " = $arg1") [] 10 menuitem "" -1 - menuitemslider "" 0 1 (concatword "result $" sbfavourite_ $arg1 _ignore) 1 ["Enable this category" "Ignore this category"] (concatword sbfavourite_ $arg1 _ignore " = $arg1") 1 + menuitemslider "" 0 1 (concatword "result $" sbfavourite_ $arg1 _ignore) ["Enable this category" "Ignore this category"] (concatword sbfavourite_ $arg1 _ignore " = $arg1") 1 menuitem "" -1 menuitem "Show servers of this category\i\3" (concat showonlyfavourites $i ";showmenu server") [ showonlyfavourites 0 ] ] diff --git a/config/menus_settings.cfg b/config/menus_settings.cfg index 83f6cbb0..57ce1c91 100644 --- a/config/menus_settings.cfg +++ b/config/menus_settings.cfg @@ -26,13 +26,13 @@ if (&& $desktopw $desktoph) [ ] menuitem "Choose resolution from list\i\3" [ showmenu [Display resolutions] ] menuitem "" -1 -menuitemslider "Graphics detail: " 1 6 "$gfxqualityalias" 1 [Horrible Low Medium Good High "INSANE! (May perform slowly on older gfx)"] [ new_gfx_quality $arg1 ] +menuitemslider "Graphics detail: " 1 6 "$gfxqualityalias" [Horrible Low Medium Good High "INSANE! (May perform slowly on older gfx)"] [ new_gfx_quality $arg1 ] menuitem "" -1 -menuitemslider "Field of view: " 75 120 "$fov" 2 [] [ fov $arg1 ] 1 +menuitemslider "Field of view: " 75 120 "$fov" 2 [ fov $arg1 ] 1 menuitemcheckbox "Fullscreen: " "$fullscreen" [ fullscreen $arg1 ] -menuitemslider "Vsync: " -1 1 "$vsync" 1 [Default Disabled Enabled] [ vsync $arg1 ] +menuitemradio "Vsync: " -1 1 "$vsync" [Default Disabled Enabled] [ vsync $arg1 ] menuitem "" -1 -menuitemslider "Set temporary gamma for this map: " 30 300 "$gamma" 5 [] [ gamma $arg1 ] +menuitemslider "Set temporary gamma for this map: " 30 300 "$gamma" 5 [ gamma $arg1 ] menuitemtextinput "Set default gamma for this map: " [$gamma] [setgamma $arg1] menuitemtextinput "Set default gamma for maps without own default: " [$defaultgamma] [ defaultgamma = $arg1 ] menuitem "" -1 @@ -90,14 +90,14 @@ const __fsaa_valuemap [-1 0 2 4 8 16] const __aniso_valuemap [0 2 4 8 16] const __minlod_valuemap [60 100 200 250] const __watersubdiv_valuemap [16 8 4 2 1] -menuitemslider [Scope FOV: ] 5 60 "$scopefov" 5 [] [ scopefov $arg1 ] 1 -menuitemslider [Antialiasing (FSAA): ] 0 5 "(findlist $__fsaa_valuemap $fsaa)" 1 [Default Off 2 4 8 16] [ fsaa (at $__fsaa_valuemap $arg1) ] -menuitemslider [Anisotropic filtering: ] 0 4 "(findlist $__aniso_valuemap $aniso)" 1 [Off 2 4 8 16] [ aniso (at $__aniso_valuemap $arg1) ] -menuitemslider [Minimal level of detail: ] 0 3 "(findlist $__minlod_valuemap $minlod)" 1 [Low Decent Good Best] [ minlod (at $__minlod_valuemap $arg1) ] -menuitemslider [Light error: ] 1 100 "$lighterror" 5 [] [ lighterror $arg1 ] -menuitemslider [Water subdivision: ] 0 4 "(findlist $__watersubdiv_valuemap $watersubdiv)" 1 ["Lowest quality" "Low quality" "Medium quality" "High quality" "Highest quality"] [ watersubdiv (at $__watersubdiv_valuemap $arg1) ] -menuitemslider [Dynamic shadows: ] 0 2 __getshadowq 1 [Off Blob Stencil] [ (concatword __setshadowq_ $arg1) ] 1 -menuitemslider [Tex-reduce: ] -1 3 "$texreduce" 1 [] [ texreduce $arg1 ] +menuitemslider [Scope FOV: ] 5 60 "$scopefov" 5 [ scopefov $arg1 ] 1 +menuitemslider [Antialiasing (FSAA): ] 0 5 "(findlist $__fsaa_valuemap $fsaa)" [Default Off 2 4 8 16] [ fsaa (at $__fsaa_valuemap $arg1) ] +menuitemslider [Anisotropic filtering: ] 0 4 "(findlist $__aniso_valuemap $aniso)" [Off 2 4 8 16] [ aniso (at $__aniso_valuemap $arg1) ] +menuitemslider [Minimal level of detail: ] 0 3 "(findlist $__minlod_valuemap $minlod)" [Low Decent Good Best] [ minlod (at $__minlod_valuemap $arg1) ] +menuitemslider [Light error: ] 1 100 "$lighterror" 5 [ lighterror $arg1 ] +menuitemslider [Water subdivision: ] 0 4 "(findlist $__watersubdiv_valuemap $watersubdiv)" ["Lowest quality" "Low quality" "Medium quality" "High quality" "Highest quality"] [ watersubdiv (at $__watersubdiv_valuemap $arg1) ] +menuitemslider [Dynamic shadows: ] 0 2 __getshadowq [Off Blob Stencil] [ (concatword __setshadowq_ $arg1) ] 1 +menuitemslider [Tex-reduce: ] -1 3 "$texreduce" 1 [ texreduce $arg1 ] menuitemcheckbox [Water reflection: ] "$waterreflect" [ waterreflect $arg1 ] menuitemcheckbox [Dynamic lights: ] "$dynlight" [ dynlight $arg1 ] menuitemcheckbox [Bulletholes: ] "$bullethole" [ bullethole $arg1 ] @@ -135,31 +135,31 @@ menuitemcheckbox [ Spectator info ] "(= $hidespecthud 0)" [ menuitemcheckbox [ Quick messages ] "(= $hidehudmsgs 0)" [ hidehudmsgs (= $arg1 0) ] menuitemcheckbox [ Damage direction indicator ] "(= $hidedamageindicator 0)" [ hidedamageindicator (= $arg1 0) ] menuitemcheckbox [ Damage screen flash ] "$damagescreen" [ damagescreen $arg1 ] -menuitemslider [ Damage maxroll: ] 0 (getvarrange max maxrolleffect) "$maxrolleffect" 1 [] [ maxrolleffect $arg1 ] +menuitemslider [ Damage maxroll: ] 0 (getvarrange max maxrolleffect) "$maxrolleffect" 1 [ maxrolleffect $arg1 ] menuitemcheckbox [ Team score counters ] "(= $hideteamscorehud 0)" [ hideteamscorehud (= $arg1 0) ] menuitemcheckbox [ KTF flag direction indicator ] "(! $hidektfindicator)" [ hidektfindicator (! $arg1) ] menuitemcheckbox [ Radar ] "(= $hideradar 0)" [ hideradar (= $arg1 0) ] -menuitemslider [ Radar zoom: ] 5 500 [ $radarheight ] 5 [][ radarheight $arg1 ] 1 -menuitemslider [ Votes: ] 0 2 "$hidevote" 1 ["Always show" "Show until you vote" "Never show"] [ hidevote $arg1 ] 1 -menuitemslider [ Graphics statistics: ] 0 2 "$showstats" 1 [None "FPS Only" All] [ showstats $arg1 ] 1 -menuitemslider [ Game time: ] 0 2 "$gametimedisplay" 1 [None "Count backward" "Count forward"] [ gametimedisplay $arg1 ] 1 -menuitemslider [ Wall clock: ] 0 6 [findlist $wallclockformatlist $wallclockformat] 1 [None "HH:MM (local, 24h)" "HH:MM:SS (local, 24h)" "HH:MM (local, 12h)" "HH:MM:SS (local, 12h)" "HH:MM (UTC/GMT)" "HH:MM:SS (UTC/GMT)"] [ alias wallclockformat (at $wallclockformatlist $arg1)] 1 -menuitemslider [ Extra messages: ] 0 3 "$hudextras" 1 ["No extra messages" "Show extra messages in console" "Pop up extra messages!" "SPAM EXTRA MESSAGES!"] [ hudextras $arg1 ] -menuitemslider [ Hand alignment: ] 0 1 "$righthanded" 1 [Left-handed Right-handed] [ righthanded $arg1 ] 1 -menuitemslider [ Max-roll: ] 0 (getvarrange max maxroll) "$maxroll" 1 [] [ maxroll $arg1 ] -menuitemslider [ Spectator max-roll: ] 0 (getvarrange max maxrollremote) "$maxrollremote" 2 [] [ maxrollremote $arg1 ] +menuitemslider [ Radar zoom: ] 5 500 [ $radarheight ] 5 [ radarheight $arg1 ] 1 +menuitemslider [ Votes: ] 0 2 "$hidevote" ["Always show" "Show until you vote" "Never show"] [ hidevote $arg1 ] 1 +menuitemradio [ Graphics statistics: ] 0 2 "$showstats" [None "FPS Only" All] [ showstats $arg1 ] 1 +menuitemslider [ Game time: ] 0 2 "$gametimedisplay" [None "Count backward" "Count forward"] [ gametimedisplay $arg1 ] 1 +menuitemslider [ Wall clock: ] 0 6 [findlist $wallclockformatlist $wallclockformat] [None "HH:MM (local, 24h)" "HH:MM:SS (local, 24h)" "HH:MM (local, 12h)" "HH:MM:SS (local, 12h)" "HH:MM (UTC/GMT)" "HH:MM:SS (UTC/GMT)"] [ alias wallclockformat (at $wallclockformatlist $arg1)] 1 +menuitemslider [ Extra messages: ] 0 3 "$hudextras" ["No extra messages" "Show extra messages in console" "Pop up extra messages!" "SPAM EXTRA MESSAGES!"] [ hudextras $arg1 ] +menuitemradio [ Hand alignment: ] 0 1 "$righthanded" [Left-handed Right-handed] [ righthanded $arg1 ] 1 +menuitemslider [ Max-roll: ] 0 (getvarrange max maxroll) "$maxroll" 1 [ maxroll $arg1 ] +menuitemslider [ Spectator max-roll: ] 0 (getvarrange max maxrollremote) "$maxrollremote" 2 [ maxrollremote $arg1 ] //// Main > Settings > Console //// newmenu Console menuitem "\f4Regular console:" -1 -menuitemslider "Console size (lines): " 0 20 "$consize" 1 [] [ consize $arg1 ] -menuitemslider "Console fade time (seconds until lines disappear): " 5 60 "$confade" 5 [] [ confade $arg1 ] -menuitemslider "Console transparency: " 120 255 "$conalpha" 15 [] [ conalpha $arg1 ] +menuitemslider "Console size (lines): " 0 20 "$consize" 1 [ consize $arg1 ] +menuitemslider "Console fade time (seconds until lines disappear): " 5 60 "$confade" 5 [ confade $arg1 ] +menuitemslider "Console transparency: " 120 255 "$conalpha" 15 [ conalpha $arg1 ] menuitem "\f4Full consoles:" -1 -menuitemslider "Full console size (percent screen height): " 0 100 "$fullconsize" 5 [] [ fullconsize $arg1 ] -menuitemslider "2nd full console size (percent screen height): " 0 100 "$altconsize" 5 [] [ altconsize $arg1 ] +menuitemslider "Full console size (percent screen height): " 0 100 "$fullconsize" 5 [ fullconsize $arg1 ] +menuitemslider "2nd full console size (percent screen height): " 0 100 "$altconsize" 5 [ altconsize $arg1 ] menuitem "\f4Keys:" -1 menuitemkeyinput "Toggle (full-)console key: " key_toggleconsole menuitemkeyinput "Rewind console key: " key_console_rewind @@ -167,8 +167,8 @@ menuitemkeyinput "Forward console key: " key_console_forward menuitemkeyinput "End of console key: " key_console_end menuitemkeyinput "Scroll console key (+ mousewheel): " key_console_scroll menuitem "\f4Inlined console graphics settings:" -1 -menuitemslider (concatword "Igraph size (" (getigraph ")") "): ") 80 300 "$igraphsize" 5 [] [ igraphsize $arg1 ] 1 -menuitemslider "Igraph size for menu icons (\i\1): " 80 160 "$igraphsizehardcoded" 5 [] [ igraphsizehardcoded $arg1 ] 1 +menuitemslider (concatword "Igraph size (" (getigraph ")") "): ") 80 300 "$igraphsize" 5 [ igraphsize $arg1 ] 1 +menuitemslider "Igraph size for menu icons (\i\1): " 80 160 "$igraphsizehardcoded" 5 [ igraphsizehardcoded $arg1 ] 1 menuitemcheckbox "Stop igraph animation: " "! $igraphanimate" [ igraphanimate (! $arg1) ] menuitemcheckbox "Disable igraphs: " "$hideigraphs" [ hideigraphs $arg1 ] @@ -179,12 +179,12 @@ newmenu "\fsGameplay" alias nickhighlight 0 alias __gibsgore 1 menuitemtextinput "Nickname: " "result $curname" [ name $arg1 ] -menuitemslider "Player skins: " 0 2 "$teamdisplaymode" 1 [Normal "Colored vests" "Full color"] [ teamdisplaymode $arg1 ] 1 -menuitemslider "Custom player skins: " 0 2 "$hidecustomskins" 1 ["Always show" "Show in non-team modes" "Never show"] [ hidecustomskins $arg1 ] 1 +menuitemslider "Player skins: " 0 2 "$teamdisplaymode" [Normal "Colored vests" "Full color"] [ teamdisplaymode $arg1 ] 1 +menuitemslider "Custom player skins: " 0 2 "$hidecustomskins" ["Always show" "Show in non-team modes" "Never show"] [ hidecustomskins $arg1 ] 1 menuitem "" -1 menuitemcheckbox "Reduced violence mode: " "$poniesmodeon" [ reducedviolencemode $arg1 ] -menuitemslider "Gib gore: " 0 4 "$__gibsgore" 1 [Off Normal Good Messy Unrealistic] [ gibsgore $arg1 ] -menuitemslider "Name highlight color: " 0 9 "$nickhighlight" 1 [ "\f0green \f5(default)" "\f1blue" "\f2yellow" "\f3red" "\f4gray" "white" "\f6dark brown" "\f7dark red" "\f8purple" "\f9orange" ] [ nickhighlight = $arg1; HIGHLIGHT = (concatword "\f" $nickhighlight) ] +menuitemslider "Gib gore: " 0 4 "$__gibsgore" [Off Normal Good Messy Unrealistic] [ gibsgore $arg1 ] +menuitemslider "Name highlight color: " 0 9 "$nickhighlight" [ "\f0green \f5(default)" "\f1blue" "\f2yellow" "\f3red" "\f4gray" "white" "\f6dark brown" "\f7dark red" "\f8purple" "\f9orange" ] [ nickhighlight = $arg1; HIGHLIGHT = (concatword "\f" $nickhighlight) ] menuitemcheckbox "Show scores on death: " "$showscoresondeath" [ showscoresondeath $arg1 ] menuitem "Change to the enemy team" changeteam menuitem "Change weapon\i\3" [ showmenu Weapons ] @@ -234,16 +234,16 @@ menuitem [Police] [ skin_rvsf 5 ] [ chmenumdl RVSF playermodels/RVSF/06 all 50 4 newmenu [Weapon Settings] looplist [ subgun 3 assault 2 akimbo 2 ] [ g n ] [ alias (concatword __burstshots_ $g) $n ] -menuitemslider [Play hit sounds: ] 0 2 "$hitsound" 1 [Off "When server detects hits" "When client detects hits"] [ hitsound $arg1 ] +menuitemslider [Play hit sounds: ] 0 2 "$hitsound" [Off "When server detects hits" "When client detects hits"] [ hitsound $arg1 ] menuitemcheckbox [Auto weapon reload: ] "$autoreload" [ autoreload $arg1 ] menuitemcheckbox [Auto switch to akimbo upon pickup: ] "$akimboautoswitch" [ akimboautoswitch $arg1 ] -menuitemslider [Akimbo end action: ] 0 3 "$akimboendaction" 1 ["Switch to knife" "Stay with pistol" "Switch to grenades" "Switch to primary"] [ akimboendaction $arg1 ] 1 +menuitemslider [Akimbo end action: ] 0 3 "$akimboendaction" ["Switch to knife" "Stay with pistol" "Switch to grenades" "Switch to primary"] [ akimboendaction $arg1 ] 1 menuitemcheckbox [SMG - Full Auto?] "(= (burstshots SUBGUN -1) 0)" [ if (= $arg1 0) [ burstshots SUBGUN $__burstshots_subgun ] [ burstshots SUBGUN 0 ]; refreshcurmenu ] menuitemcheckbox [AR - Full Auto?] "(= (burstshots ASSAULT -1) 0)" [ if (= $arg1 0) [ burstshots ASSAULT $__burstshots_assault ] [ burstshots ASSAULT 0 ]; refreshcurmenu ] menuitemcheckbox [Akimbo - Full Auto?] "(= (burstshots AKIMBO -1) 0)" [ if (= $arg1 0) [ burstshots AKIMBO $__burstshots_akimbo ] [ burstshots AKIMBO 0 ]; refreshcurmenu ] -menuitemslider [SMG - Shots per burst: ] 0 29 "$__burstshots_subgun" 1 [] [ burstshots SUBGUN $arg1; __burstshots_subgun = $arg1 ; refreshcurmenu ] -menuitemslider [AR - Shots per burst: ] 0 19 "$__burstshots_assault" 1 [] [ burstshots ASSAULT $arg1; __burstshots_assault = $arg1 ; refreshcurmenu ] -menuitemslider [Akimbo - Shots per burst: ] 0 19 "$__burstshots_akimbo" 1 [] [ burstshots AKIMBO $arg1; __burstshots_akimbo = $arg1 ; refreshcurmenu ] +menuitemslider [SMG - Shots per burst: ] 0 29 "$__burstshots_subgun" 1 [ burstshots SUBGUN $arg1; __burstshots_subgun = $arg1 ; refreshcurmenu ] +menuitemslider [AR - Shots per burst: ] 0 19 "$__burstshots_assault" 1 [ burstshots ASSAULT $arg1; __burstshots_assault = $arg1 ; refreshcurmenu ] +menuitemslider [Akimbo - Shots per burst: ] 0 19 "$__burstshots_akimbo" 1 [ burstshots AKIMBO $arg1; __burstshots_akimbo = $arg1 ; refreshcurmenu ] //// Main > Settings > Gameplay > Kill Messages //// @@ -285,7 +285,7 @@ menuitem "\f40 has the highest priority" -1 menuitem "\f4-1 disables the item entirely" -1 menuitem "" -1 looplist $__DEFAULT_SCOREBOARD [ var desc ] [ - menuitemslider (concatword $desc ": ") (getvarrange min $var) 7 (concatword "$" $var) 1 [] (concat $var "$arg1") + menuitemslider (concatword $desc ": ") (getvarrange min $var) 7 (concatword "$" $var) 1 (concat $var "$arg1") ] menuitem "" -1 menuitem "Reset to default scoreboard" [ looplist $__DEFAULT_SCOREBOARD [ var desc ] [ $var (getvarrange default $var) ] ; refreshcurmenudelayed ] @@ -419,11 +419,11 @@ menuitem "Customize crosshairs\i\3" [ showmenu [Customize c newmenu [Customize crosshairs] tempalias __crosshairset teammate -menuitemslider "Crosshair size: " 0 50 "$crosshairsize" 5 [] [ crosshairsize $arg1 ] -menuitem "Change default crosshair\i\3" [ tempalias __crosshairset default ; showmenu Crosshairs ] -menuitem "Change scope crosshair\i\3" [ tempalias __crosshairset scope ; showmenu Crosshairs ] +menuitemslider "Crosshair size: " 0 50 "$crosshairsize" 5 [ crosshairsize $arg1 ] +menuitem "Change default crosshair\i\3" [ tempalias __crosshairset default ; showmenu Crosshairs ] +menuitem "Change scope crosshair\i\3" [ tempalias __crosshairset scope ; showmenu Crosshairs ] menuitem "" -1 -menuitemslider "Choose crosshair: " 0 (- (listlen (listoptions crosshairnames)) 1) [findlist (listoptions crosshairnames) $__crosshairset] 1 (listoptions crosshairnames) [ tempalias __crosshairset (at (listoptions crosshairnames) $arg1) ; refreshcurmenu ] +menuitemslider "Choose crosshair: " 0 -1 [findlist (listoptions crosshairnames) $__crosshairset] (listoptions crosshairnames) [ tempalias __crosshairset (at (listoptions crosshairnames) $arg1) ; refreshcurmenu ] menuitemvar [ concat "Change" $__crosshairset "crosshair\i\3" ] [ showmenu Crosshairs ] menuitem "" -1 menuitemcheckbox "Crosshair effect: change color for low health" [ (at "0 1 1 0" $crosshairfx) ] [ crosshairfx (at (if $arg1 ["2 1 2 1"] ["0 3 0 3"]) $crosshairfx) ] @@ -444,16 +444,16 @@ menuinit [ newmenu "\fsSound" alias __soundquality 3 -menuitemslider "Sound volume: " 0 255 "$soundvol" 16 [] [ soundvol $arg1 ] -menuitemslider "Music volume: " 0 255 "$musicvol" 16 [] [ musicvol $arg1 ] -menuitemslider "Sound detail: " 1 3 "($__soundquality)" 1 [Low Medium High] [ __set_sound_quality $arg1 ] +menuitemslider "Sound volume: " 0 255 "$soundvol" 16 [ soundvol $arg1 ] +menuitemslider "Music volume: " 0 255 "$musicvol" 16 [ musicvol $arg1 ] +menuitemslider "Sound detail: " 1 3 "($__soundquality)" [Low Medium High] [ __set_sound_quality $arg1 ] menuitem "" -1 menuitem "Mute/Un-mute specific sounds\i\3" [ showmenu [Mute specific sounds] ] menuitem "" -1 menuitem "Advanced settings:" -1 -menuitemslider " Sounds at once: " 0 100 "$maxsoundsatonce" 2 [] [ maxsoundsatonce $arg1 ] -menuitemslider " Voice-coms: " 0 2 "$voicecomsounds" 1 [Off On "Team only"] [ voicecomsounds $arg1 ] -menuitemslider " Heartbeat: " 0 99 "$heartbeat" 5 [] [ heartbeat $arg1 ] +menuitemslider " Sounds at once: " 0 100 "$maxsoundsatonce" 2 [ maxsoundsatonce $arg1 ] +menuitemslider " Voice-coms: " 0 2 "$voicecomsounds" [Off On "Team only"] [ voicecomsounds $arg1 ] +menuitemslider " Heartbeat: " 0 99 "$heartbeat" 5 [ heartbeat $arg1 ] menuitemcheckbox " Footsteps: " "$footsteps" [ footsteps $arg1 ] menuitemcheckbox " Disable own footsteps: " "(= $localfootsteps)" [ localfootsteps (! $arg1) ] menuitemcheckbox " Bullet hit: " "$bulletbouncesound" [ bulletbouncesound $arg1 ] @@ -504,18 +504,18 @@ tempalias __getscreenshottype [ ] menuitemcheckbox "Auto map download: " "$autogetmap" [ autogetmap $arg1 ] menuitem "Configure auto media download \i\1" [ showmenu "Autodownload config"] -menuitemcheckbox "Show gamemodes as acronyms: " "$modeacronyms" [ modeacronyms $arg1 ] +menuitemradio "Show gamemode names " 0 1 "$modeacronyms" [ verbal abbreviated ] [ modeacronyms $arg1 ] menuitemcheckbox "Show quit dialog when quitting: " "$askquit" [ askquit = $arg1 ] menuitemcheckbox "Show main menu when starting AC: " "$showmenuonstartup" [ showmenuonstartup = $arg1 ] menuitemcheckbox "Auto-screenshot: " "$autoscreenshot" [ autoscreenshot $arg1 ] menuitemcheckbox "Allow HUD echos: " "$allowhudechos" [ allowhudechos $arg1 ] -menuitemslider "Servers to ping at once: " 0 50 "$maxservpings" 5 [] [ maxservpings $arg1 ] -menuitemslider "Milliseconds between pinging servers: " 1000 60000 "$servpingrate" 1000 [] [ servpingrate $arg1 ] -menuitemslider "Screenshot type: " 0 5 __getscreenshottype 1 $__screenshottypes [ screenshottype (at "1 1 1 1 2 0" $arg1) ; if (< $arg1 4) [ jpegquality (at [50 70 85 100] $arg1) ] ] -menuitemslider "Font type: " 0 2 [findlist $__fontlist (curfont)] 1 [Default Serif Monospace] [ setfont (at $__fontlist $arg1) ] -menuitemslider "Mini-map background style: " 0 2 "$showmapbackdrop" 1 ["Fully Transparent" Black White/Transparent] [ showmapbackdrop $arg1 ] -menuitemslider "Menu map file sort order: " 0 (- (listlen (listoptions menufilesortorders)) 1) "$menufilesort_cgz" 1 (listoptions menufilesortorders) [menufilesort_cgz = $arg1] -menuitemslider "Menu demo file sort order: " 0 (- (listlen (listoptions menufilesortorders)) 1) "$menufilesort_dmo" 1 (listoptions menufilesortorders) [menufilesort_dmo = $arg1] +menuitemslider "Servers to ping at once: " 0 50 "$maxservpings" 5 [ maxservpings $arg1 ] +menuitemslider "Milliseconds between pinging servers: " 1000 60000 "$servpingrate" 1000 [ servpingrate $arg1 ] +menuitemslider "Screenshot type: " 0 5 __getscreenshottype $__screenshottypes [ screenshottype (at "1 1 1 1 2 0" $arg1) ; if (< $arg1 4) [ jpegquality (at [50 70 85 100] $arg1) ] ] +menuitemslider "Font type: " 0 2 [findlist $__fontlist (curfont)] [Default Serif Monospace] [ setfont (at $__fontlist $arg1) ] +menuitemslider "Mini-map background style: " 0 2 "$showmapbackdrop" ["Fully Transparent" Black White/Transparent] [ showmapbackdrop $arg1 ] +menuitemslider "Menu map file sort order: " 0 -1 "$menufilesort_cgz" (listoptions menufilesortorders) [menufilesort_cgz = $arg1] +menuitemslider "Menu demo file sort order: " 0 -1 "$menufilesort_dmo" (listoptions menufilesortorders) [menufilesort_dmo = $arg1] menuitem "Edit hook script \i\1" [ showmenu "Edit cubescript hook" ] //// Main > Settings > Misc > Autodownload config //// @@ -694,9 +694,9 @@ if (&& $desktopw $desktoph) [ menuitemcheckbox "Fullscreen: " "$fullscreen" [ fullscreen $arg1 ] menuitemtextinput "Mouse sensitivity: " "$sensitivity" [ sensitivity $arg1 ] menuitemcheckbox "Reduced violence mode: " "$poniesmodeon" [ reducedviolencemode $arg1 ] -menuitemslider "Graphics detail: " 1 6 "$gfxqualityalias" 1 [Horrible Low Medium Good High "INSANE! (May perform slowly on older gfx)"] [ new_gfx_quality $arg1 ] -menuitemslider "Sound detail: " 1 3 "$__soundquality" 1 [Low Medium High] [ __set_sound_quality $arg1 ] -menuitemslider "Field of view: " 75 120 "$fov" 2 [] [ fov $arg1 ] 1 +menuitemslider "Graphics detail: " 1 6 "$gfxqualityalias" [Horrible Low Medium Good High "INSANE! (May perform slowly on older gfx)"] [ new_gfx_quality $arg1 ] +menuitemslider "Sound detail: " 1 3 "$__soundquality" [Low Medium High] [ __set_sound_quality $arg1 ] +menuitemslider "Field of view: " 75 120 "$fov" 2 [ fov $arg1 ] 1 menuitem "" -1 menuitem "\f0\t\t\t [ OK; View FAQ ]" [ closecurmenu; resetgl; load_faq ; showmenu faq ] menuitem "\f2\t\t\t [ OK ]" [ closecurmenu; resetgl ] diff --git a/config/opt/autosave.cfg b/config/opt/autosave.cfg index 35c4e1a0..abe41a40 100644 --- a/config/opt/autosave.cfg +++ b/config/opt/autosave.cfg @@ -37,5 +37,5 @@ showedBAKinfo = 0 // amend settings menu newmenu [Editing settings] menuitemcheckbox "Enable auto save map: " "$autosavemap" [ autosavemap = $arg1 ] -menuitemslider "Time between auto saves (in minutes): " 2 60 "(div $timeBetAutoSaves 60000)" 1 [] [ timeBetAutoSaves = (* $arg1 60000) ] +menuitemslider "Time between auto saves (in minutes): " 2 60 "(div $timeBetAutoSaves 60000)" 1 [ timeBetAutoSaves = (* $arg1 60000) ] menuitemtextinput "Make a map backup (.BAK) every: " "$numAutoSaveBackups" [ numAutoSaveBackups = $arg1 ] [ if (! $showedBAKinfo) [ echo This setting effects the number of autosavemaps between making a map backup file. "(.BAK)"; showedBAKinfo = 1 ] ] 4 diff --git a/config/opt/convmap.cfg b/config/opt/convmap.cfg index f953a1a7..dfa50514 100644 --- a/config/opt/convmap.cfg +++ b/config/opt/convmap.cfg @@ -117,8 +117,8 @@ if (! (checkalias cmcur)) [ // execute this only once menuitem "[Remove limitation and continue editing the whole batch]" [ cmcur = "" ; refreshcurmenudelayed ] menuitem "" -1 ] - menuitemslider "Conversion stage:\t" 0 (- $NUMSTAGES 1) $cmstage 1 $cmstagenames [ cmstage = $arg1 ] - menuitemslider "On map errors:\t\t" 0 1 $cmdomanual 1 [ "abort map" "edit manually" ][ cmdomanual = $arg1 ] + menuitemslider "Conversion stage:\t" 0 -1 $cmstage $cmstagenames [ cmstage = $arg1 ] + menuitemslider "On map errors:\t\t" 0 1 $cmdomanual [ "abort map" "edit manually" ][ cmdomanual = $arg1 ] menuitem "" -1 menuitem "[Show list of maps]" [showmenu "List maps to convert"] menuitem "Tools menu -->" [showmenu "Convert maps tools"] diff --git a/config/opt/survival.cfg b/config/opt/survival.cfg index b163e486..31041ee9 100644 --- a/config/opt/survival.cfg +++ b/config/opt/survival.cfg @@ -37,20 +37,20 @@ const survDifList ["6 1 60000 90000 20" "8 2 45000 60000 30" "10 3 30000 45000 4 const survSetDif [if (checkrange $arg1 0 3) [ survDifficulty = $arg1; loop sdl 5 [ (at $survSetsList $sdl) = (at (at $survDifList $survDifficulty) $sdl) ] ] [ sleep 1000 [ echo "\f3Error: \f5invalid difficulty, defaulting to" (genSurvDifStr 0) ] 1; survSetDif 0 ]; nonSurvDefaults = 0 ] newmenu [Survival Mode] -menuitemslider "Map: " 0 (- (listlen $__defaultmaps) 1) "$survMap" 1 [ac_aqueous ac_arabian ac_arctic ac_arid ac_avenue ac_cavern ac_complex ac_depot ac_desert ac_desert2 ac_desert3 ac_douze ac_edifice ac_elevation ac_gothic ac_iceroad ac_industrial ac_ingress ac_keller ac_lainio ac_mines ac_outpost ac_power ac_rattrap ac_scaffold ac_shine ac_snow ac_stellar ac_sunset ac_swamp ac_terros ac_toxic ac_urban ac_venison ac_wasteland ac_werk] [ survMap = $arg1 ] -menuitemslider "Difficulty: " 0 3 "$survDifficulty" 1 [easy intermediate hard impossible] [ survSetDif $arg1 ] +menuitemslider "Map: " 0 -1 "$survMap" [ac_aqueous ac_arabian ac_arctic ac_arid ac_avenue ac_cavern ac_complex ac_depot ac_desert ac_desert2 ac_desert3 ac_douze ac_edifice ac_elevation ac_gothic ac_iceroad ac_industrial ac_ingress ac_keller ac_lainio ac_mines ac_outpost ac_power ac_rattrap ac_scaffold ac_shine ac_snow ac_stellar ac_sunset ac_swamp ac_terros ac_toxic ac_urban ac_venison ac_wasteland ac_werk] [ survMap = $arg1 ] +menuitemslider "Difficulty: " 0 3 "$survDifficulty" [easy intermediate hard impossible] [ survSetDif $arg1 ] menuitem [] -1 menuitem "\t\t Customize..." [ showmenu [Survival Mode - Customize] ] menuitem "\t\t\f2 [ Start! ]" [ survival (at $__defaultmaps $survMap) ] newmenu [Survival Mode - Customize] menuitemcheckbox "Enable survival damage effects (uses gamespeed/gamma)" "$survDamageEffects" [ survDamageEffects = $arg1 ] -menuitemslider "# of bots to spawn on start: " 6 20 "$survNumBots" 1 [] [ survNumBots = $arg1; nonSurvDefaults = 1 ] -menuitemslider "# of bots to spawn at checkpoints: " 1 5 "$survBotsToAdd" 1 [] [ survBotsToAdd = $arg1; nonSurvDefaults = 1 ] -menuitemslider "# of milliseconds between checkpoints: " 10000 120000 "$timeBetChkPts" 10000 [] [ timeBetChkPts = $arg1; nonSurvDefaults = 1 ] -menuitemslider "# of milliseconds before teleporting: " 10000 180000 "$timeUntilTele" 10000 [] [ timeUntilTele = $arg1; nonSurvDefaults = 1 ] -menuitemslider "Maximum # of bots in survival mode: " 10 50 "$survMaxBots" 2 [] [ survMaxBots = $arg1; nonSurvDefaults = 1 ] -menuitemslider "Spam survival mode messages: " 0 1 "$spamSurvMsgs" 1 [ no yes ] [ spamSurvMsgs = $arg1 ] +menuitemslider "# of bots to spawn on start: " 6 20 "$survNumBots" 1 [ survNumBots = $arg1; nonSurvDefaults = 1 ] +menuitemslider "# of bots to spawn at checkpoints: " 1 5 "$survBotsToAdd" 1 [ survBotsToAdd = $arg1; nonSurvDefaults = 1 ] +menuitemslider "# of milliseconds between checkpoints: " 10000 120000 "$timeBetChkPts" 10000 [ timeBetChkPts = $arg1; nonSurvDefaults = 1 ] +menuitemslider "# of milliseconds before teleporting: " 10000 180000 "$timeUntilTele" 10000 [ timeUntilTele = $arg1; nonSurvDefaults = 1 ] +menuitemslider "Maximum # of bots in survival mode: " 10 50 "$survMaxBots" 2 [ survMaxBots = $arg1; nonSurvDefaults = 1 ] +menuitemslider "Spam survival mode messages: " 0 1 "$spamSurvMsgs" [ no yes ] [ spamSurvMsgs = $arg1 ] menuitem [] -1 menuitem "\t\t\t\f2 [ Back ]" [ closecurmenu ] diff --git a/packages/misc/igraph/8.png b/packages/misc/igraph/8.png new file mode 100644 index 0000000000000000000000000000000000000000..5c0df802c7386855503b258c292cf25eee70e22e GIT binary patch literal 384 zcmV-`0e}99P)kdg0003;Nkl%!G zke}A+6G)Vh5pKq{bvqAaN=PR6(MdEw${&+!PI9CH$+XH{UI|k1jC|*$KuY9y!0)SO z>d>jS&me%p3VHwzFjD-h^s7||Pl|!b=-Ib;m0qbZ^g-rKHYX5+U~`iJdN+Qh0dtoU zjmFq9QvQDY3qv_0#}FSK-!n80`ot`PEs%W~rCdx3*JnIC8p3hB)MgaK(XnsjVDH#c zMms3kI@Z=DLWBV8vTmW2VP)Z64FW8%YUw*?%q)LLg8<8!S!Qb7(i%6_Hrjd%gQbPh e*1~X&9q&I}ZI|NW4i$F*0000kdg0004CNkl4!%7e?>4ZYKKq(Yr3P2p80@^@AR6qkLxkMKJ;pGqq@Zu25`0d5snK$!x zJ)VI8G61Hm*m0tu;KYs<(>rTD4gjVhYlM`l&_$ATQK1we)*51^XNWn9fEaPsAK;9L zLD4*<&%n!*kY1gGb=^-%Dl2>#9es48V zkKXO|83d49&H%sxMoiR{UV8P2h%qo31N#znblp=PEQa1loXM7?bwXA9e23JQCIb}a z*E8`I4Ve2W(bkwcCd!)SuUZUH#>6ouYMnn~Y@GCtS%duHJqTnUMj;n$HxGba952H0 z`ESx^RsHEWRs&eW1C#-djy*+d1qFM@*7}cMxM3ys*>+IMu(34MU^V0iddjAw-#KAn zS)FhzS1mnbVTtMGmiBT}?V_!BFjzVmZ5<5Pw&VR9KZ~R24lfFS00000NkvXXu0mjf DNcgiA literal 0 HcmV?d00001 diff --git a/packages/misc/igraph/igraphs.txt b/packages/misc/igraph/igraphs.txt index 10d20f18..92d80402 100644 --- a/packages/misc/igraph/igraphs.txt +++ b/packages/misc/igraph/igraphs.txt @@ -3,4 +3,6 @@ igraphs "1" to "9" are hardcoded to be used in menus: 1: menu icon (indicating a sub-menu) 2: not assigned yet 3: ellipsis (three dots, indicating a sub-menu) -4..9: not assigned yet +4..7: not assigned yet +8: radio button, off +9: radio button, on diff --git a/source/src/menus.cpp b/source/src/menus.cpp index 7c20d034..95f8a280 100644 --- a/source/src/menus.cpp +++ b/source/src/menus.cpp @@ -579,21 +579,38 @@ VARP(wrapslider, 0, 0, 1); struct mitemslider : mitem { int min_, max_, step, value, maxvaluewidth; - char *text, *valueexp, *display, *action; + char *text, *valueexp, *action; string curval; - bool wrap; + vector opts; + bool wrap, isradio; - mitemslider(gmenu *parent, char *text, int min_, int max_, int step, char *value, char *display, char *action, color *bgcolor, bool wrap) : mitem(parent, bgcolor, mitem::TYPE_SLIDER), min_(min_), max_(max_), step(step), value(min_), maxvaluewidth(0), text(text), valueexp(value), display(display), action(action), wrap(wrap) { } + mitemslider(gmenu *parent, char *text, int _min, int _max, char *value, char *display, char *action, color *bgcolor, bool wrap, bool isradio) : mitem(parent, bgcolor, mitem::TYPE_SLIDER), + min_(_min), max_(_max), value(_min), maxvaluewidth(0), text(text), valueexp(value), action(action), wrap(wrap), isradio(isradio) + { + char *enddigits; + step = (int) strtol(display, &enddigits, 10); + if(!*display || *enddigits) + { + step = 1; + explodelist(display, opts); + if(max_ - min_ + 1 != opts.length()) + { + if(max_ != -1) clientlogf("menuitemslider: display string length (%d) doesn't match max-min (%d) \"%s\" [%s]", opts.length(), max_ - min_ + 1, text, display); + max_ = min_ + opts.length() - 1; + } + } + getmaxvaluewidth(); + } virtual ~mitemslider() { + opts.deletearrays(); DELETEA(text); DELETEA(valueexp); - DELETEA(display); DELETEA(action); } - virtual int width() { return text_width(text) + menurighttabwidth + maxvaluewidth + 2*FONTH; } + virtual int width() { return text_width(text) + (isradio ? 0 : menurighttabwidth) + maxvaluewidth + 2*FONTH; } virtual void render(int x, int y, int w) { @@ -601,18 +618,22 @@ struct mitemslider : mitem int range = max_-min_; int cval = value-min_; - int tw = text_width(text); + int tw = text_width(text), ow = isradio ? text_width(curval) : menurighttabwidth, pos = !isradio || ow < menurighttabwidth ? menurighttabwidth : ow; if(sel) { - renderbg(x+w-menurighttabwidth, y, menurighttabwidth, menuselbgcolor); - renderbg(x, y, w-menurighttabwidth-FONTH/2, menuseldescbgcolor); + renderbg(x + w - pos, y, ow, menuselbgcolor); + renderbg(x, y, w - pos - FONTH/2, menuseldescbgcolor); + if(pos - ow > FONTH/2) renderbg(x + w - pos + ow + FONTH/2, y, pos - ow - FONTH/2, menuseldescbgcolor); } draw_text(text, x, y); - draw_text(curval, x+tw, y); + draw_text(curval, x + (isradio ? w - pos : tw), y); - blendbox(x+w-menurighttabwidth, y+FONTH/3, x+w, y+FONTH*2/3, false, -1, &gray); - int offset = (int)(cval/((float)range)*menurighttabwidth); - blendbox(x+w-menurighttabwidth+offset-FONTH/6, y, x+w-menurighttabwidth+offset+FONTH/6, y+FONTH, false, -1, sel ? &whitepulse : &white); + if(!isradio) + { + blendbox(x+w-menurighttabwidth, y+FONTH/3, x+w, y+FONTH*2/3, false, -1, &gray); + int offset = (int)(cval/((float)range)*menurighttabwidth); + blendbox(x+w-menurighttabwidth+offset-FONTH/6, y, x+w-menurighttabwidth+offset+FONTH/6, y+FONTH, false, -1, sel ? &whitepulse : &white); + } } virtual void key(int code, bool isdown, int unicode) @@ -627,11 +648,10 @@ struct mitemslider : mitem char *v = executeret(p); if(v) { - value = min(max_, max(min_, atoi(v))); + value = clamp(int(ATOI(v)), min_, max_); delete[] v; } displaycurvalue(); - getmaxvaluewidth(); } void slide(bool right) @@ -654,11 +674,15 @@ struct mitemslider : mitem void displaycurvalue() { - if(display) // extract display name from list + if(isradio) { - char *val = indexlist(display, value-min_); - copystring(curval, val); - delete[] val; + *curval = '\0'; + loopv(opts) concatformatstring(curval, "%s\1%c %s", i ? " " : "", (i + min_ == value) ? '\11' : '\10', opts[i]); + } + else if(opts.length()) // extract display name from list + { + int idx = value - min_; + copystring(curval, opts.inrange(idx) ? opts[idx] : ""); } else itoa(curval, value); // display number only } @@ -1044,12 +1068,19 @@ void menuitemtextinput(char *text, char *value, char *action, char *hoveraction, } COMMAND(menuitemtextinput, "ssssii"); -void menuitemslider(char *text, int *min_, int *max_, char *value, int *step, char *display, char *action, int *wrap) +void menuitemslider(char *text, int *min_, int *max_, char *value, char *display, char *action, int *wrap) { if(!lastmenu) return; - lastmenu->items.add(new mitemslider(lastmenu, newstring(text), *min_, *max_, *step, newstring(value), display[0] ? newstring(display) : NULL, action[0] ? newstring(action) : NULL, NULL, *wrap != 0)); + lastmenu->items.add(new mitemslider(lastmenu, newstring(text), *min_, *max_, newstring(value), display, action[0] ? newstring(action) : NULL, NULL, *wrap != 0, false)); } -COMMAND(menuitemslider, "siisissi"); +COMMAND(menuitemslider, "siisssi"); + +void menuitemradio(char *text, int *min_, int *max_, char *value, char *display, char *action) +{ + if(!lastmenu) return; + lastmenu->items.add(new mitemslider(lastmenu, newstring(text), *min_, *max_, newstring(value), display, action[0] ? newstring(action) : NULL, NULL, true, true)); +} +COMMAND(menuitemradio, "siisss"); void menuitemkeyinput(char *text, char *bindcmd) {