mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-11-07 05:21:12 +00:00
cb0538d0f2
Reverted this to a sane setting, as it was in the original games and in all other games I have ever seen, i.e. there is a global setting to enable mouse view, and a button to manually trigger it. The toggle can be easily handled by flipping the CVAR directly. The main problem here was that it triggered a few cases for mouse-less gameplay in the default case with a mouse present, because the mouseaim CVAR was no longer what the game expected. This misguided change seems to have originated in JFDuke but by now had propagated to all the other games as well, the code was in all 4 frontends.
1238 lines
34 KiB
Text
1238 lines
34 KiB
Text
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Main Memu
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
LISTMENU "MainMenu"
|
|
{
|
|
ScriptId 0
|
|
ifgame(Duke, Nam, WW2GI, Fury, Redneck, RedneckRides)
|
|
{
|
|
ifgame(fury)
|
|
{
|
|
position 40, 130, 60
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
position 160, 55, 115
|
|
centermenu
|
|
animatedtransition
|
|
}
|
|
ifgame(Duke, Nam, WW2GI, Fury)
|
|
{
|
|
class "Duke.MainMenu"
|
|
}
|
|
else
|
|
{
|
|
class "Redneck.MainMenu"
|
|
}
|
|
NativeTextItem "$MNU_NEWGAME", "n", "EpisodeMenu"
|
|
//NativeTextItem "$MNU_NEWGAME", "m", "MultiMenu" // In EDuke this replaces "New Game" when in networking mode. Kept here as a reminder.
|
|
ifgame(fury)
|
|
{
|
|
NativeTextItem "$MNU_CONTINUE", "l", "LoadGameMenu"
|
|
}
|
|
else
|
|
{
|
|
NativeTextItem "$MNU_LOADGAME", "l", "LoadGameMenu"
|
|
}
|
|
NativeTextItem "$MNU_OPTIONS", "o", "OptionsMenu"
|
|
NativeTextItem "$MNU_HELP", "h", "HelpMenu"
|
|
NativeTextItem "$MNU_CREDITS", "c", "CreditsMenu"
|
|
NativeTextItem "$MNU_QUITGAME", "q", "QuitMenu"
|
|
}
|
|
ifgame(Blood)
|
|
{
|
|
position 160, 45, 150
|
|
caption "Blood"
|
|
class "Blood.ListMenu"
|
|
centermenu
|
|
Linespacing 20
|
|
NativeTextItem "$MNU_NEWGAME", "n", "EpisodeMenu"
|
|
NativeTextItem "$MNU_MULTIPLAYER", "m", "MultiMenu"
|
|
NativeTextItem "$MNU_OPTIONS", "o", "OptionsMenu"
|
|
NativeTextItem "$MNU_LOADGAME", "l", "LoadGameMenu"
|
|
NativeTextItem "$MNU_HELP", "h", "HelpMenu"
|
|
NativeTextItem "$MNU_CREDITS", "c", "CreditsMenu"
|
|
NativeTextItem "$MNU_QUITGAME", "q", "QuitMenu"
|
|
}
|
|
ifgame(ShadowWarrior)
|
|
{
|
|
NativeTextItem "$MNU_NEWGAME", "n", "EpisodeMenu"
|
|
NativeTextItem "$MNU_LOADGAME", "l", "LoadGameMenu"
|
|
NativeTextItem "$MNU_SAVEGAME", "s", "SaveGameMenu"
|
|
NativeTextItem "$MNU_OPTIONS", "o", "OptionsMenu"
|
|
//NativeTextItem "$MNU_COOLSTUFF", "h", "HelpMenu" // Perfectly useless retro ads. :D
|
|
NativeTextItem "$MNU_CREDITS", "c", "CreditsMenu"
|
|
NativeTextItem "$MNU_QUITGAME", "q", "QuitMenu"
|
|
}
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Ingame Memu (same as above with a few more options)
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
LISTMENU "IngameMenu"
|
|
{
|
|
ScriptId 50
|
|
ifgame(Duke, Nam, WW2GI, Fury, Redneck, RedneckRides)
|
|
{
|
|
ifgame(fury)
|
|
{
|
|
position 40, 130, 60
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
position 160, 55, 115
|
|
centermenu
|
|
animatedtransition
|
|
}
|
|
ifgame(Duke, Nam, WW2GI, Fury)
|
|
{
|
|
class "Duke.MainMenu"
|
|
}
|
|
else
|
|
{
|
|
class "Redneck.MainMenu"
|
|
}
|
|
NativeTextItem "$MNU_NEWGAME", "n", "EpisodeMenu"
|
|
NativeTextItem "$MNU_SAVEGAME", "s", "SaveGameMenu"
|
|
NativeTextItem "$MNU_LOADGAME", "l", "LoadGameMenu"
|
|
NativeTextItem "$MNU_OPTIONS", "o", "OptionsMenu"
|
|
NativeTextItem "$MNU_HELP", "h", "HelpMenu"
|
|
NativeTextItem "$MNU_ENDGAME", "e", "QuitToMenu"
|
|
NativeTextItem "$MNU_QUITGAME", "q", "QuitMenu"
|
|
}
|
|
ifgame(Blood)
|
|
{
|
|
position 160, 45, 150
|
|
caption "Blood"
|
|
class "Blood.ListMenu"
|
|
centermenu
|
|
Linespacing 17
|
|
NativeTextItem "$MNU_NEWGAME", "n", "EpisodeMenu"
|
|
NativeTextItem "$MNU_OPTIONS", "o", "OptionsMenu"
|
|
NativeTextItem "$MNU_SAVEGAME", "s", "SaveGameMenu"
|
|
NativeTextItem "$MNU_LOADGAME", "l", "LoadGameMenu"
|
|
NativeTextItem "$MNU_HELP", "h", "HelpMenu"
|
|
NativeTextItem "$MNU_CREDITS", "c", "CreditsMenu"
|
|
NativeTextItem "$MNU_ENDGAME", "e", "QuitToMenu"
|
|
NativeTextItem "$MNU_QUITGAME", "q", "QuitMenu"
|
|
}
|
|
ifgame(ShadowWarrior)
|
|
{
|
|
linespacing 15
|
|
NativeTextItem "$MNU_NEWGAME", "n", "EpisodeMenu"
|
|
NativeTextItem "$MNU_LOADGAME", "l", "LoadGameMenu"
|
|
NativeTextItem "$MNU_SAVEGAME", "s", "SaveGameMenu"
|
|
NativeTextItem "$MNU_OPTIONS", "o", "OptionsMenu"
|
|
NativeTextItem "$MNU_CREDITS", "c", "CreditsMenu"
|
|
NativeTextItem "$MNU_QUITGAME", "q", "QuitMenu"
|
|
}
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Episode and skill menu are filled in programmatically
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
LISTMENU "EpisodeMenu"
|
|
{
|
|
ifgame(Duke, Nam, WW2GI, Fury, Redneck, RedneckRides) // Ion Fury does not use this menu.
|
|
{
|
|
caption "$MNU_SELECTEPISODE"
|
|
position 160, 48, 142
|
|
centermenu
|
|
fixedspacing 5
|
|
animatedtransition
|
|
ifgame(Duke, Nam, WW2GI, Fury)
|
|
{
|
|
class "Duke.ListMenu"
|
|
}
|
|
else
|
|
{
|
|
class "Redneck.ListMenu"
|
|
}
|
|
}
|
|
ifgame(blood)
|
|
{
|
|
caption "$MNU_EPISODES"
|
|
position 160, 45, 150
|
|
class "Blood.ListMenu"
|
|
centermenu
|
|
Linespacing 20
|
|
}
|
|
ScriptId 100
|
|
}
|
|
|
|
LISTMENU "SkillMenu"
|
|
{
|
|
ifgame(Duke, Nam, WW2GI, Fury, Redneck, RedneckRides)
|
|
{
|
|
ifgame(fury)
|
|
{
|
|
position 160, 55, 115
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
position 160, 55, 115
|
|
centermenu
|
|
animatedtransition
|
|
}
|
|
caption "$MNU_SELECTSKILL"
|
|
fixedspacing 5
|
|
ifgame(Duke, Nam, WW2GI, Fury)
|
|
{
|
|
class "Duke.ListMenu"
|
|
}
|
|
else
|
|
{
|
|
class "Redneck.ListMenu"
|
|
}
|
|
animatedtransition
|
|
}
|
|
ifgame(blood)
|
|
{
|
|
caption "$MNU_DIFFICULTY"
|
|
position 160, 60, 150
|
|
class "Blood.ListMenu"
|
|
centermenu
|
|
Linespacing 20
|
|
}
|
|
ScriptId 110
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// The custom menus are only supported by the EDuke32 frontend.
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
LISTMENU "CustomGameMenu"
|
|
{
|
|
caption "$MNU_NEWGAME"
|
|
position 160, 48, 142
|
|
ifgame(fury)
|
|
{
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
fixedspacing 5
|
|
animatedtransition
|
|
}
|
|
ScriptId 102
|
|
class "Duke.ListMenu"
|
|
centermenu
|
|
}
|
|
|
|
LISTMENU "CustomSubMenu1"
|
|
{
|
|
position 160, 48, 142
|
|
centermenu
|
|
ifgame(fury)
|
|
{
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
fixedspacing 5
|
|
animatedtransition
|
|
}
|
|
centermenu
|
|
ScriptId 103
|
|
class "Duke.ListMenu"
|
|
}
|
|
|
|
LISTMENU "CustomSubMenu2"
|
|
{
|
|
position 160, 48, 142
|
|
ifgame(fury)
|
|
{
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
fixedspacing 5
|
|
animatedtransition
|
|
}
|
|
centermenu
|
|
ScriptId 103
|
|
class "Duke.ListMenu"
|
|
}
|
|
|
|
LISTMENU "CustomSubMenu3"
|
|
{
|
|
position 160, 48, 142
|
|
ifgame(fury)
|
|
{
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
fixedspacing 5
|
|
animatedtransition
|
|
}
|
|
centermenu
|
|
ScriptId 103
|
|
class "Duke.ListMenu"
|
|
}
|
|
|
|
LISTMENU "CustomSubMenu4"
|
|
{
|
|
position 160, 48, 142
|
|
ifgame(fury)
|
|
{
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
fixedspacing 5
|
|
animatedtransition
|
|
}
|
|
centermenu
|
|
ScriptId 103
|
|
class "Duke.ListMenu"
|
|
}
|
|
|
|
LISTMENU "CustomSubMenu5"
|
|
{
|
|
position 160, 48, 142
|
|
ifgame(fury)
|
|
{
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
fixedspacing 5
|
|
animatedtransition
|
|
}
|
|
centermenu
|
|
ScriptId 103
|
|
class "Duke.ListMenu"
|
|
}
|
|
|
|
LISTMENU "CustomSubMenu6"
|
|
{
|
|
position 160, 48, 142
|
|
ifgame(fury)
|
|
{
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
fixedspacing 5
|
|
animatedtransition
|
|
}
|
|
centermenu
|
|
ScriptId 103
|
|
class "Duke.ListMenu"
|
|
}
|
|
|
|
LISTMENU "CustomSubMenu7"
|
|
{
|
|
position 160, 48, 142
|
|
ifgame(fury)
|
|
{
|
|
fixedspacing 2
|
|
}
|
|
else
|
|
{
|
|
fixedspacing 5
|
|
animatedtransition
|
|
}
|
|
centermenu
|
|
ScriptId 103
|
|
class "Duke.ListMenu"
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
//
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
ImageScroller "HelpMenu"
|
|
{
|
|
ifgame(Duke, Nam, WW2GI, Fury)
|
|
{
|
|
ImageItem "TEXTSTORY", 400
|
|
ImageItem "F1HELP", 401
|
|
class "Duke.ImageScrollerMenu"
|
|
ifgame(Duke, Nam, WW2GI)
|
|
{
|
|
animatedtransition
|
|
}
|
|
}
|
|
ifgame(Redneck, RedneckRides)
|
|
{
|
|
ImageItem "TEXTSTORY"
|
|
ImageItem "F1HELP"
|
|
ifgame(RedneckRides)
|
|
{
|
|
ImageItem "RRTILE1636"
|
|
}
|
|
animatedtransition
|
|
}
|
|
ifgame(blood)
|
|
{
|
|
class "Blood.ImageScrollerMenu"
|
|
// The duplication here is to integrate the alternating versions of HELP3
|
|
QAVAnimationItem "Help4.qav"
|
|
QAVAnimationItem "Help5.qav"
|
|
QAVAnimationItem "Help3.qav"
|
|
QAVAnimationItem "Help4.qav"
|
|
QAVAnimationItem "Help5.qav"
|
|
QAVAnimationItem "Help3b.qav"
|
|
}
|
|
ifgame(ShadowWarrior)
|
|
{
|
|
// The menu has no default binding, but if someone tries to open it anyway show the cool retro ads that were shipped with the game. :D
|
|
ImageItem "#5262"
|
|
ifshareware(false)
|
|
{
|
|
ImageItem "#5261"
|
|
}
|
|
}
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Credits menu. This is logically highly game specific.
|
|
// Note that this has been split into two submenus so that the engine
|
|
// credits can be handled in a generic fashion instead of having to define
|
|
// them for each game natively.
|
|
//
|
|
// Engine credits are now in the options menu, i.e. the generic part of the menu.
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
ImageScroller "CreditsMenu"
|
|
{
|
|
ifgame(Duke, Nam, WW2GI)
|
|
{
|
|
ImageItem "CREDITSTEXT1", 990
|
|
ImageItem "CREDITSTEXT2", 991
|
|
ImageItem "CREDITSTEXT3", 992
|
|
animatedtransition
|
|
class "Duke.ImageScrollerMenu"
|
|
}
|
|
ifgame(fury)
|
|
{
|
|
// Ion Fury does not have a separate credits menu, so if someone tries to open it anyway, use the same screens as "Help" but start on the one for the credits.
|
|
ImageItem "F1HELP", 401
|
|
ImageItem "TEXTSTORY", 400
|
|
class "Duke.ImageScrollerMenu"
|
|
}
|
|
ifgame(Redneck)
|
|
{
|
|
// no point putting this into the string table.
|
|
TextItem "ORIGINAL CONCEPT, DESIGN AND DIRECTION\n\nDREW MARKHAM", 80
|
|
TextItem "PRODUCED BY\n\nGREG GOODRICH", 80
|
|
TextItem "GAME PROGRAMMING\n\nRAFAEL PAIZ", 80
|
|
TextItem "ART DIRECTORS\n\nCLAIRE PRADERIE MAXX KAUFMAN ", 80
|
|
TextItem "LEAD LEVEL DESIGNER\nALEX MAYBERRY\n\nLEVEL DESIGN\nMAL BLACKWELL\nSVERRE KVERNMO", 80
|
|
TextItem "SENIOR ANIMATOR AND ARTIST\n\nJASON HOOVER", 80
|
|
TextItem "TECHNICAL DIRECTOR\n\nBARRY DEMPSEY", 80
|
|
TextItem "MOTION CAPTURE SPECIALIST AND\nCHARACTER ANIMATION\nAMIT DORON\n\nA.I. PROGRAMMING\nARTHUR DONAVAN\n\nADDITIONAL ANIMATION\nGEORGE KARL", 60
|
|
TextItem "CHARACTER DESIGN\nCORKY LEHMKUHL\n\nMAP PAINTERS\nVIKTOR ANTONOV\nMATTHIAS BEEGUER\nSTEPHAN BURLE\n\nSCULPTORS\nGEORGE ENGEL\nJAKE GARBER\nJEFF HIMMEL", 50
|
|
TextItem "CHARACTER VOICES\n\nLEONARD\nBURTON GILLIAM\n\nBUBBA, BILLY RAY, SKINNY OL' COOT\nAND THE TURD MINION\nDREW MARKHAM\n\nSHERIFF LESTER T. HOBBES\nMOJO NIXON\n\nALIEN VIXEN\nPEGGY JO JACOBS", 40
|
|
TextItem "SOUND DESIGN\nGARY BRADFIELD\n\nMUSIC\nMOJO NIXON\nTHE BEAT FARMERS\nTHE REVEREND HORTON HEAT\nCEMENT POND\n\nADDITIONAL SOUND EFFECTS\nJIM SPURGIN", 50
|
|
TextItem "MOTION CAPTURE ACTOR\nJ.P. MANOUX\n\nMOTION CAPTURE VIXEN\nSHAWN WOLFE", 80
|
|
TextItem "PRODUCTION ASSISTANCE\nMINERVA MAYBERRY\n\nNUTS AND BOLTS\nSTEVE GOLDBERG\nMARCUS HUTCHINSON\n\nBEAN COUNTING\nMAX YOSHIKAWA\n\nADMINISTRATIVE ASSISTANCE\nSERAFIN LEWIS", 50
|
|
TextItem "LOCATION MANAGER, LOUISIANA\nRICK SKINNER\n\nLOCATION SCOUT, LOUISIANA\nBRIAN BENOS\n\nPHOTOGRAPHER\nCARLOS SERRAO", 70
|
|
TextItem "ADDITIONAL 3D MODELING BY\n3 NAME 3D\nVIEWPOINT DATALABS INTERNATIONAL\n\nAUDIO RECORDED AT\nPACIFIC OCEAN POST, SANTA MONICA, C.A.\n\nCEMENT POND TRACKS RECORDED AT\nDREAMSTATE RECORDING, BURBANK, C.A.\n\nRECORDING ENGINEER\nDAVE AHLERT", 50
|
|
TextItem "3D BUILD ENGINE LICENSED FROM\n3D REALMS ENTERTAINMENT\n\nBUILD ENGINE AND RELATED TOOLS\nCREATED BY KEN SILVERMAN", 80
|
|
TextItem "FOR INTERPLAY\n\nLEAD TESTER\nDARRELL JONES\n\nTESTERS\nTIM ANDERSON\nERICK LUJAN\nTIEN TRAN", 60
|
|
TextItem "IS TECHS\nBILL DELK\nAARON MEYERS\n\nCOMPATIBILITY TECHS\nMARC DURAN\nDAN FORSYTH\nDEREK GIBBS\nAARON OLAIZ\nJACK PARKER", 60
|
|
TextItem "DIRECTOR OF COMPATIBILITY\nPHUONG NGUYEN\n\nASSISTANT QA DIRECTOR\nCOLIN TOTMAN\n\nQA DIRECTOR\nCHAD ALLISON", 70
|
|
TextItem "INTERPLAY PRODUCER\nBILL DUGAN\n\nINTERPLAY LINE PRODUCER\nCHRIS BENSON\n\nPRODUCT MANAGER\nJIM VEEVAERT\n\nPUBLIC RELATIONS\nERIKA PRICE", 50
|
|
TextItem "SPECIAL THANKS\n\nJIM GAUER\nPAUL VAIS\nSCOTT MILLER\nTODD REPLOGLE\nCHUCK BUECHE\nCARTER LIPSCOMB\nJOHN CONLEY\nDON MAGGI", 60
|
|
TextItem "EXTRA SPECIAL THANKS\n\nBRIAN FARGO", 80
|
|
TextItem "REDNECK RAMPAGE\n(c) 1997 XATRIX ENTERTAINMENT, INC.\n\nREDNECK RAMPAGE IS A TRADEMARK OF\nINTERPLAY PRODUCTIONS", 60
|
|
animatedtransition
|
|
}
|
|
ifgame(RedneckRides)
|
|
{
|
|
TextItem "ORIGINAL CONCEPT, DESIGN AND DIRECTION\n\nDREW MARKHAM", 80
|
|
TextItem "ART DIRECTION AND ADDITIONAL DESIGN\n\nCORKY LEHMKUHL", 80
|
|
TextItem "PRODUCED BY\n\nGREG GOODRICH", 80
|
|
TextItem "GAME PROGRAMMING\n\nJOSEPH AURILI", 80
|
|
TextItem "ORIGINAL GAME PROGRAMMING\n\nRAFAEL PAIZ", 80
|
|
TextItem "LEVEL DESIGN\n\nRHETT BALDWIN & AARON BARBER", 80
|
|
TextItem "ORIGINAL ART DIRECTION AND SUPPORT\n\nMAXX KAUFMAN & CLAIRE PRADERIE-MARKHAM", 80
|
|
TextItem "COMPUTER GRAPHICS SUPERVISOR &\nCHARACTER ANIMATION DIRECTION\n\nBARRY DEMPSEY", 80
|
|
TextItem "SENIOR ANIMATOR & MODELER\n\nJASON HOOVER", 80
|
|
TextItem "CHARACTER ANIMATION &\nMOTION CAPTURE SPECIALIST\n\nAMIT DORON", 80
|
|
TextItem "SOUND DESIGN &\nMUSIC PRODUCTION COORDINATION\n\nGARY BRADFIELD", 80
|
|
TextItem "INTRODUCTION ANIMATION\n\nDOMINIQUE DROZDZ", 80
|
|
TextItem "ARTIST\n\nMATTHIAS BEEGUER", 80
|
|
TextItem "ADDITIONAL ART\n\nVIKTOR ANTONOV", 80
|
|
TextItem "PRODUCTION COORDINATOR\n\nVICTORIA SYLVESTER", 80
|
|
TextItem "CHARACTER VOICES\n\nLEONARD\nBURTON GILLIAM\n\nDAISY MAE\nTARA CHARENDOFF\n\nBUBBA, BILLY RAY, SKINNY OL' COOT,\nFRANK THE BIKER, THE TURD MINION\n& ALL OTHER VARIOUS RAMBLINGS...\nDREW MARKHAM", 40
|
|
TextItem "SPECIAL APPEARENCE BY\n\nSHERIFF LESTER T. HOBBES\nMOJO NIXON\n\nALIEN VIXEN\nPEGGY JO JACOBS", 70
|
|
TextItem "REDNECK RAMPAGE TITLE TRACK & CYBERSEX\nWRITTEN & PERFORMED BY\nMOJO NIXON\n\n(c) MUFFIN'STUFFIN' MUSIC (BMI)\nADMINISTERED BY BUG.", 70
|
|
TextItem "MUSIC\n\nDISGRACELAND\nTINY D & THE SOFA KINGS\n\nBANJO AND GUITAR PICKIN\nJOHN SCHLOCKER\nHOWARD YEARWOOD", 60
|
|
TextItem "RECORDING ENGINEER\nDAVE AHLERT\n\nRECORDING ASSISTANCE\nJEFF GILBERT", 80
|
|
TextItem "MOTION CAPTURE ACTOR\nJ.P. MANOUX\n\nMOTION CAPTURE ACTRESS\nSHAWN WOLFE", 80
|
|
TextItem "THIS GAME COULD NOT HAVE BEEN MADE WITHOUT\nALEX MAYBERRY\nMAL BLACKWELL\n\nNUTS AND BOLTS\nSTEVE GOLDBERG\n\nBEAN COUNTING\nMAX YOSHIKAWA\n\nADMINISTRATIVE ASSISTANCE\nMINERVA MAYBERRY", 50
|
|
TextItem "FOR INTERPLAY\n\nPRODUCER\nBILL DUGAN\n\nLINE PRODUCER\nCHRIS BENSON\n\nLEAD TESTER\nDARRELL JONES", 60
|
|
TextItem "TESTERS\n\nTIM ANDERSON\nPRIMO PULANCO\nMARK MCCARTY\nBRIAN AXLINE", 70
|
|
TextItem "PRODUCTION BABY\n\nPAULINE MARIE MARKHAM", 80
|
|
TextItem "ORIGINAL PRODUCTION BABY\n\nALYSON KAUFMAN", 80
|
|
TextItem "3D BUILD ENGINE LICENSED FROM\n3D REALMS ENTERTAINMENT\n\nBUILD ENGINE AND RELATED TOOLS\nCREATED BY KEN SILVERMAN", 80
|
|
TextItem "SPECIAL THANKS\n\nSCOTT MILLER\nGEORGE BROUSSARD", 80
|
|
TextItem "EXTRA SPECIAL THANKS\n\nBRIAN FARGO", 80
|
|
TextItem "REDNECK RAMPAGE RIDES AGAIN\n(c) 1998 XATRIX ENTERTAINMENT, INC.\n\nREDNECK RAMPAGE RIDES AGAIN\nIS A TRADEMARK OF\nINTERPLAY PRODUCTIONS", 70
|
|
animatedtransition
|
|
}
|
|
ifgame(blood)
|
|
{
|
|
class "Blood.ImageScrollerMenu"
|
|
QAVAnimationItem "Credits.qav"
|
|
}
|
|
ifgame(ShadowWarrior)
|
|
{
|
|
ifshareware(true)
|
|
{
|
|
ImageItem "#5110"
|
|
ImageItem "#5112"
|
|
}
|
|
ImageItem "#5111"
|
|
ImageItem "#5118"
|
|
ImageItem "#4979"
|
|
ImageItem "#5113"
|
|
}
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Base definition for load game menu. Only the configurable part is done here
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
ListMenu "LoadGameMenu"
|
|
{
|
|
Caption "$MNU_LOADGAME"
|
|
Position 0, 40
|
|
Class "LoadMenu" // uses its own implementation
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Base definition for save game menu. Only the configurable part is done here
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
ListMenu "SaveGameMenu"
|
|
{
|
|
Caption "$MNU_SAVEGAME"
|
|
Position 0, 40
|
|
Class "SaveMenu" // uses its own implementation
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// The generic options menus start here
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
OptionValue "YesNo"
|
|
{
|
|
0, "$TXT_NO"
|
|
1, "$TXT_YES"
|
|
}
|
|
|
|
OptionValue "NoYes"
|
|
{
|
|
0, "$TXT_YES"
|
|
1, "$TXT_NO"
|
|
}
|
|
|
|
OptionValue "OnOff"
|
|
{
|
|
0, "$OPTVAL_OFF"
|
|
1, "$OPTVAL_ON"
|
|
}
|
|
|
|
OptionValue "OffOn"
|
|
{
|
|
0, "$OPTVAL_ON"
|
|
1, "$OPTVAL_OFF"
|
|
}
|
|
|
|
OptionValue AutoOffOn
|
|
{
|
|
-1, "$OPTVAL_AUTO"
|
|
0, "$OPTVAL_OFF"
|
|
1, "$OPTVAL_ON"
|
|
}
|
|
|
|
OptionMenuSettings
|
|
{
|
|
Linespacing 17
|
|
// todo: implement color themes that fit the games
|
|
}
|
|
|
|
DefaultOptionMenu
|
|
{
|
|
Position 85
|
|
}
|
|
|
|
OptionMenu "OptionsMenu"
|
|
{
|
|
Caption "$MNU_OPTIONS"
|
|
Submenu "$OPTMNU_CONTROLS", "CustomizeControls"
|
|
Submenu "$OPTMNU_MOUSE", "MouseOptions"
|
|
Submenu "$OPTMNU_JOYSTICK", "JoystickOptions"
|
|
StaticText " "
|
|
Submenu "$OPTMNU_PLAYER", "NewPlayerMenu"
|
|
Submenu "$OPTMNU_SOUND", "SoundOptions"
|
|
Submenu "$OPTMNU_DISPLAY", "VideoOptions"
|
|
Submenu "$OPTMNU_VIDEO", "VideoModeMenu"
|
|
Submenu "$OPTMNU_GAMEPLAY", "GameplayOptions"
|
|
Submenu "$OPTMNU_MISCELLANEOUS", "MiscOptions"
|
|
StaticText " "
|
|
SafeCommand "$OPTMNU_DEFAULTS", "reset2defaults"
|
|
SafeCommand "$OPTMNU_RESETTOSAVED", "reset2saved"
|
|
Command "$OPTMNU_CONSOLE", "menuconsole"
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Controls Menu
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
OptionMenu "CustomizeControls"// protected
|
|
{
|
|
Title "$CNTRLMNU_TITLE"
|
|
|
|
Submenu "$CNTRLMNU_ACTION" , "ActionControlsMenu"
|
|
Submenu "$CNTRLMNU_CHAT" , "ChatControlsMenu"
|
|
Submenu "$CNTRLMNU_WEAPONS" , "WeaponsControlMenu"
|
|
Submenu "$CNTRLMNU_INVENTORY" , "InventoryControlsMenu"
|
|
Submenu "$CNTRLMNU_OTHER" , "OtherControlsMenu"
|
|
//Submenu "$MAPCNTRLMNU_CONTROLS" , "MapControlsMenu" // todo after thorough cleanup
|
|
}
|
|
|
|
OptionMenu "ActionControlsMenu"// protected
|
|
{
|
|
Title "$CNTRLMNU_ACTION_TITLE"
|
|
ScrollTop 2
|
|
StaticTextSwitchable "$CNTRLMNU_SWITCHTEXT1", "$CNTRLMNU_SWITCHTEXT2", "ControlMessage"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_ATTACK" , "+fire"
|
|
ifgame(Blood, Duke, Nam, WW2GI, Fury)
|
|
{
|
|
Control "$CNTRLMNU_ALTATTACK" , "+alt_fire"
|
|
}
|
|
ifgame(Duke, Nam, WW2GI, Fury, ShadowWarrior)
|
|
{
|
|
Control "$CNTRLMNU_ALTWEAPON" , "+alt_weapon"
|
|
}
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_USE" , "+open"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_FORWARD" , "+move_forward"
|
|
Control "$CNTRLMNU_BACK" , "+move_backward"
|
|
Control "$CNTRLMNU_MOVELEFT" , "+strafe_left"
|
|
Control "$CNTRLMNU_MOVERIGHT" , "+strafe_right"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_TURNLEFT" , "+turn_left"
|
|
Control "$CNTRLMNU_TURNRIGHT" , "+turn_right"
|
|
Control "$CNTRLMNU_TURN180" , "+turn_around"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_JUMP" , "+jump"
|
|
Control "$CNTRLMNU_CROUCH" , "+crouch"
|
|
ifgame(Duke, Nam, WW2GI, Fury, Redneck, RedneckRides)
|
|
{
|
|
// Fixme: Make this work in all games
|
|
Control "$CNTRLMNU_TOGGLECROUCH" , "+toggle_crouch"
|
|
}
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_MOUSELOOK" , "+mouse_aiming"
|
|
Control "$CNTRLMNU_MLOOKTOGGLE" , "togglemouseaim"
|
|
|
|
Control "$CNTRLMNU_AIMUP" , "+aim_up"
|
|
Control "$CNTRLMNU_AIMDOWN" , "+aim_down"
|
|
Control "$CNTRLMNU_LOOKUP" , "+look_up"
|
|
Control "$CNTRLMNU_LOOKDOWN" , "+look_down"
|
|
ifgame(Duke, Nam, WW2GI, Fury, Redneck, RedneckRides)
|
|
{
|
|
Control "$CNTRLMNU_LOOKLEFT" , "+look_left"
|
|
Control "$CNTRLMNU_LOOKRIGHT" , "+look_right"
|
|
}
|
|
Control "$CNTRLMNU_CENTERVIEW" , "+center_view"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_RUN" , "+run"
|
|
Control "$CNTRLMNU_TOGGLERUN" , "toggle cl_autorun"
|
|
Control "$CNTRLMNU_STRAFE" , "+strafe"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_SCOREBOARD" , "+show_dukematch_scores"
|
|
}
|
|
|
|
OptionMenu "ChatControlsMenu"// protected
|
|
{
|
|
Title "$CNTRLMNU_CHAT_TITLE"
|
|
ScrollTop 2
|
|
StaticTextSwitchable "$CNTRLMNU_SWITCHTEXT1", "$CNTRLMNU_SWITCHTEXT2", "ControlMessage"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_SAY" , "+send_message"
|
|
}
|
|
|
|
OptionMenu "WeaponsControlMenu"// protected
|
|
{
|
|
Title "$CNTRLMNU_WEAPONS_TITLE"
|
|
ScrollTop 2
|
|
StaticTextSwitchable "$CNTRLMNU_SWITCHTEXT1", "$CNTRLMNU_SWITCHTEXT2", "ControlMessage"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_NEXTWEAPON" , "+next_weapon"
|
|
Control "$CNTRLMNU_PREVIOUSWEAPON" , "+previous_weapon"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_SLOT1" , "+weapon_1"
|
|
Control "$CNTRLMNU_SLOT2" , "+weapon_2"
|
|
Control "$CNTRLMNU_SLOT3" , "+weapon_3"
|
|
Control "$CNTRLMNU_SLOT4" , "+weapon_4"
|
|
Control "$CNTRLMNU_SLOT5" , "+weapon_5"
|
|
Control "$CNTRLMNU_SLOT6" , "+weapon_6"
|
|
Control "$CNTRLMNU_SLOT7" , "+weapon_7"
|
|
Control "$CNTRLMNU_SLOT8" , "+weapon_8"
|
|
Control "$CNTRLMNU_SLOT9" , "+weapon_9"
|
|
Control "$CNTRLMNU_SLOT0" , "+weapon_10"
|
|
StaticText ""
|
|
Control "$CNTRLMNU_HOLSTER" , "+holster_weapon"
|
|
ifgame(Fury)
|
|
{
|
|
Control "$CNTRLMNU_RELOAD" , "+steroids"
|
|
}
|
|
ifgame(Duke, Nam, WW2GI, Fury)
|
|
{
|
|
Control "$CNTRLMNU_QUICKKICK" , "+quick_kick"
|
|
}
|
|
|
|
ifgame(Redneck, RedneckRides)
|
|
{
|
|
Control "$CNTRLMNU_PEE" , "+quick_kick"
|
|
}
|
|
ifgame(Blood)
|
|
{
|
|
Control "$CNTRLMNU_PROXIMITYBOMBS","+proximitybombs"
|
|
Control "$CNTRLMNU_REMOTEBOMBS" ,"+remotebombs"
|
|
}
|
|
ifgame(ShadowWarrior)
|
|
{
|
|
Control "$CNTRLMNU_SMOKEBOMB","+smoke_bomb"
|
|
Control "$CNTRLMNU_GASBOMB" ,"+gas_bomb"
|
|
Control "$CNTRLMNU_FLASHBOMB","+flash_bomb"
|
|
Control "$CNTRLMNU_CALTROPS" ,"+caltrops"
|
|
}
|
|
|
|
}
|
|
|
|
OptionMenu "InventoryControlsMenu"// protected
|
|
{
|
|
Title "$CNTRLMNU_INVENTORY_TITLE"
|
|
ScrollTop 2
|
|
StaticTextSwitchable "$CNTRLMNU_SWITCHTEXT1", "$CNTRLMNU_SWITCHTEXT2", "ControlMessage"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_USEITEM" , "+inventory"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_NEXTITEM" , "+inventory_right"
|
|
Control "$CNTRLMNU_PREVIOUSITEM" , "+inventory_left"
|
|
|
|
ifgame(Duke)
|
|
{
|
|
StaticText ""
|
|
Control "$CNTRLMNU_HOLODUKE" , "+holo_duke"
|
|
Control "$CNTRLMNU_JETPACK" , "+jetpack"
|
|
Control "$CNTRLMNU_NIGHTVISION" , "+nightvision"
|
|
Control "$CNTRLMNU_MEDKIT" , "+medkit"
|
|
Control "$CNTRLMNU_STEROIDS" , "+steroids"
|
|
}
|
|
ifgame(Fury)
|
|
{
|
|
StaticText ""
|
|
Control "$CNTRLMNU_RADAR" , "+nightvision"
|
|
Control "$CNTRLMNU_MEDKIT" , "+medkit"
|
|
}
|
|
ifgame(Nam)
|
|
{
|
|
StaticText ""
|
|
Control "$CNTRLMNU_HOLOSOLDIER" , "+holo_duke"
|
|
Control "$CNTRLMNU_HUEY" , "+jetpack"
|
|
Control "$CNTRLMNU_NIGHTVISION" , "+nightvision"
|
|
Control "$CNTRLMNU_MEDKIT" , "+medkit"
|
|
Control "$CNTRLMNU_TANKMODE" , "+steroids"
|
|
}
|
|
ifgame(WW2GI)
|
|
{
|
|
StaticText ""
|
|
Control "$CNTRLMNU_FIRE MISSION" , "+holo_duke"
|
|
Control "$CNTRLMNU_NIGHTVISION" , "+nightvision"
|
|
Control "$CNTRLMNU_MEDKIT" , "+medkit"
|
|
Control "$CNTRLMNU_SMOKES" , "+steroids"
|
|
}
|
|
ifgame(Redneck, RedneckRides)
|
|
{
|
|
StaticText ""
|
|
Control "$CNTRLMNU_BEER" , "+holo_duke"
|
|
Control "$CNTRLMNU_COWPIE" , "+jetpack"
|
|
Control "$CNTRLMNU_YEEHAA" , "+nightvision"
|
|
Control "$CNTRLMNU_WHISKEY" , "+medkit"
|
|
Control "$CNTRLMNU_MOONSHINE" , "+steroids"
|
|
}
|
|
ifgame(Blood)
|
|
{
|
|
StaticText ""
|
|
Control "$CNTRLMNU_CRYSTALBALL" , "+crystalball"
|
|
Control "$CNTRLMNU_JUMPBOOTS" , "+jetpack"
|
|
Control "$CNTRLMNU_BEASTVISION" , "+nightvision"
|
|
Control "$CNTRLMNU_MEDKIT" , "+medkit"
|
|
}
|
|
ifgame(ShadowWarrior)
|
|
{
|
|
StaticText ""
|
|
Control "$CNTRLMNU_NIGHTVISION" , "+nightvision"
|
|
Control "$CNTRLMNU_MEDKIT" , "+medkit"
|
|
}
|
|
}
|
|
|
|
OptionMenu "OtherControlsMenu"// protected
|
|
{
|
|
Title "$CNTRLMNU_OTHER_TITLE"
|
|
ScrollTop 2
|
|
StaticTextSwitchable "$CNTRLMNU_SWITCHTEXT1", "$CNTRLMNU_SWITCHTEXT2", "ControlMessage"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_AUTOMAP" , "+map"
|
|
Control "$MAPCNTRLMNU_TOGGLEFOLLOW","+map_follow_mode"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_CHASECAM" , "+third_person_view"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_SCREENSHOT" , "screenshot"
|
|
Control "$CNTRLMNU_CONSOLE" , "toggleconsole"
|
|
Control "$CNTRLMNU_PAUSE" , "pause"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_DISPLAY_INC" , "+enlarge_Screen"
|
|
Control "$CNTRLMNU_DISPLAY_DEC" , "+shrink_screen"
|
|
Control "$CNTRLMNU_TOGGLE_MESSAGES" , "togglemessages"
|
|
Control "$CNTRLMNU_ADJUST_GAMMA" , "bumpgamma"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_OPEN_HELP" , "openhelpmenu"
|
|
Control "$CNTRLMNU_OPEN_SAVE" , "opensavemenu"
|
|
Control "$CNTRLMNU_OPEN_LOAD" , "openloadmenu"
|
|
Control "$CNTRLMNU_OPEN_OPTIONS" , "openmenu optionsmenu"
|
|
Control "$CNTRLMNU_OPEN_DISPLAY" , "openmenu displayoptions"
|
|
Control "$CNTRLMNU_EXIT_TO_MAIN" , "menu_endgame"
|
|
Control "$CNTRLMNU_MENU_QUIT" , "menu_quit"
|
|
|
|
StaticText ""
|
|
Control "$CNTRLMNU_QUICKSAVE" , "quicksave"
|
|
Control "$CNTRLMNU_QUICKLOAD" , "quickload"
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Mouse Menu
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
OptionValue "Corners"
|
|
{
|
|
-1, "$OPTVAL_OFF"
|
|
0, "$OPTVAL_UPPERLEFT"
|
|
1, "$OPTVAL_UPPERRIGHT"
|
|
2, "$OPTVAL_LOWERLEFT"
|
|
3, "$OPTVAL_LOWERRIGHT"
|
|
}
|
|
|
|
OptionValue "MenuMouse"
|
|
{
|
|
0, "$TXT_NO"
|
|
1, "$TXT_YES"
|
|
2, "$OPTVAL_TOUCHSCREENLIKE"
|
|
}
|
|
|
|
OptionString "Cursors"
|
|
{
|
|
"None", "$OPTVAL_DEFAULT"
|
|
"cursor", "$OPTSTR_SIMPLEARROW"
|
|
"-", "$OPTSTR_SYSTEMCURSOR"
|
|
}
|
|
|
|
OptionMenu "MouseOptions" //protected
|
|
{
|
|
Title "$MOUSEMNU_TITLE"
|
|
Option "$MOUSEMNU_ENABLEMOUSE", "in_mouse", "YesNo"
|
|
Option "$MOUSEMNU_MOUSEINMENU", "m_use_mouse", "MenuMouse", "use_mouse"
|
|
Option "$MOUSEMNU_SHOWBACKBUTTON", "m_show_backbutton", "Corners", "use_mouse"
|
|
// todo Option "$MOUSEMNU_CURSOR", "vid_cursor", "Cursors"
|
|
StaticText ""
|
|
Slider "$MOUSEMNU_SENSITIVITY", "mouse_sensitivity", 0.5, 2.5, 0.1
|
|
Option "$MOUSEMNU_NOPRESCALE", "m_noprescale", "NoYes"
|
|
Option "$MOUSEMNU_SMOOTHMOUSE", "in_mousesmoothing", "YesNo"
|
|
StaticText ""
|
|
Slider "$MOUSEMNU_TURNSPEED", "in_mousescalex", -4, 4, 0.2
|
|
Slider "$MOUSEMNU_MOUSELOOKSPEED", "in_mousescaley", -4, 4, 0.2
|
|
//Slider "$MOUSEMNU_FORWBACKSPEED", "in_mouseforward", 0, 2.5, 0.1
|
|
//Slider "$MOUSEMNU_STRAFESPEED", "in_mouseside", 0, 2.5, 0.1
|
|
StaticText ""
|
|
Option "$MOUSEMNU_ALWAYSMOUSELOOK", "in_mousemode", "OnOff"
|
|
Option "$MOUSEMNU_INVERTMOUSE", "in_mouseflip", "OnOff"
|
|
// Do we need this? Option "$MOUSEMNU_LOOKSTRAFE", "lookstrafe", "OnOff"
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Joystick Menu
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
OptionMenu "JoystickOptions"//Defaults" //protected
|
|
{
|
|
Title "$JOYMNU_OPTIONS"
|
|
Option "$JOYMNU_ENABLE", "use_joystick", "YesNo"
|
|
Option "$JOYMNU_NOMENU", "m_blockcontrollers", "YesNo"
|
|
/*IfOption(Windows)
|
|
{
|
|
Option "$JOYMNU_DINPUT", "joy_dinput", "YesNo"
|
|
Option "$JOYMNU_XINPUT", "joy_xinput", "YesNo"
|
|
Option "$JOYMNU_PS2", "joy_ps2raw", "YesNo"
|
|
}*/
|
|
StaticText ""
|
|
StaticTextSwitchable "$JOYMNU_NOCON", "$JOYMNU_CONFIG", "ConfigureMessage"
|
|
StaticTextSwitchable " ", "$JOYMNU_DISABLED1", "ConnectMessage1"
|
|
StaticTextSwitchable " ", "$JOYMNU_DISABLED2", "ConnectMessage2"
|
|
|
|
// The rest will be filled in by joystick code if devices get connected or disconnected
|
|
}
|
|
|
|
OptionMenu "JoystickOptions1" //protected
|
|
{
|
|
Title "$JOYMNU_OPTIONS"
|
|
}
|
|
|
|
OptionValue "JoyAxisMapNames"
|
|
{
|
|
-1, "$OPTVAL_NONE"
|
|
0, "$OPTVAL_TURNING"
|
|
1, "$OPTVAL_LOOKINGUPDOWN"
|
|
2, "$OPTVAL_MOVINGFORWARD"
|
|
3, "$OPTVAL_STRAFING"
|
|
4, "$OPTVAL_MOVINGUPDOWN"
|
|
}
|
|
|
|
OptionValue "Inversion"
|
|
{
|
|
0, "$OPTVAL_NOTINVERTED"
|
|
1, "$OPTVAL_INVERTED"
|
|
}
|
|
|
|
OptionMenu "JoystickConfigMenu" //protected
|
|
{
|
|
Title "$JOYMNU_TITLE"
|
|
Class "JoystickConfigMenu"
|
|
// Will be filled in by joystick code.
|
|
}
|
|
|
|
|
|
OptionValue "PlayerColors"
|
|
{
|
|
0, "$OPTVAL_AUTO"
|
|
1, "$TXT_COLOR_BLUE"
|
|
2, "TXT_COLOR_RED"
|
|
3, "TXT_COLOR_GREEN"
|
|
4, "TXT_COLOR_GRAY"
|
|
5, "TXT_COLOR_DARKGRAY"
|
|
6, "TXT_COLOR_DARKGREEN"
|
|
7, "TXT_COLOR_BROWN"
|
|
8, "TXT_COLOR_DARKBLUE"
|
|
9, "TXT_COLOR_LIGHTRED"
|
|
10, "TXT_COLOR_YELLOW"
|
|
}
|
|
|
|
OptionValue "PlayerTeam"
|
|
{
|
|
0, "$TXT_COLOR_BLUE"
|
|
1, "TXT_COLOR_RED"
|
|
2, "TXT_COLOR_GREEN"
|
|
3, "TXT_COLOR_GRAY"
|
|
}
|
|
|
|
OptionValue "Gender"
|
|
{
|
|
0, "$OPTVAL_MALE"
|
|
1, "$OPTVAL_FEMALE"
|
|
2, "$OPTVAL_NEUTRAL"
|
|
3, "$OPTVAL_OTHER"
|
|
}
|
|
|
|
|
|
OptionMenu "NewPlayerMenu" //protected
|
|
{
|
|
Title "$MNU_PLAYERSETUP"
|
|
TextField "$PLYRMNU_NAME", playername
|
|
Option "$PLYRMNU_TEAM", "playerteam", "PlayerTeam"
|
|
Option "$PLYRMNU_PLAYERCOLOR", "playercolor", "PlayerColors"
|
|
Option "$PLYRMNU_PLAYERGENDER", "playergender", "Gender"
|
|
Submenu "$PLRMNU_TAUNTS", "TauntsMenu"
|
|
Class "NewPlayerMenu"
|
|
}
|
|
|
|
OptionMenu "TauntsMenu" //protected
|
|
{
|
|
Title "$PLRMNU_TAUNTS"
|
|
TextField "1", "combatmacro0"
|
|
TextField "2", "combatmacro1"
|
|
TextField "3", "combatmacro2"
|
|
TextField "4", "combatmacro3"
|
|
TextField "5", "combatmacro4"
|
|
TextField "6", "combatmacro5"
|
|
TextField "7", "combatmacro6"
|
|
TextField "8", "combatmacro7"
|
|
TextField "9", "combatmacro8"
|
|
TextField "10", "combatmacro9"
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Game Setup
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
OptionValue "AimMode"
|
|
{
|
|
0, "$OPTVAL_NEVER"
|
|
1, "$OPTVAL_ALWAYS"
|
|
2, "$OPTRAL_HITSCAN"
|
|
}
|
|
|
|
OptionValue "RunMode"
|
|
{
|
|
0, "$PLRMNU_TOGGLE"
|
|
1, "$PLRMNU_OVERRIDE"
|
|
}
|
|
|
|
OptionValue "WeapSwitch"
|
|
{
|
|
0, "$OPTVAL_NEVER"
|
|
1, "$PLRMNU_IFNEW"
|
|
3, "$PLRMNU_PREFERRED"
|
|
}
|
|
|
|
|
|
OptionMenu GameplayOptions //protected
|
|
{
|
|
Position -35
|
|
Title "$GMPLYMNU_TITLE"
|
|
Option "$PLRMNU_AUTOAIM", "cl_autoaim", "AimMode"
|
|
Option "$PLRMNU_ALWAYSRUN", "cl_autorun", "OnOff"
|
|
Option "$PLRMNU_RUNMODE", "cl_runmode", "RunMode"
|
|
Option "$PLRMNU_EQUIP", "cl_weaponswitch", "WeapSwitch"
|
|
Option "$PLRMNU_PLOCK", "adult_lockout", "OnOff" // I won't bother password protecting this piece of window dressing
|
|
// StaticText ""
|
|
// Option "Record Demo", "m_recstat", "OnOff"
|
|
// Submenu "Cheats" "CheatsMenu
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Display options
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
OptionValue "FilterModes"
|
|
{
|
|
0, "$OPTVAL_NONE"
|
|
2, "$OPTVAL_NONENEARESTMIPMAP"
|
|
4, "$OPTVAL_NONELINEARMIPMAP"
|
|
6, "$OPTVAL_NONETRILINEAR"
|
|
3, "$OPTVAL_LINEAR_2"
|
|
1, "$OPTVAL_BILINEAR"
|
|
5, "$OPTVAL_TRILINEAR"
|
|
}
|
|
|
|
OptionValue "Anisotropy"
|
|
{
|
|
1, "$OPTVAL_OFF"
|
|
2, "$OPTVAL_2X"
|
|
4, "$OPTVAL_4X"
|
|
8, "$OPTVAL_8X"
|
|
16, "$OPTVAL_16X"
|
|
}
|
|
|
|
OptionMenu "VideoOptions" //protected
|
|
{
|
|
Title "$DSPLYMNU_TITLE"
|
|
|
|
Submenu "$OPTMNU_HUD", "HUDOptions"
|
|
Submenu "$OPTMNU_POLYMOST", "PolymostOptions"
|
|
|
|
Slider "$DSPLYMNU_GAMMA", "vid_gamma", 0.75, 3.0, 0.05, 2
|
|
Slider "$DSPLYMNU_BRIGHTNESS", "vid_brightness", -0.8,0.8, 0.05,2
|
|
Slider "$DSPLYMNU_CONTRAST", "vid_contrast", 0.1, 3.0, 0.1
|
|
Slider "$DSPLYMNU_SATURATION", "vid_saturation", -3.0, 3.0, 0.25, 2
|
|
|
|
StaticText ""
|
|
Option "$DSPLYMNU_VOXELS", "r_voxels", "OnOff"
|
|
StaticText ""
|
|
Slider "$DSPLYMNU_FOV", "r_fov", 60, 130, 10, 1
|
|
|
|
StaticText ""
|
|
Option "$GLTEXMNU_TEXFILTER", hw_texfilter, "FilterModes"
|
|
Option "$GLTEXMNU_ANISOTROPIC", hw_anisotropy, "Anisotropy"
|
|
}
|
|
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// HUD options
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
OptionValue "HUDMessages"
|
|
{
|
|
0, "$OPTVAL_OFF"
|
|
1, "$OPTVAL_ON"
|
|
2, "$DSPLYMNU_GENERIC"
|
|
}
|
|
|
|
OptionMenu "HUDOptions" //protected
|
|
{
|
|
Title "$OPTMNU_HUD"
|
|
|
|
Slider "$DSPLYMNU_SCREENSIZE", "hud_size", 3.0, 12.0, 1.0, 0
|
|
ifgame(duke, nam, ww2gi, redneck, redneckrides, fury) // Fixme: The scaling really needs to be taken out of the game code.
|
|
{
|
|
Slider "$DSPLYMNU_SBSCALE", "hud_scale", 0.3, 1.0, 0.1, 2
|
|
}
|
|
Option "$DSPLYMNU_LEVELSTATS", "hud_stats", "OnOff"
|
|
ifgame(duke, nam, ww2gi, redneck, redneckrides, fury)
|
|
{
|
|
Slider "$DSPLYMNU_TEXTSCALE", "hud_textscale", 0.3, 1.0, 0.1, 2
|
|
}
|
|
StaticText ""
|
|
Option "$DSPLYMNU_MESSAGES", "hud_messages", "HudMessages"
|
|
StaticText ""
|
|
Option "$DSPLYMNU_CROSSHAIR", "cl_crosshair", OnOff
|
|
Slider "$DSPLYMNU_CROSSHAIRSCALE", "cl_crosshairscale", 50, 100, 10, 1
|
|
}
|
|
|
|
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// No multiplayer support for now, but kept for documentation.
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
LISTMENU "MultiMenu"
|
|
{
|
|
ifgame(Duke, Nam, WW2GI, Fury)
|
|
{
|
|
position 160, 55, 135
|
|
centermenu
|
|
fixedspacing 5
|
|
ifgame(Duke, Nam, WW2GI, Fury)
|
|
{
|
|
class "Duke.ListMenu"
|
|
}
|
|
else
|
|
{
|
|
class "Redneck.ListMenu"
|
|
}
|
|
animatedtransition
|
|
NativeTextItem "$MNU_PLAYERSETUP", "p", "PlayerSetupMenu"
|
|
}
|
|
ifgame(blood)
|
|
{
|
|
position 160, 80, 150
|
|
class "Blood.ListMenu"
|
|
centermenu
|
|
Linespacing 20
|
|
}
|
|
ifgame(shadowwarrior)
|
|
{
|
|
position 160, 80, 150
|
|
class "ShadowWarrior.ListMenu"
|
|
centermenu
|
|
Linespacing 20
|
|
}
|
|
|
|
Caption "$MNU_NETWORKGAME"
|
|
NativeTextItem "$MNU_JOINGAME", "j", "JoinGameMenu"
|
|
NativeTextItem "$MNU_HOSTGAME", "h", "HostGameMenu"
|
|
}
|
|
|
|
OptionMenu "HostGameMenu"
|
|
{
|
|
title "$MNU_HOSTGAME"
|
|
Submenu "$NETMNU_OPTIONS", "MultiOptionsMenu"
|
|
Command "$NETMNU_LAUNCH", "Launch_MP" // currently a no-op
|
|
}
|
|
|
|
OptionMenu "JoinGameMenu"
|
|
{
|
|
TextField "$NETMNU_SERVER", "m_server"
|
|
TextField "$NETMNU_PORT", "m_netport"
|
|
SafeCommand "$NETMNU_CONNECT", "MultiConnect"
|
|
}
|
|
|
|
OptionValue "MultiGameType"
|
|
{
|
|
0, "$NETMNU_GAMETYPE1"
|
|
1, "$NETMNU_GAMETYPE2"
|
|
2, "$NETMNU_GAMETYPE3"
|
|
3, "$NETMNU_GAMETYPE4"
|
|
4, "$NETMNU_GAMETYPE5"
|
|
}
|
|
|
|
OptionValue "MultiEpisode"
|
|
{
|
|
0, "1"
|
|
0, "2"
|
|
0, "3"
|
|
0, "4"
|
|
0, "5"
|
|
0, "6"
|
|
0, "7"
|
|
}
|
|
|
|
OptionMenu "MultiOptionsMenu"
|
|
{
|
|
title "$NETMNU_OPTIONS"
|
|
Option "$NETMNU_GAMETYPE", "m_coop", "MultiGameType"
|
|
Option "$NETMNU_EPISODE", "m_episode_number", "MultiEpisode"
|
|
Option "$NETMNU_LEVEL", "m_level_number", "MultiEpisode"
|
|
Submenu "$MNU_USERMAP", "MultiUserMap" // todo: fileselect item
|
|
Option "$NETMNU_MONSTERS", "m_monsters", "OnOff"
|
|
Option "$NETMNU_MARKERS", "m_marker", "OnOff"
|
|
Option "$NETMNU_MAPEXITS", "m_noexit", "OnOff"
|
|
Option "$NETMNU_FFIRE", "m_ffire", "OnOff"
|
|
SafeCommand "$NETMNU_ACCEPT", "MultiAccept"
|
|
}
|