mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-11-17 18:01:13 +00:00
6245a0e2e2
The controller menu obviously does not work yet, it needs quite a bit of backing code fron GZDoom first.
1001 lines
28 KiB
Text
1001 lines
28 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"
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// No multiplayer support for now, but kept as a reminder.
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
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
|
|
}
|
|
|
|
Caption "$MNU_NETWORKGAME"
|
|
NativeTextItem "$MNU_JOINGAME", "j", "JoinGameMenu"
|
|
NativeTextItem "$MNU_HOSTGAME", "h", "HostGameMenu"
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
//
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
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_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", "m_filter", "YesNo"
|
|
StaticText ""
|
|
Slider "$MOUSEMNU_TURNSPEED", "m_yaw", 0, 2.5, 0.1
|
|
Slider "$MOUSEMNU_MOUSELOOKSPEED", "m_pitch", 0, 2.5, 0.1
|
|
Slider "$MOUSEMNU_FORWBACKSPEED", "m_forward", 0, 2.5, 0.1
|
|
Slider "$MOUSEMNU_STRAFESPEED", "m_side", 0, 2.5, 0.1
|
|
StaticText ""
|
|
Option "$MOUSEMNU_ALWAYSMOUSELOOK", "in_mousemode", "OnOff"
|
|
Option "$MOUSEMNU_INVERTMOUSE", "in_mouseflip", "OnOff"
|
|
Option "$MOUSEMNU_LOOKSPRING", "in_aimmode", "OnOff" // Functionm exists but is very broken. Definitely needs fixing.
|
|
// Do we need this? Option "$MOUSEMNU_LOOKSTRAFE", "lookstrafe", "OnOff"
|
|
}
|
|
|
|
//-------------------------------------------------------------------------------------------
|
|
//
|
|
// Joystick Menu
|
|
//
|
|
//-------------------------------------------------------------------------------------------
|
|
|
|
OptionMenu "JoystickOptionsDefaults" 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 "JoystickOptions" 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.
|
|
}
|
|
|
|
|
|
|
|
|