menus.cfg 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. // standard menu definitions
  2. //// Main ////
  3. newmenu main
  4. menuitem Multiplayer [ showmenu multiplayer ]
  5. menuitem Singleplayer [ showmenu singleplayer ]
  6. menuitem Settings [ showmenu Settings ]
  7. menuitem Demo [ showmenu [Play demo] ]
  8. menuitem Editing [ showmenu editing ]
  9. menuitem Help [ showmenu help ]
  10. menuitem About [ showmenu about ]
  11. menuitem "Quit AssaultCube" quit
  12. // curated maps per possible gamemodes
  13. // TODO: the engine can determine possible modes on mapload - a clever method needs to include saving known/established lists to avoid reworking them on each client start.
  14. // Accepting redundancy one could create a list per gamemode; but of the official maps only ac_douze does not fit the basic toggle between with-flags/without-flags maps …
  15. // … so we have two extra lists besides "all" & "flags" to cater to it.
  16. // Add maps to the below list to include them in the normal map menu (also for botmaps). Modes: DM LSS OSOK PF SURV
  17. const __maps_all [ac_africa ac_alcove ac_aqueous ac_arabian ac_arctic ac_arctic2 ac_arid ac_avenue ac_coal ac_complex ac_depot ac_desert ac_desert2 ac_desert3 ac_douze ac_dusk ac_edifice ac_elevation ac_gothic ac_industrial ac_ingress ac_kazemat ac_keller ac_lainio ac_lotus ac_mines ac_nocturne ac_origin ac_outpost ac_power ac_rampart 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]
  18. // this list is like maps_all (but without ac_douze) that support TDM TLSS TOSOK TPF and TSURV
  19. const __maps_most [ac_africa ac_alcove ac_aqueous ac_arabian ac_arctic ac_arctic2 ac_arid ac_avenue ac_coal ac_complex ac_depot ac_desert ac_desert2 ac_desert3 ac_dusk ac_edifice ac_elevation ac_gothic ac_industrial ac_ingress ac_kazemat ac_keller ac_lainio ac_lotus ac_mines ac_nocturne ac_origin ac_outpost ac_power ac_rampart 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]
  20. // this list is for maps with flags that support CTF and KTF
  21. const __maps_flags [ac_africa ac_alcove ac_aqueous ac_arabian ac_arctic2 ac_arid ac_avenue ac_coal ac_depot ac_desert3 ac_dusk ac_edifice ac_elevation ac_gothic ac_industrial ac_ingress ac_kazemat ac_keller ac_lainio ac_lotus ac_mines ac_nocturne ac_origin ac_outpost ac_power ac_rampart ac_shine ac_stellar ac_sunset ac_swamp ac_terros ac_urban ac_venison ac_werk]
  22. // this list is like maps_flags (but with ac_douze) that support TKTF
  23. const __maps_tktf [ac_africa ac_alcove ac_aqueous ac_arabian ac_arctic2 ac_arid ac_avenue ac_coal ac_depot ac_desert3 ac_douze ac_dusk ac_edifice ac_elevation ac_gothic ac_industrial ac_ingress ac_kazemat ac_keller ac_lainio ac_lotus ac_mines ac_nocturne ac_origin ac_outpost ac_power ac_rampart ac_shine ac_stellar ac_sunset ac_swamp ac_terros ac_urban ac_venison ac_werk]
  24. // Start maps.
  25. const __genmapitems [
  26. looplisti $arg1 m [
  27. menuitemmapload $m [map @m]
  28. [nextmap_@m] = (at $arg1 (mod (+ $i 1) @(listlen $arg1)))
  29. ]
  30. ]
  31. newmenu all_custom_maps
  32. menutitle "custom maps"
  33. menurenderoffset -20 0
  34. menudirlist "packages/maps" cgz [map $arg1]
  35. newmenu maps
  36. __genmapitems $__maps_all
  37. menuitem [] -1
  38. menuitem "Show all custom maps\i\3" [showmenu all_custom_maps]
  39. newmenu maps_most
  40. menutitle "maps"
  41. __genmapitems $__maps_most
  42. menuitem [] -1
  43. menuitem "Show all custom maps\i\3" [showmenu all_custom_maps]
  44. newmenu maps_flags
  45. menutitle "maps with flags"
  46. __genmapitems $__maps_flags
  47. menuitem [] -1
  48. menuitem "Show all custom maps\i\3" [showmenu all_custom_maps]
  49. newmenu maps_tktf
  50. menutitle "maps with flags"
  51. __genmapitems $__maps_tktf
  52. menuitem [] -1
  53. menuitem "Show all custom maps\i\3" [showmenu all_custom_maps]
  54. //// Main > Play demo ////
  55. newmenu [Play demo]
  56. menudirlist demos dmo "demo $arg1"
  57. //// Watching demo //// (in-game menu that opens when pressing escape while watching a demo)
  58. newmenu [Watching demo]
  59. menuitem "Stop watching demo" stopdemo
  60. menuitem "Restart demo" [ demo $curdemofile ]
  61. menuitem "Rewind demo\i\3" [ showmenu rewind ]
  62. menuitemtextinput "Custom description: " [ getalias (concatword "demodesc_" $curdemofile) ] [ alias (concatword "demodesc_" $curdemofile) $arg1 ] [] 100
  63. menuitem "" -1
  64. menuitem "Watch other demo" [ stopdemo; closecurmenu; showmenu [Play demo] ]
  65. menuitem "Search demo\i\3" [ showmenu [search demo] ]
  66. menuitem "" -1
  67. menuitem "\f4Main menu\i\3" [ closecurmenu; showmenu main ]
  68. menuitem "\f3Quit AssaultCube" quit
  69. //// Watching demo > rewind ////
  70. newmenu rewind
  71. tempalias __setmr "" ; tempalias __rewind ""
  72. menuitemtextinput "Go to [min]: " [ result $__setmr ] [ __setmr = $arg1 ]
  73. menuitem "\f2Confirm" [ setmr $__setmr ]
  74. menuitem "" -1
  75. menuitemtextinput "Rewind (negative value to forward) [s]: " [ result $__rewind ] [ __rewind = $arg1 ]
  76. menuitem "\f2Confirm" [ rewind $__rewind ]
  77. menuitem "" -1
  78. menuitem "Cancel" 0
  79. //// Watching demo > search demo ////
  80. newmenu [search demo]
  81. alias __searchdemo ""
  82. menuitemtextinput "Part of demo name or description: " "result $__searchdemo" [ __searchdemo = $arg1 ]
  83. menuitem "\f2\t\t [ Search demo ]" [ showmenu [search specific demo] ]
  84. //// Watching demo > search demo > search specific demo ////
  85. newmenu [search specific demo]
  86. menudirlist demos dmo "demo $arg1" 0 __searchdemo
  87. //// Main > Help ////
  88. newmenu help
  89. menuitem "AssaultCube reference" [ showmenu reference ]
  90. menuitem "Search the reference" [ showmenu [Reference search] ]
  91. menuitem "Keyboard controls" [ showmenu Keyboard ]
  92. menuitem "View the FAQ\t\t\t\t\t\t" [ load_faq ; showmenu faq ]
  93. menuheader "" "...for further information/help see the README.\n\f4The readme can be found in the base AssaultCube directory."
  94. //// Main > Help > Reference search ////
  95. newmenu [Reference search]
  96. tempalias __docsearchstring ""
  97. menuitemtextinput "Search reference for: " "result $__docsearchstring" [ __docsearchstring = $arg1 ; showmenu [Reference search results] ]
  98. //// Main > Help > Reference search > Reference search results ////
  99. newmenu [Reference search results]
  100. menuinit [
  101. resetcurmenu
  102. menusynctabstops 1
  103. if (strlen $__docsearchstring) [
  104. menuheader "" (concatword "search results for keyword \f2" $__docsearchstring)
  105. looplist (docfind $__docsearchstring 1) [n l] [
  106. menuitem (concatword "\fs\f1" $n "\fr \t" (getdoc $n 1)) (concatword "saycommand /" $n)
  107. ]
  108. ] closecurmenu
  109. ]
  110. //// Main > Help > FAQ ////
  111. // see opt/faq.cfg
  112. //// Main > About ////
  113. newmenu about
  114. menuitem "AssaultCube Version 1.3" -1
  115. menuitem "" -1
  116. menuitem "AssaultCube has been created and nurtured by an international" -1
  117. menuitem "community of artists and developers since July 2004. We are" -1
  118. menuitem "people who love building fun games." -1
  119. menuitem "" -1
  120. menuitem "\f2We are looking for lead developers and lead artists to help us build" -1
  121. menuitem "\f2the next generation of AssaultCube for Windows, Mac, Linux and Mobile." -1
  122. menuitem "" -1
  123. menuitem "\f5Contributors in alphabetical order:" -1
  124. menuitem "" -1
  125. menuitem "\f0=== Artists ===" -1
  126. menuitem "Antiklimax, Archangel, BenWasHere, Brett, daMfr0, DaylixX," -1
  127. menuitem "DES Clan, DogDancing, ExodusS, fundog, Halo, HitmanDaz[MT]," -1
  128. menuitem "Humus, JCDPC, Jiba, Kothic, Lady NightHawk, leileilol," -1
  129. menuitem "Lewis Communications, makkE, Matthew Welch, MitaMAN, Nieb," -1
  130. menuitem "optus, Protox (PrimoTurbo), R4zor, RatBoy, RaZgRiZ, Ruthless," -1
  131. menuitem "Sanzo, Shadow, sitters, socksky, Snoosnoo, $N!P3R*, Steini, Toca," -1
  132. menuitem "Topher, Undead, wotwot, YesWeCamp (Husk)" -1
  133. menuitem "" -1
  134. menuitem "\f0=== Developers ===" -1
  135. menuitem "absinth, Arghvark, arkefiende, Brahma, Bukz, driAn, eihrul," -1
  136. menuitem "flowtron, GeneralDisarray, grenadier, KanslozeClown, Luc@s," -1
  137. menuitem "Mr.Floppy, RandumKiwi, Ronald_Reagan, SKB, stef, tempest," -1
  138. menuitem "V-Man, VonDrakula, wahnfred" -1
  139. menuitem "" -1
  140. menuitem "\f0=== Platform & Community ===" -1
  141. menuitem "Apollo, dtd, jamz, Medusa, X-Ray_Dog" -1
  142. menuitem "" -1
  143. menuitem "\f0=== Technology ===" -1
  144. menuitem "Cube Engine by aardappel, eihrul and others" -1
  145. menuitem "ENet Networking Library by eihrul" -1
  146. menuitem "GL4ES OpenGL translation by ptitSeb and others" -1
  147. menuitem "SDL2, SDL_Image, OggVorbis, OpenAL-Soft, zlib" -1
  148. menuitem "" -1
  149. menuitem "\f0=== Textures ===" -1
  150. menuitem "3D Cafe, Articool, Boeck, Chris Zastrow, Craig Fortune," -1
  151. menuitem "Digital Flux, DrunkenM, Golgotha team, GRsites, John Solo," -1
  152. menuitem "Kurt Keslar, Lemog 3D, NOCTUA graphics, Rohrschach," -1
  153. menuitem "www.afflict.net, www.imageafter.com, www.mayang.com," -1
  154. menuitem "www.openfootage.net" -1
  155. menuitem "" -1
  156. menuitem "\f0=== Sounds ===" -1
  157. menuitem "DCP, acclivity, Bahutan, cameronmusic, dommygee, droboide," -1
  158. menuitem "ermine, fonogeno, fresco, ignotus, livindead," -1
  159. menuitem "Lukas Zapletal & Ludek Horacek (Music), mich3d, mwl500," -1
  160. menuitem "nicStage, nofeedbak, NoiseCollector, ReWired, Rhedcerulean," -1
  161. menuitem "Syna Max, Tremulous team, vuzz, wildweasel, WIM," -1
  162. menuitem "www.soundsnap.com" -1
  163. menuitem "" -1
  164. menuitem "\f0=== Special Thanks===" -1
  165. menuitem "BrutalSystem, Chris Robinson, Rick Helmus, Verbal_, gibnum1k" -1
  166. menuitem "" -1
  167. menuitem "Please find the project history and licensing information at" -1
  168. menuitem "https://assault.cubers.net/docs/history.html" -1
  169. menuitem "https://assault.cubers.net/docs/license.html" -1
  170. menuitem "" -1
  171. menuitem "\f2We are looking for lead developers and lead artists to help us build" -1
  172. menuitem "\f2the next generation of AssaultCube for Windows, Mac, Linux and Mobile." -1
  173. // Create additional menus...
  174. exec config/menus_bot.cfg
  175. exec config/menus_edit.cfg
  176. exec config/menus_licenses.cfg
  177. exec config/menus_settings.cfg
  178. exec config/menus_auth.cfg
  179. exec config/menus_multiplayer.cfg
  180. exec config/menus_voicecom.cfg
  181. exec config/favourites.cfg