menus_settings.cfg 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919
  1. //// Main > Settings ////
  2. newmenu Settings
  3. menuitem "Video settings\i\3" [ showmenu "\fsVideo" ]
  4. menuitem "Head-Up Display settings\i\3" [ showmenu HUD ]
  5. menuitem "Console settings\i\3" [ showmenu Console ]
  6. menuitem "Gameplay settings\i\3" [ showmenu "\fsGameplay" ]
  7. menuitem "Scoreboard settings\i\3" [ showmenu Scoreboard ]
  8. menuitem "Keyboard settings\i\3" [ showmenu Keyboard ]
  9. menuitem "Mouse settings\i\3" [ showmenu Mouse ]
  10. menuitem "Sound settings\i\3" [ showmenu "\fsSound" ]
  11. menuitem "Misc settings\i\3" [ showmenu Misc ]
  12. menuitem "Mod package settings\i\3" [ showmenu "Mod package" ]
  13. menuitem "" -1
  14. menuitem "Reset all settings\i\3" [ showmenu [Reset settings] ]
  15. //// Main > Settings > Video ////
  16. newmenu "\fsVideo"
  17. menuitemtextinput [Screen width: ] "$scr_w" [ scr_w $arg1 ] [] 11
  18. menuitemtextinput [Screen height: ] "$scr_h" [ scr_h $arg1 ] [] 11
  19. menuitem (concatword "\f2Set\f5 resolution as in desktop (" $desktopw "x" $desktoph ")") [ scr_w $desktopw ; scr_h $desktoph ; refreshcurmenudelayed ]
  20. menuitem "Choose resolution from list\i\3" [ showmenu [Display resolutions] ]
  21. menuitem "" -1
  22. menuitemslider "Graphics detail: " 1 6 "$gfxqualityalias" [Horrible Low Medium Good High "INSANE! (May perform slowly on older gfx)"] [ new_gfx_quality $arg1 ]
  23. menuitem "" -1
  24. menuitemslider "Field of view: " 75 120 "$fov" 2 [ fov $arg1 ] 1
  25. menuitemcheckbox "Fullscreen: " "$fullscreen" [ fullscreen $arg1 ]
  26. menuitemcheckbox [Fullscreen is always using desktop resolution: ] "$fullscreendesktop" [ fullscreendesktop $arg1 ]
  27. menuitemradio "Vsync: " -1 1 "$vsync" [Default Disabled Enabled] [ vsync $arg1 ]
  28. menuitem "" -1
  29. menuitemslider "Set temporary gamma for this map: " 30 300 "$gamma" 5 [ gamma $arg1 ]
  30. menuitemtextinput "Set default gamma for this map: " [$gamma] [setgamma $arg1]
  31. menuitemtextinput "Set default gamma for maps without own default: " [$defaultgamma] [ defaultgamma = $arg1 ]
  32. menuitem "" -1
  33. menuitem "Advanced video settings\i\3" [ showmenu [Advanced video settings] ]
  34. menuitem "" -1
  35. menuitem "\f2\t\t\t [ Apply now! ]" [ resetgl ]
  36. alias defaultgamma 100
  37. //// Main > Settings > Video > Display resolutions ////
  38. newmenu [Display resolutions]
  39. push __getar [
  40. push n (findlist [1250 1333 1777 1600] (div (* 1000 $arg1) $arg2))
  41. if (>= $n 0) [
  42. n = (at [5:4 4:3 16:9 16:10] $n)
  43. ][
  44. n = (at (concat (concatword "~16:" (div (+ (div (* 160 $arg2) $arg1) 5) 10))) ~5:4 ~4:3) (+ (findlist [125 133] (div (* 100 $arg1) $arg2)) 1))
  45. ]
  46. pop n
  47. ]
  48. push reslist (getdisplayresolutions)
  49. if (strlen $reslist) [
  50. menuitem "\f4Preferred resolutions:" -1
  51. looplist $reslist [w h] [
  52. menuitem (concatword (at ["" " "] (< $w 1000)) $w x $h "\t(" (__getar $w $h) ")") (concat scr_w $w ";" scr_h $h ";" closecurmenu)
  53. ]
  54. menuitem "" -1
  55. menuitem "\f4More resolutions:" -1
  56. ][
  57. reslist = "17001 17001"
  58. ]
  59. looplist [640 480 800 600 1024 768 1280 720 1280 800 1280 1024 1360 768 1366 768 1440 900 1600 900 1680 1050 1920 1080 1920 1200] [w h] [
  60. push d (&& (< $w (at $reslist 0)) (< $h (at $reslist 1)))
  61. looplist $reslist [rw rh] [
  62. if (&& (= $w $rw) (= $h $rh)) [d = 0]
  63. ]
  64. if (pop d) [
  65. menuitem (concatword (at ["" " "] (< $w 1000)) $w x $h "\t(" (__getar $w $h) ")") (concat scr_w $w ";" scr_h $h ";" closecurmenu)
  66. ]
  67. ]
  68. pop reslist __getar
  69. //// Main > Settings > Video > Advanced video settings ////
  70. newmenu [Advanced video settings]
  71. const __getshadowq [
  72. if (&& $stencilshadow (>= $stencilbits 8)) [result 2] [
  73. if $dynshadow [result 1] [result 0]
  74. ]
  75. ]
  76. const __setshadowq_0 [ stencilshadow 0 ; stencilbits 0 ; dynshadow 0 ] // Off
  77. const __setshadowq_1 [ stencilshadow 0 ; stencilbits 0 ; dynshadow 40 ] // Blob
  78. const __setshadowq_2 [ stencilshadow 40 ; stencilbits 8 ; dynshadow 40 ] // Stencil
  79. const __fsaa_valuemap [-1 0 2 4 8 16]
  80. const __aniso_valuemap [0 2 4 8 16]
  81. const __minlod_valuemap [60 100 200 250]
  82. const __watersubdiv_valuemap [16 8 4 2 1]
  83. menuitemslider "Graphics detail: " 1 6 "$gfxqualityalias" [Horrible Low Medium Good High "INSANE! (May perform slowly on older gfx)"] [ new_gfx_quality $arg1; refreshcurmenu ]
  84. menuitemslider [Scope FOV: ] 5 60 "$scopefov" 5 [ scopefov $arg1 ] 1
  85. menuitemslider [Antialiasing (FSAA): ] 0 5 "(findlist $__fsaa_valuemap $fsaa)" [Default Off 2 4 8 16] [ fsaa (at $__fsaa_valuemap $arg1) ]
  86. menuitemslider [Anisotropic filtering: ] 0 4 "(findlist $__aniso_valuemap $aniso)" [Off 2 4 8 16] [ aniso (at $__aniso_valuemap $arg1) ]
  87. menuitemslider [Minimal level of detail: ] 0 3 "(findlist $__minlod_valuemap $minlod)" [Low Decent Good Best] [ minlod (at $__minlod_valuemap $arg1) ]
  88. menuitemslider [Light error: ] 1 100 "$lighterror" 5 [ lighterror $arg1 ]
  89. menuitemslider [Water subdivision: ] 0 4 "(findlist $__watersubdiv_valuemap $watersubdiv)" ["Lowest quality" "Low quality" "Medium quality" "High quality" "Highest quality"] [ watersubdiv (at $__watersubdiv_valuemap $arg1) ]
  90. menuitemslider [Dynamic shadows: ] 0 2 __getshadowq [Off Blob Stencil] [ (concatword __setshadowq_ $arg1) ] 1
  91. menuitemslider [Tex-reduce: ] -1 3 "$texreduce" 1 [ texreduce $arg1 ]
  92. menuitemcheckbox [Water reflection: ] "$waterreflect" [ waterreflect $arg1 ]
  93. menuitemcheckbox [Dynamic lights: ] "$dynlight" [ dynlight $arg1 ]
  94. menuitemcheckbox [Bulletholes: ] "$bullethole" [ bullethole $arg1 ]
  95. menuitemcheckbox [Scorch: ] "$scorch" [ scorch $arg1 ]
  96. menuitemcheckbox "Ignore map override: Disable water reflection" "$ignoreoverride_nowaterreflect" [ ignoreoverride_nowaterreflect $arg1 ]
  97. menuitemcheckbox "Ignore map override: Limit water waveheight" "$ignoreoverride_limitwaveheight" [ ignoreoverride_limitwaveheight $arg1 ]
  98. menuitemcheckbox "Ignore map override: Disable stencil shadows" "$ignoreoverride_nostencilshadows" [ ignoreoverride_nostencilshadows $arg1 ]
  99. menuitem "" -1
  100. menuitem "FPS Range\i\3" [ showmenu [FPS Range] ]
  101. menuitem "" -1
  102. menuitem "\f2\t\t [ Apply now! ]" [ resetgl ]
  103. //// Main > Settings > Video > Advanced video settings > FPS Range ////
  104. newmenu [FPS Range]
  105. menuitem [My 486 0wnz y00 (8-10 FPS)] [ closecurmenu; maxfps 50; fpsrange 8 10 ]
  106. menuitem [Slow machine (20-25 FPS)] [ closecurmenu; maxfps 50; fpsrange 20 25 ]
  107. menuitem [Sensible default (30-40 FPS)] [ closecurmenu; maxfps 50; fpsrange 30 40 ]
  108. menuitem [Solid 60 Hz (60-60 FPS)] [ closecurmenu; maxfps 100; fpsrange 60 60 ]
  109. menuitem [Lockdown-Breakout (100-150 FPS)] [ closecurmenu; maxfps 0; fpsrange 100 150 ]
  110. menuitem [Solid 144 Hz (144-144 FPS)] [ closecurmenu; maxfps 0; fpsrange 144 144 ]
  111. menuitem [Gamer Geekout (150-240 FPS)] [ closecurmenu; maxfps 0; fpsrange 150 240 ]
  112. menuitem [Solid 240 Hz (240-240 FPS)] [ closecurmenu; maxfps 0; fpsrange 240 240 ]
  113. menuitem [I don't understand LOD (250+ FPS)] [ closecurmenu; maxfps 0; fpsrange 250 1000 ]
  114. //// Main > Settings > HUD ////
  115. newmenu HUD
  116. alias wallclockformat "" // strftime formatting
  117. alias wallclockformatlist ["" %H:%M %H:%M:%S %I:%M%p %I:%M:%S%p U%H:%M U%H:%M:%S] //"U" at beginning means UTC/GMT time
  118. menuitem [Show:] -1
  119. menuitemcheckbox [ Gun ] "$hudgun" [ hudgun $arg1 ]
  120. menuitemcheckbox [ Team icon ] "(= $hideteam 0)" [ hideteam (= $arg1 0) ]
  121. menuitemcheckbox [ Icons ] "(= $hidehudequipment 0)" [ hidehudequipment (= $arg1 0) ]
  122. menuitemcheckbox [ Console ] "(= $hideconsole 0)" [ hideconsole (= $arg1 0) ]
  123. menuitemcheckbox [ Player names ] "$showtargetname" [ showtargetname $arg1 ]
  124. menuitemcheckbox [ Spectator info ] "(= $hidespecthud 0)" [ hidespecthud (= $arg1 0) ]
  125. menuitemcheckbox [ Quick messages ] "(= $hidehudmsgs 0)" [ hidehudmsgs (= $arg1 0) ]
  126. menuitemcheckbox [ Damage direction indicator ] "(= $hidedamageindicator 0)" [ hidedamageindicator (= $arg1 0) ]
  127. menuitemcheckbox [ Damage screen flash ] "$damagescreen" [ damagescreen $arg1 ]
  128. menuitemslider [ Damage maxroll: ] 0 (getvarrange max maxrolleffect) "$maxrolleffect" 1 [ maxrolleffect $arg1 ]
  129. menuitemcheckbox [ Team score counters ] "(= $hideteamscorehud 0)" [ hideteamscorehud (= $arg1 0) ]
  130. menuitemcheckbox [ KTF flag direction indicator ] "(! $hidektfindicator)" [ hidektfindicator (! $arg1) ]
  131. menuitemcheckbox [ Radar ] "(= $hideradar 0)" [ hideradar (= $arg1 0) ]
  132. menuitemslider [ Radar zoom: ] 5 500 [ $radarheight ] 5 [ radarheight $arg1 ] 1
  133. menuitemslider [ Votes: ] 0 2 "$hidevote" ["Always show" "Show until you vote" "Never show"] [ hidevote $arg1 ] 1
  134. menuitemradio [ Graphics statistics: ] 0 2 "$showstats" [None "FPS Only" All] [ showstats $arg1 ] 1
  135. menuitemslider [ Game time: ] 0 2 "$gametimedisplay" [None "Count backward" "Count forward"] [ gametimedisplay $arg1 ] 1
  136. 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
  137. menuitemradio [ Hand alignment: ] 0 1 "$righthanded" [Left-handed Right-handed] [ righthanded $arg1 ] 1
  138. menuitemslider [ Max-roll: ] 0 (getvarrange max maxroll) "$maxroll" 1 [ maxroll $arg1 ]
  139. menuitemslider [ Spectator max-roll: ] 0 (getvarrange max maxrollremote) "$maxrollremote" 2 [ maxrollremote $arg1 ]
  140. //// Main > Settings > Console ////
  141. newmenu Console
  142. menuitem "\f4Regular console:" -1
  143. menuitemslider "Console size (lines): " 0 20 "$consize" 1 [ consize $arg1 ]
  144. menuitemslider "Console fade time (seconds until lines disappear): " 5 60 "$confade" 5 [ confade $arg1 ]
  145. menuitemslider "Console transparency: " 120 255 "$conalpha" 15 [ conalpha $arg1 ]
  146. menuitem "\f4Full consoles:" -1
  147. menuitemslider "Full console size (percent screen height): " 0 100 "$fullconsize" 5 [ fullconsize $arg1 ]
  148. menuitemslider "2nd full console size (percent screen height): " 0 100 "$altconsize" 5 [ altconsize $arg1 ]
  149. menuitem "\f4Keys:" -1
  150. menuitemkeyinput "Toggle (full-)console key: " key_toggleconsole
  151. menuitemkeyinput "Rewind console key: " key_console_rewind
  152. menuitemkeyinput "Forward console key: " key_console_forward
  153. menuitemkeyinput "End of console key: " key_console_end
  154. menuitemkeyinput "Scroll console key (+ mousewheel): " key_console_scroll
  155. menuitem "\f4Inlined console graphics settings:" -1
  156. menuitemslider (concatword "Igraph size (" (getigraph ")") "): ") 80 300 "$igraphsize" 5 [ igraphsize $arg1 ] 1
  157. menuitemslider "Igraph size for menu icons (\i\1): " 80 160 "$igraphsizehardcoded" 5 [ igraphsizehardcoded $arg1 ] 1
  158. menuitemcheckbox "Stop igraph animation: " "! $igraphanimate" [ igraphanimate (! $arg1) ]
  159. menuitemcheckbox "Disable igraphs: " "$hideigraphs" [ hideigraphs $arg1 ]
  160. //// Main > Settings > Gameplay ////
  161. newmenu "\fsGameplay"
  162. alias nickhighlight 0
  163. alias __gibsgore 1
  164. menuitemtextinput "Nickname: " "result $curname" [ name $arg1 ]
  165. menuitemslider "Player skins: " 0 2 "$teamdisplaymode" [Normal "Colored vests" "Full color"] [ teamdisplaymode $arg1 ] 1
  166. menuitemslider "Custom player skins: " 0 2 "$hidecustomskins" ["Always show" "Show in non-team modes" "Never show"] [ hidecustomskins $arg1 ] 1
  167. menuitem "" -1
  168. menuitemcheckbox "Reduced violence mode: " "$poniesmodeon" [ reducedviolencemode $arg1 ]
  169. menuitemslider "Gib gore: " 0 4 "$__gibsgore" [Off Normal Good Messy Unrealistic] [ gibsgore $arg1 ]
  170. 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) ]
  171. menuitemcheckbox "Show scores on death: " "$showscoresondeath" [ showscoresondeath $arg1 ]
  172. menuitem "Change to the enemy team" changeteam
  173. menuitem "Change weapon\i\3" [ showmenu Weapons ]
  174. menuitem "Change player skin\i\3" [ showmenu @(at [CLA RVSF CLA RVSF ANY ANY ANY] (player1 team)) ]
  175. menuitem "Weapon settings\i\3" [ showmenu [Weapon Settings] ]
  176. menuitem "Edit kill messages\i\3" [ showmenu [Kill Messages] ]
  177. menuitem "Bot settings\i\3" [ showmenu [Bot settings] ]
  178. menuitem "" -1
  179. menuitemcheckbox "Use high-res player skins" "(>= (findlist (zipmodlist active) protox_hq_reskin) 0)" [ if $arg1 [addzipmod protox_hq_reskin; resetgl] [zipmodremove protox_hq_reskin; resetgl] ]
  180. //// Main > Settings > Gameplay > Weapons ////
  181. newmenu Weapons
  182. menuinit [ menuselection (curmenu) (findlist "assault subgun sniper shotgun carbine" $nextprimary) ]
  183. looplist [
  184. assault "MTP-57 Assault Rifle"
  185. subgun "A-ARD/10 Submachine Gun"
  186. sniper "Precision Tech AD-81 Sniper Rifle"
  187. shotgun "V-19 Combat Shotgun"
  188. carbine "TMP-M&A Carbine"
  189. ] [ w desc ] [execute (format [menuitem [%2] [nextprimary %1 ; echo %2 selected] [menumdl Weapons weapons/%1/menu mapmodel 75 12] ] $w $desc) ]
  190. //// Main > Settings > Gameplay > 'Change player skin' if team:4,5,6
  191. newmenu ANY
  192. menutitle "Pick a side & then your skin"
  193. menuitem "\f3CLA\f5 -\f4 Cubers Liberation Army" [team cla; showmenu CLA]
  194. menuitem "\f1RVSF\f5 -\f4 Rabid Viper Special Forces" [team rvsf; showmenu RVSF]
  195. //// Main > Settings > Gameplay > CLA ////
  196. newmenu CLA
  197. menuinit [ menuselection CLA (player1 skin_cla) ]
  198. menuitem [Comandante] [ skin_cla 0 ] [ menumdl CLA playermodels/CLA/01 all 50 4 ]
  199. menuitem [Psycho] [ skin_cla 1 ] [ menumdl CLA playermodels/CLA/02 all 50 4 ]
  200. menuitem [Bomber] [ skin_cla 2 ] [ menumdl CLA playermodels/CLA/03 all 50 4 ]
  201. menuitem [Ripper] [ skin_cla 3 ] [ menumdl CLA playermodels/CLA/04 all 50 4 ]
  202. //// Main > Settings > Gameplay > RVSF ////
  203. newmenu RVSF
  204. menuinit [menuselection RVSF (player1 skin_rvsf)]
  205. menuitem [Alpha] [ skin_rvsf 0 ] [ menumdl RVSF playermodels/RVSF/01 all 50 4 ]
  206. menuitem [Tango] [ skin_rvsf 1 ] [ menumdl RVSF playermodels/RVSF/02 all 50 4 ]
  207. menuitem [Cobra] [ skin_rvsf 2 ] [ menumdl RVSF playermodels/RVSF/03 all 50 4 ]
  208. menuitem [Viper] [ skin_rvsf 3 ] [ menumdl RVSF playermodels/RVSF/04 all 50 4 ]
  209. menuitem [Swat] [ skin_rvsf 4 ] [ menumdl RVSF playermodels/RVSF/05 all 50 4 ]
  210. menuitem [Police] [ skin_rvsf 5 ] [ menumdl RVSF playermodels/RVSF/06 all 50 4 ]
  211. //// Main > Settings > Gameplay > Weapon Settings ////
  212. newmenu [Weapon Settings]
  213. looplist [ subgun 3 assault 2 akimbo 2 ] [ g n ] [ alias (concatword __burstshots_ $g) $n ]
  214. menuitemslider [Play hit sounds: ] 0 2 "$hitsound" [Off "When server detects hits" "When client detects hits"] [ hitsound $arg1 ]
  215. menuitemcheckbox [Auto weapon reload: ] "$autoreload" [ autoreload $arg1 ]
  216. menuitemcheckbox [Auto switch to akimbo upon pickup: ] "$akimboautoswitch" [ akimboautoswitch $arg1 ]
  217. menuitemslider [Akimbo end action: ] 0 3 "$akimboendaction" ["Switch to knife" "Stay with pistol" "Switch to grenades" "Switch to primary"] [ akimboendaction $arg1 ] 1
  218. menuitemcheckbox [SMG - Full Auto?] "(= (burstshots SUBGUN -1) 0)" [ if (= $arg1 0) [ burstshots SUBGUN $__burstshots_subgun ] [ burstshots SUBGUN 0 ]; refreshcurmenu ]
  219. menuitemcheckbox [AR - Full Auto?] "(= (burstshots ASSAULT -1) 0)" [ if (= $arg1 0) [ burstshots ASSAULT $__burstshots_assault ] [ burstshots ASSAULT 0 ]; refreshcurmenu ]
  220. menuitemcheckbox [Akimbo - Full Auto?] "(= (burstshots AKIMBO -1) 0)" [ if (= $arg1 0) [ burstshots AKIMBO $__burstshots_akimbo ] [ burstshots AKIMBO 0 ]; refreshcurmenu ]
  221. menuitemslider [SMG - Shots per burst: ] 0 29 "$__burstshots_subgun" 1 [ burstshots SUBGUN $arg1; __burstshots_subgun = $arg1 ; refreshcurmenu ]
  222. menuitemslider [AR - Shots per burst: ] 0 19 "$__burstshots_assault" 1 [ burstshots ASSAULT $arg1; __burstshots_assault = $arg1 ; refreshcurmenu ]
  223. menuitemslider [Akimbo - Shots per burst: ] 0 19 "$__burstshots_akimbo" 1 [ burstshots AKIMBO $arg1; __burstshots_akimbo = $arg1 ; refreshcurmenu ]
  224. //// Main > Settings > Gameplay > Kill Messages ////
  225. newmenu [Kill Messages]
  226. menuitem "\f9Frag messages: " -1
  227. menuitemtextinput "Pistol: " [ fragmessage PISTOL ] [ fragmessage PISTOL $arg1 ] [] 15
  228. menuitemtextinput "Carbine: " [ fragmessage CARBINE ] [ fragmessage CARBINE $arg1 ] [] 15
  229. menuitemtextinput "Shotgun: " [ fragmessage SHOTGUN ] [ fragmessage SHOTGUN $arg1 ] [] 15
  230. menuitemtextinput "SMG: " [ fragmessage SUBGUN ] [ fragmessage SUBGUN $arg1 ] [] 15
  231. menuitemtextinput "Sniper: " [ fragmessage SNIPER ] [ fragmessage SNIPER $arg1 ] [] 15
  232. menuitemtextinput "AR: " [ fragmessage ASSAULT ] [ fragmessage ASSAULT $arg1 ] [] 15
  233. menuitemtextinput "Akimbo: " [ fragmessage AKIMBO ] [ fragmessage AKIMBO $arg1 ] [] 15
  234. menuitem "" -1
  235. menuitem "\f9Gib messages: " -1
  236. menuitemtextinput "Knife: " [ gibmessage KNIFE ] [ gibmessage KNIFE $arg1 ] [] 15
  237. menuitemtextinput "Shotgun: " [ gibmessage SHOTGUN ] [ gibmessage SHOTGUN $arg1 ] [] 15
  238. menuitemtextinput "Sniper: " [ gibmessage SNIPER ] [ gibmessage SNIPER $arg1 ] [] 15
  239. menuitemtextinput "Grenades: " [ gibmessage GRENADE ] [ gibmessage GRENADE $arg1 ] [] 15
  240. menuitem "" -1
  241. //// Main > Settings > Gameplay > Bot settings ////
  242. // see menus_bot.cfg
  243. //// Main > Settings > Scoreboard ////
  244. newmenu Scoreboard
  245. const __DEFAULT_SCOREBOARD [
  246. sc_flags Flags
  247. sc_frags Frags
  248. sc_deaths Deaths
  249. sc_ratio Ratio
  250. sc_lag Lag
  251. sc_clientnum "Client number"
  252. sc_name Name
  253. ]
  254. menuitem "\f40 has the highest priority" -1
  255. menuitem "\f4-1 disables the item entirely" -1
  256. menuitem "" -1
  257. looplist $__DEFAULT_SCOREBOARD [ var desc ] [
  258. menuitemslider (concatword $desc ": ") (getvarrange min $var) 6 (concatword "$" $var) 1 (concat $var "$arg1")
  259. ]
  260. menuitem "" -1
  261. menuitemcheckbox "Show accuracy stats: " "$accuracy" [ accuracy $arg1 ]
  262. menuitem "Reset accuracy stats" [ accuracyreset ]
  263. menuitem "Print accuracy stats to console" [ accuracyinfo ]
  264. menuitem "" -1
  265. menuitem "Reset to default scoreboard" [ looplist $__DEFAULT_SCOREBOARD [ var desc ] [ $var (getvarrange default $var) ] ; refreshcurmenudelayed; accuracy 0 ]
  266. //// Main > Settings > Keyboard ////
  267. newmenu Keyboard
  268. menuitem "General keys\i\3" [ showmenu [General keys] ]
  269. menuitem "Edit mode keys\i\3" [ showmenu [Editing keys] ]
  270. menuitem "Spectate mode keys\i\3" [ showmenu [Spectating keys] ]
  271. menuitem "" -1
  272. menuitem "Reset all keybinds to default settings\i\3" [ showmenu [Reset Binds] ]
  273. //// Main > Settings > Keyboard > General keys ////
  274. newmenu [General keys]
  275. menuitem [Select an action and press ENTER to bind a new key:] -1
  276. menuitem "" -1
  277. menuitem "\f2Movement:" -1
  278. menuitemkeyinput [Forwards: ] forward
  279. menuitemkeyinput [Left: ] left
  280. menuitemkeyinput [Backwards: ] backward
  281. menuitemkeyinput [Right: ] right
  282. menuitemkeyinput [Jump: ] jump
  283. menuitemkeyinput [Crouch: ] crouch
  284. menuitem "" -1
  285. menuitem "\f2Weapon:" -1
  286. menuitemkeyinput [Attack: ] attack
  287. menuitemkeyinput [Special action: ] altaction
  288. menuitemkeyinput [Knife attack: ] key_knifeattack
  289. menuitemkeyinput [Quick grenade throw: ] quicknadethrow
  290. menuitemkeyinput [Reload: ] reload
  291. menuitemkeyinput [Weapon menu: ] key_showmenuweapons
  292. menuitemkeyinput [Primary weapon: ] primary
  293. menuitemkeyinput [Secondary weapon: ] secondary
  294. menuitemkeyinput [Grenades: ] grenades
  295. menuitemkeyinput [Knife: ] melee
  296. menuitemkeyinput [Next weapon: ] key_universaldelta_plus
  297. menuitemkeyinput [Previous weapon: ] key_universaldelta_minus
  298. menuitemkeyinput [Last weapon: ] key_prevweapon
  299. menuitem "" -1
  300. menuitem "\f2Gameplay:" -1
  301. menuitemkeyinput [Show scores: ] key_showscores
  302. menuitemkeyinput [Map overview: ] key_showmap
  303. menuitemkeyinput [Drop flag: ] dropflag
  304. menuitemkeyinput [Chat: ] saycommand
  305. menuitemkeyinput [Team chat: ] key_teamchat
  306. menuitemkeyinput [Quick answer to private message: ] quickanswer
  307. menuitemkeyinput [Voice menu: ] key_showmenuvoicecom
  308. menuitem "" -1
  309. menuitem "\f2Console:" -1
  310. menuitemkeyinput [Toggle console: ] key_toggleconsole
  311. menuitemkeyinput [Rewind console: ] key_console_rewind
  312. menuitemkeyinput [Forward console: ] key_console_forward
  313. menuitemkeyinput [End of console: ] key_console_end
  314. menuitem "" -1
  315. menuitem "\f2Mousewheel actions (need holding the key):" -1
  316. menuitemkeyinput [Scroll console: ] key_console_scroll
  317. menuitemkeyinput [Adjust gamma: ] key_domodifier_1
  318. menuitemkeyinput [Adjust FOV: ] key_domodifier_2
  319. menuitem "" -1
  320. menuitem "\f2Misc keys:" -1
  321. menuitemkeyinput [Commandline: ] key_commandline
  322. menuitemkeyinput [Screenshot: ] screenshot
  323. menuitemkeyinput [Fullscreen: ] fullscreentoggle
  324. menuitemkeyinput [Enter edit mode: ] edittoggle
  325. menuitemkeyinput [Pause game: ] key_pause
  326. menuitem "" -1
  327. menuitemtextinput [Lookup a keybind: ] [] [
  328. if (strlen $arg1) [
  329. echo (concatword "\f9Contents of keybind " (addpunct $arg1) :)
  330. if (strcmp (result (keybind $arg1)) "") [
  331. echo (addpunct $arg1) is not bound
  332. ][
  333. echo (keybind $arg1)
  334. ]
  335. ]
  336. ] [] 256
  337. menuitem "" -1
  338. //// Main > Settings > Keyboard > Editing keys ////
  339. // see menus_edit.cfg
  340. //// Main > Settings > Keyboard > Spectating keys ////
  341. newmenu [Spectating keys]
  342. menuitem "Select an action and press ENTER to bind a new key:" -1
  343. menuitem "" -1
  344. menuitem "\f2Demo watching:" -1
  345. menuitemspectkeyinput [Toggle game speed: ] speckey_demo_togglespeed
  346. menuitemspectkeyinput [Increase game speed: ] speckey_demo_gamespeedup
  347. menuitemspectkeyinput [Decrease game speed: ] speckey_demo_gamespeeddown
  348. menuitemspectkeyinput [Reset game speed: ] speckey_demo_gamespeedreset
  349. menuitem "" -1
  350. menuitem "\f2Misc spectating keys:" -1
  351. menuitemspectkeyinput [Whois spectated player: ] speckey_whois_spectatecn
  352. menuitem "" -1
  353. menuitemtextinput [Lookup a keyspecbind: ] [] [
  354. if (strlen $arg1) [
  355. echo (concatword "\f9Contents of keyspecbind " (addpunct $arg1) :)
  356. if (strcmp (result (keyspecbind $arg1)) "") [
  357. echo (addpunct $arg1) is not bound
  358. ][
  359. echo (keyspecbind $arg1)
  360. ]
  361. ]
  362. ] [] 256
  363. menuitem "" -1
  364. //// Main > Settings > Keyboard > Reset Binds ////
  365. newmenu [Reset Binds]
  366. menuitemcheckbox [Yes, reset all binds: ] [ tempalias __resetbindsyes 0 ] [ __resetbindsyes = $arg1 ]
  367. menuitem "\f2 [ Apply! ] " [ if $__resetbindsyes resetbinds [ showmenu [] ] ]
  368. //// Main > Settings > Mouse ////
  369. newmenu Mouse
  370. menuinit [
  371. resetcurmenu
  372. menuitemcheckbox "Invert mouse:" "$invmouse" [ invmouse $arg1 ]
  373. menuitemtextinput "Mouse Sensitivity:" "$sensitivity" [ sensitivity $arg1 ]
  374. menuitemtextinput "Mouse Acceleration:" "$mouseaccel" [ mouseaccel $arg1 ]
  375. menuitemtextinput "Filter mouse (for bad ones):" "$mfilter" [ mfilter $arg1 ]
  376. menuitem "" -1
  377. menuitemradio "Sniper-scope sensitivity: " 0 1 "$autoscopesens" [manual automatic] [ autoscopesens $arg1 ; refreshcurmenu]
  378. menuitemgreyedout ($autoscopesens)
  379. menuitemtextinput "Sniper-scope sensitivity scale: " "$scopesensscale" [ scopesensscale $arg1 ]
  380. menuitemgreyedout 0
  381. menuitem "" -1
  382. menuitem "Customize crosshairs\i\3" [ showmenu [Customize crosshairs] ]
  383. ]
  384. //// Main > Settings > Mouse > Customize crosshairs ////
  385. newmenu [Customize crosshairs]
  386. tempalias __crosshairset teammate
  387. menuinit [
  388. resetcurmenu
  389. menuitemslider "Crosshair size: " 0 50 "$crosshairsize" 5 [ crosshairsize $arg1 ]
  390. menuitem "Change default crosshair\i\3" [ tempalias __crosshairset default ; showmenu Crosshairs ]
  391. menuitem "Change scope crosshair\i\3" [ tempalias __crosshairset scope ; showmenu Crosshairs ]
  392. menuitem "" -1
  393. menuitemslider "Choose crosshair: " 0 -1 [findlist (listoptions crosshairnames) $__crosshairset] (listoptions crosshairnames) [ tempalias __crosshairset (at (listoptions crosshairnames) $arg1) ; refreshcurmenu ]
  394. menuitem (concat "Change" $__crosshairset "crosshair\i\3") [ showmenu Crosshairs ]
  395. menuitem "" -1
  396. 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) ]
  397. menuitemcheckbox "Crosshair effect: show assault rifle spread increase" [ (at "0 1 0 1" $crosshairfx) ] [ crosshairfx (at (if $arg1 ["3 1 1 3"] ["0 2 2 0"]) $crosshairfx) ]
  398. menuitemcheckbox "Crosshair effect: show team-sign when aiming at teammates " "$crosshairteamsign" [ crosshairteamsign $arg1 ]
  399. menuitem "" -1
  400. menuitem "Reset all crosshairs to defaults" [ loadcrosshair reset ]
  401. ]
  402. //// Main > Settings > Mouse > Customize crosshairs > Crosshairs ////
  403. newmenu Crosshairs
  404. menuinit [
  405. resetcurmenu
  406. menuheader "" ['@[__crosshairset]' crosshair]
  407. menudirlist "packages/crosshairs" png [ loadcrosshair @__crosshairset [@[arg1].png] ] 1
  408. ]
  409. //// Main > Settings > Sound ////
  410. newmenu "\fsSound"
  411. alias __soundquality 3
  412. menuitemslider "Sound volume: " 0 255 "$soundvol" 16 [ soundvol $arg1 ]
  413. menuitemslider "Music volume: " 0 255 "$musicvol" 16 [ musicvol $arg1 ]
  414. menuitemslider "Sound detail: " 1 3 "($__soundquality)" [Low Medium High] [ __set_sound_quality $arg1; refreshcurmenu ]
  415. menuitem "" -1
  416. menuitem "Mute/Un-mute specific sounds\i\3" [ showmenu [Mute specific sounds] ]
  417. menuitem "" -1
  418. menuitem "Advanced settings:" -1
  419. menuitemslider " Sounds at once: " 0 100 "$maxsoundsatonce" 2 [ maxsoundsatonce $arg1 ]
  420. menuitemslider " Voice-coms: " 0 2 "$voicecomsounds" [Off On "Team only"] [ voicecomsounds $arg1 ]
  421. menuitemslider " Heartbeat: " 0 99 "$heartbeat" 5 [ heartbeat $arg1 ]
  422. menuitemcheckbox " Footsteps: " "$footsteps" [ footsteps $arg1 ]
  423. menuitemcheckbox " Disable own footsteps: " "(= $localfootsteps)" [ localfootsteps (! $arg1) ]
  424. menuitemcheckbox " Bullet hit: " "$bulletbouncesound" [ bulletbouncesound $arg1 ]
  425. menuitemcheckbox " Bullet near-miss: " "$bulletairsound" [ bulletairsound $arg1 ]
  426. //// Main > Settings > Sound > Mute specific sounds ////
  427. newmenu [Mute specific sounds]
  428. menuitem "Weapon sounds\i\3" [ showmenu [Mute weapon sounds] ]
  429. menuitem "Bullet/explosion sounds\i\3" [ showmenu [Mute bullet/explosion sounds] ]
  430. menuitem "Pain/death sounds\i\3" [ showmenu [Mute pain/death sounds] ]
  431. menuitem "Pickup sounds\i\3" [ showmenu [Mute pickup sounds] ]
  432. menuitem "Movement sounds\i\3" [ showmenu [Mute movement sounds] ]
  433. menuitem "Voice-com sounds\i\3" [ showmenu [Mute voice-coms] ]
  434. menuitem "Other sounds\i\3" [ showmenu [Mute other sounds] ]
  435. menuitem "" -1
  436. menuitem "Un-mute all sounds" [ unmuteallsounds ]
  437. looplist [
  438. "Mute weapon sounds" WEAPON
  439. "Mute pickup sounds" PICKUP
  440. "Mute pain/death sounds" "PAIN OWNPAIN"
  441. "Mute movement sounds" MOVEMENT
  442. "Mute bullet/explosion sounds" BULLET
  443. "Mute other sounds" OTHER
  444. "Mute voice-coms" VOICECOM
  445. ] [ mt sc ] [
  446. newmenu $mt
  447. looplist (enumsounds $sc) [ idx desc ] [ menuitemcheckbox (concatword $desc ": ") (concat ! "(soundmuted" $idx ")") (concat mutesound $idx "$arg1") ]
  448. ]
  449. //// Main > Settings > Misc ////
  450. newmenu Misc
  451. alias showmenuonstartup 1
  452. alias menufilesort_cgz 0
  453. alias menufilesort_dmo 0
  454. tempalias __fontlist [ default serif mono ]
  455. tempalias __screenshottypes ["JPEG (Terrible Quality)" "JPEG (Bad Quality)" "JPEG (Good Quality)" "JPEG (Best Quality)" "PNG (Lossless)" "BMP (Lossless)"]
  456. tempalias __getscreenshottype [
  457. tempalias __screenshottype (at "5 0 4" $screenshottype) // 0:BMP 1:JPG 2:PNG
  458. if (= $screenshottype 1) [
  459. looplist [50 70 85] q [ if (< $q $jpegquality) [ += __screenshottype 1 ] ]
  460. ]
  461. result $__screenshottype
  462. ]
  463. menuitemcheckbox "Auto map download: " "$autogetmap" [ autogetmap $arg1 ]
  464. menuitem "Configure auto media download \i\1" [ showmenu "Autodownload config"]
  465. menuitemradio "Show gamemode names " 0 1 "$modeacronyms" [ verbal abbreviated ] [ modeacronyms $arg1 ]
  466. menuitemcheckbox "Show main menu when starting AC: " "$showmenuonstartup" [ showmenuonstartup = $arg1 ]
  467. menuitemcheckbox "Auto-screenshot: " "$autoscreenshot" [ autoscreenshot $arg1 ]
  468. menuitemcheckbox "Allow HUD echos: " "$allowhudechos" [ allowhudechos $arg1 ]
  469. menuitemslider "Servers to ping at once: " 0 50 "$maxservpings" 5 [ maxservpings $arg1 ]
  470. menuitemslider "Milliseconds between pinging servers: " 1000 60000 "$servpingrate" 1000 [ servpingrate $arg1 ]
  471. 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) ] ]
  472. menuitemslider "Font type: " 0 2 [findlist $__fontlist (curfont)] [Default Serif Monospace] [ setfont (at $__fontlist $arg1) ]
  473. menuitemslider "Mini-map background style: " 0 2 "$showmapbackdrop" ["Fully Transparent" Black White/Transparent] [ showmapbackdrop $arg1 ]
  474. menuitemslider "Menu map file sort order: " 0 -1 "$menufilesort_cgz" (listoptions menufilesortorders) [menufilesort_cgz = $arg1]
  475. menuitemslider "Menu demo file sort order: " 0 -1 "$menufilesort_dmo" (listoptions menufilesortorders) [menufilesort_dmo = $arg1]
  476. menuitem "Edit hook script \i\1" [ showmenu "Edit cubescript hook" ]
  477. menuitemcheckbox "Show command reference/documentation for console input: " "$docvisible" [ docvisible $arg1 ]
  478. menuitemcheckbox "Show related commands: " "$docrefvisible" [ docrefvisible $arg1 ]
  479. menuitemradio "Show docs detail: " 0 3 "$docidentverbose" [ default +ident verbose/debug +always] [ docidentverbose $arg1 ]
  480. //// Main > Settings > Misc > Autodownload config ////
  481. newmenu "Autodownload config"
  482. tempalias __pcksrv ""
  483. menuinit [
  484. resetcurmenu
  485. push serverlist (getpckserver)
  486. push words (listlen $serverlist)
  487. if (! $words) [
  488. menuitem "no package servers configured" -1
  489. ] [
  490. if (= $words 1) [
  491. menuitem $serverlist -1
  492. ] [
  493. menuitem "\f2priority\tping\tstatus\thost address" -1
  494. looplist $serverlist [host priority ping resolved] [
  495. resolved = (at ["\f2no response" "\f0ok"] $resolved)
  496. if (<= $priority -1000) [ resolved = "\f2disabled" ]
  497. if (<= $priority -10000) [ resolved = "\f3deleted" ]
  498. menuitem (concatword (if (<= $priority -1000) "" $priority) "\t" $ping "\t\fs" $resolved "\fr\t" $host) (concat alias __pcksrv "[" (escape $host) $priority $ping (escape $resolved) "] ; showmenu [Configure package server]")
  499. ]
  500. ]
  501. ]
  502. menuitem "" -1
  503. menuitemcheckbox "Enable auto media download: " "$autodownload" [ autodownload $arg1 ]
  504. menuitem "Add package server -->" [ inputcommand "" "addpckserver $cmdbuf" "enter host address:" ]
  505. menuitem "" -1
  506. menuitem "\f4you need to restart the game for changes to take effect" -1
  507. pop serverlist words
  508. ]
  509. //// Main > Settings > Misc > Autodownload config > Configure package server ////
  510. newmenu "Configure package server"
  511. menuinit [
  512. resetcurmenu
  513. if (!= (listlen $__pcksrv) 4) [
  514. menuitem "----- no server selected ------" -1
  515. ] [
  516. push priority (at $__pcksrv 1)
  517. menuitem (concatword "Host address \t\f2" (at $__pcksrv 0)) -1
  518. menuitemtextinput "Priority \t" $priority [addpckserver (at $__pcksrv 0) $arg1]
  519. menuitem (concatword "Ping \t" (at $__pcksrv 2)) -1
  520. menuitem (concatword "Status \t" (at $__pcksrv 3)) -1
  521. menuitem "" -1
  522. if (<= $priority -1000) [
  523. menuitem "\f0[Enable server]" (concat addpckserver (at $__pcksrv 0) 0 "; closecurmenu")
  524. ] [
  525. menuitem "\f3[Disable server]" (concat addpckserver (at $__pcksrv 0) -1000 "; closecurmenu")
  526. ]
  527. if (> $priority -10000) [
  528. menuitem "\f3[Mark server for deletion]" (concat addpckserver (at $__pcksrv 0) -10000 "; closecurmenu")
  529. ]
  530. pop priority
  531. ]
  532. ]
  533. //// Main > Settings > Misc > Edit cubescript hook ////
  534. newmenu "Edit cubescript hook"
  535. menuinit [
  536. resetcurmenu
  537. looplist [
  538. autoexec "after autoexec.cfg"
  539. afterinit "after saved.cfg but before autoexec.cfg"
  540. mapstartalways "when a map was loaded"
  541. onLastMin "when the last minute of a game has started"
  542. start_intermission "when a game ended"
  543. onNewMap "when a new (empty) map was created"
  544. onPM "when you got a private message"
  545. onConnect "after a player connected"
  546. onDisconnect "after a player disconnected"
  547. onCallVote "when a vote was called"
  548. onVoteEnd "after voting ended"
  549. onChangeVote "when a vote is changed"
  550. updateeditinfopanel "during editing"
  551. ] [ cmd desc ] [
  552. menuitem (concatword "\fs\f2" $cmd ":\fr gets executed " $desc) (concat editalias $cmd) "" (if (checkalias $cmd) [ concatword "\fs\f4current: \fr" $$cmd ])
  553. ]
  554. ]
  555. //// Main > Settings > Mod package ////
  556. newmenu "Mod package"
  557. tempalias __zip ""
  558. menuinit [
  559. resetcurmenu
  560. menurenderoffset -20 0
  561. push ecurmenu (escape (curmenu))
  562. push activezips (zipmodlist active)
  563. push inactivezips (zipmodlist inactive)
  564. if (strlen $activezips) [
  565. menuitem "\f2Currently used mod packages (highest priority listed first)" -1 (concat chmenutexture $ecurmenu "")
  566. looplist $activezips zip [
  567. menuitem (concatword "\fs\f9" $zip ":\fr " (at (zipmodgetdesc $zip) 0)) (concat alias __zip $zip "; showmenu [Configure mod package]") (concatword chmenutexture " " $ecurmenu "../modpreviews/" $zip ".jpg " $zip)
  568. ]
  569. menuitem "" -1 (concat chmenutexture $ecurmenu "")
  570. ]
  571. if (strlen $inactivezips) [
  572. menuitem "\f2Unused mod packages" -1 (concat chmenutexture $ecurmenu "")
  573. looplist $inactivezips zip [
  574. menuitem (concatword "\fs\f9" $zip ":\fr " (at (zipmodgetdesc $zip) 0)) (concat alias __zip $zip "; showmenu [Configure mod package]") (concatword chmenutexture " " $ecurmenu "../modpreviews/" $zip ".jpg " $zip)
  575. ]
  576. menuitem "" -1 (concat chmenutexture $ecurmenu "")
  577. ]
  578. if (|| (strlen $activezips) (strlen $inactivezips)) [ ] [ menuitem "--- no mod packages available ---" -1 ]
  579. if (strlen $activezips) [ menuitem "\f3Deactivate all mod packages" zipmodclear ]
  580. menuitem "\f3Refresh textures (has no effect on already loaded models)" [ resetgl ; updateigraphs ]
  581. pop activezips inactivezips ecurmenu
  582. ]
  583. //// Main > Settings > Mod package > Configure mod package ////
  584. newmenu "Configure mod package"
  585. menuinit [
  586. resetcurmenu
  587. menurenderoffset -20 0
  588. push ecurmenu (escape (curmenu))
  589. push activezips (zipmodlist active)
  590. if (strlen $__zip) [
  591. chmenutexture (curmenu) (concatword "../modpreviews/" $__zip ".jpg") $__zip
  592. push __c "\f2"
  593. looplist (zipmodgetdesc $__zip) desc [ if (strlen $desc) [ menuitem (concat $__c $desc) -1 ] ; alias __c "" ]
  594. pop __c
  595. menuitem (concat "\f4revision:" (zipmodgetrevision $__zip)) -1
  596. menuitem "" -1
  597. if (< (findlist $activezips $__zip) 0) [
  598. menuitem (concatword "\f0Add \f9" $__zip "\f0 to the list of used mod packages") (concat addzipmod $__zip)
  599. ] [
  600. menuitem (concatword "\f3Remove \f9" $__zip "\f0 from the list of used mod packages") (concat zipmodremove $__zip)
  601. ]
  602. menuitem "" -1
  603. menuitem "Show list of files in package" "showmenu [Show files in package]"
  604. ] [
  605. menuitem "no zip selected" -1
  606. ]
  607. pop activezips ecurmenu
  608. ]
  609. //// Main > Settings > Mod package > Configure mod package > Show files in package ////
  610. newmenu "Show files in package"
  611. menuinit [
  612. resetcurmenu
  613. if (strlen $__zip) [
  614. menuitem (concat "Files in package\f9" $__zip) -1
  615. menuitem "" -1
  616. looplist (zipmodgetfiles $__zip) aa [ menuitem $aa -1 ]
  617. ] [
  618. menuitem "no zip selected" -1
  619. ]
  620. ]
  621. //// Main > Settings > Reset settings ////
  622. newmenu [Reset settings]
  623. menuinit [ tempalias __resetyes 0 ]
  624. menuitemcheckbox "Yes, reset all settings: " [ $__resetyes ] [ __resetyes = $arg1 ]
  625. menuitem "\f2 [ Apply! ] " [ if $__resetyes [ resetcfg 1; quit ] [ showmenu [] ] ] [ if $__resetyes [ echo "\f3Choose [Apply] and AssaultCube will now quit and your settings will be reset." ] ]
  626. //// welcome ////
  627. newmenu [welcome] // keep this menu as simple as possible - only include the absolute minimum of configuration options
  628. menuinit [
  629. resetcurmenu
  630. if (checkalias __windowtype) [] [ __windowtype = 0 ]
  631. scr_w $desktopw
  632. scr_h $desktoph
  633. menuitem "AssaultCube has been created and nurtured by an international" -1
  634. menuitem "community of artists and developers since July 2004. We are" -1
  635. menuitem "people who love building fun games." -1
  636. menuitem "" -1
  637. menuitem "\f2We are looking for lead developers and lead artists to help us build" -1
  638. menuitem "\f2the next generation of AssaultCube for Windows, Mac, Linux and Mobile." -1
  639. menuitem "" -1
  640. menuitem "\f5Enjoy the game!" -1
  641. menuitem "" -1
  642. menuitemtextinput "Nickname: " [ if (strcmp $curname "unarmed") [ result "" ] [ result $curname ] ] [ name $arg1 ]
  643. menuitemradio "Fullscreen: " 0 1 "$__windowtype" [ "Yes" "No" ] [
  644. __windowtype = $arg1
  645. refreshcurmenudelayed // reset the screen width/height to desktop resolution whenever radio buttons are touched
  646. ]
  647. menuitemtextinput "Resolution / width: " "$scr_w" [ scr_w $arg1 ]
  648. menuitemtextinput "Resolution / height: " "$scr_h" [ scr_h $arg1 ]
  649. menuitemslider "Brightness: " 70 130 "$gamma" 1 [ gamma $arg1 ]
  650. menuitem "" -1
  651. menuitem "\f0\t\t\t[ OK ]" [
  652. closecurmenu;
  653. fullscreen (= $__windowtype 0)
  654. fullscreendesktop (= $__windowtype 0)
  655. resetgl
  656. showmenu [auth setup]
  657. ]
  658. if (checkalias __firstrun) [] [ __firstrun = 1; menuselection (curmenu) 9 ] // preselect nickname field
  659. ]
  660. const new_gfx_quality [
  661. if (= $arg1 6) [ // "INSANE!" gfx quality
  662. fsaa 8
  663. aniso 8
  664. minlod 250
  665. gfxqualityalias = 6
  666. fpsrange 100 1000
  667. watersubdiv 1
  668. dynlight 1
  669. waterreflect 1
  670. stencilbits 8
  671. stencilshadow 40
  672. dynshadow 40
  673. lighterror 1
  674. scorch 1
  675. bullethole 1
  676. blood 1
  677. gib 1
  678. shotline 1
  679. echo Be mighty careful! This setting puts any & every graphics setting as high as absolutely possible!
  680. trilinear 1
  681. waterrefract 1
  682. texreduce 0
  683. hidebigmenuimages 0
  684. ] [
  685. if (= $arg1 5) [ // High gfx quality
  686. fsaa 4
  687. aniso 4
  688. minlod 200
  689. gfxqualityalias = 5
  690. fpsrange 100 1000
  691. watersubdiv 2
  692. dynlight 1
  693. waterreflect 1
  694. stencilbits 8
  695. stencilshadow 40
  696. dynshadow 40
  697. lighterror 1
  698. scorch 1
  699. bullethole 1
  700. blood 1
  701. gib 1
  702. shotline 1
  703. trilinear 1
  704. waterrefract 0
  705. texreduce 0
  706. hidebigmenuimages 0
  707. ] [
  708. if (= $arg1 4) [ // Good gfx quality (DEFAULT)
  709. fsaa 0
  710. aniso 0
  711. minlod 100
  712. gfxqualityalias = 4
  713. fpsrange 60 60
  714. watersubdiv 2
  715. dynlight 1
  716. waterreflect 1
  717. stencilbits 8
  718. stencilshadow 40
  719. dynshadow 40
  720. lighterror 4
  721. scorch 1
  722. bullethole 1
  723. blood 1
  724. gib 1
  725. shotline 1
  726. trilinear 1
  727. waterrefract 0
  728. texreduce 0
  729. hidebigmenuimages 0
  730. ] [
  731. if (= $arg1 3) [ // Medium gfx quality
  732. fsaa 0
  733. aniso 0
  734. minlod 60
  735. gfxqualityalias = 3
  736. fpsrange 30 40
  737. watersubdiv 4
  738. dynlight 1
  739. // Makes sure the 3D card is powerful enough for water reflection/shadow stencils...
  740. if (glext "GL_ARB_fragment_program") [ waterreflect 1 ] [ waterreflect 0 ]
  741. if (|| (glext "GL_EXT_stencil_two_side") (glext "GL_ATI_separate_stencil")) [
  742. stencilbits 8
  743. stencilshadow 40
  744. ] [
  745. stencilbits 0
  746. stencilshadow 0 ]
  747. dynshadow 40
  748. lighterror 4
  749. scorch 1
  750. bullethole 1
  751. blood 1
  752. gib 1
  753. shotline 1
  754. trilinear 1
  755. waterrefract 0
  756. texreduce 0
  757. hidebigmenuimages 0
  758. ] [
  759. if (= $arg1 2) [ // Low gfx quality
  760. fsaa 0
  761. aniso 0
  762. minlod 60
  763. gfxqualityalias = 2
  764. fpsrange 20 25
  765. watersubdiv 16
  766. dynlight 0
  767. waterreflect 0
  768. stencilshadow 0
  769. stencilbits 0
  770. dynshadow 0
  771. lighterror 10
  772. scorch 0
  773. bullethole 0
  774. blood 0
  775. gib 0
  776. shotline 0
  777. trilinear 1
  778. waterrefract 0
  779. texreduce 1
  780. hidebigmenuimages 1
  781. ] [ // Horrible gfx quality
  782. fsaa 0
  783. aniso 0
  784. minlod 60
  785. gfxqualityalias = 1
  786. fpsrange 20 25
  787. watersubdiv 64
  788. dynlight 0
  789. waterreflect 0
  790. stencilshadow 0
  791. stencilbits 0
  792. dynshadow 0
  793. lighterror 16
  794. scorch 0
  795. bullethole 0
  796. blood 0
  797. gib 0
  798. if (> $gibnum (getvarrange default gibnum)) [gibnum (getvarrange default gibnum)]
  799. shotline 0
  800. trilinear 0
  801. waterrefract 0
  802. texreduce -1
  803. hidebigmenuimages 1
  804. ]
  805. ]
  806. ]
  807. ]
  808. ]
  809. ]
  810. const __set_sound_quality [
  811. looplist [
  812. 3 "getvarrange default maxsoundsatonce" 1 1 1
  813. 2 "div (getvarrange default maxsoundsatonce) 2" 1 0 1
  814. 1 "div (getvarrange default maxsoundsatonce) 4" 0 0 0
  815. ] [ idx maxsounds foots bullair bullbounce ] [
  816. if (= $arg1 $idx) [
  817. __soundquality = $idx
  818. maxsoundsatonce (maxsounds)
  819. footsteps $foots
  820. bulletairsound $bullair
  821. bulletbouncesound $bullbounce
  822. ]
  823. ]
  824. ]
  825. // Reduced game violence mode...
  826. alias poniesmodeon 0
  827. const reducedviolencemode [
  828. push x (! $arg1)
  829. poniesmodeon = (! $x)
  830. blood $x
  831. gib $x
  832. looplist (enumsounds PAIN) [i d] [ mutesound $i $x ] // (Un-) Mute pain sounds: 26 to 33 and 48
  833. echo "\f2OMG! \f8PW\f1NI\f3ES\f5! mode" (if $x [result "has been disabled."] [result "enabled - Violent game content has now been reduced."])
  834. pop x
  835. ]