mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-25 03:00:46 +00:00
- Changed EDuke menu to receive all settings storage locations as CVARs.
With this out of the way the only part that needs a real replacement immediately is the keybinds menu.
This commit is contained in:
parent
0f74a5c3a4
commit
299f596afc
48 changed files with 479 additions and 722 deletions
|
@ -773,6 +773,7 @@ set (PCH_SOURCES
|
|||
common/searchpaths.cpp
|
||||
common/initfs.cpp
|
||||
common/openaudio.cpp
|
||||
common/optionmenu/optionmenu.cpp
|
||||
|
||||
common/2d/v_2ddrawer.cpp
|
||||
common/2d/v_draw.cpp
|
||||
|
|
|
@ -244,7 +244,7 @@ CGameMenuItem7EE34 itemOption2("VIDEO MODE...", 3, 0, 160, 320, 1);
|
|||
CGameMenuItemChain itemChainParentalLock("PARENTAL LOCK", 3, 0, 170, 320, 1, &menuParentalLock, -1, NULL, 0);
|
||||
|
||||
CGameMenuItemTitle itemControlsTitle("CONTROLS", 1, 160, 20, 2038);
|
||||
CGameMenuItemSliderFloat sliderMouseSpeed("Mouse Sensitivity:", 1, 10, 70, 300, CONTROL_MouseSensitivity, 0.5f, 16.f, 0.5f, SetMouseSensitivity, -1,-1);
|
||||
CGameMenuItemSliderFloat sliderMouseSpeed("Mouse Sensitivity:", 1, 10, 70, 300, in_mousesensitivity, 0.5f, 16.f, 0.5f, SetMouseSensitivity, -1,-1);
|
||||
CGameMenuItemZBool boolMouseFlipped("Invert Mouse Aim:", 1, 10, 90, 300, in_mouseflip, SetMouseAimFlipped, NULL, NULL);
|
||||
CGameMenuItemSlider sliderTurnSpeed("Key Turn Speed:", 1, 10, 110, 300, gTurnSpeed, 64, 128, 4, SetTurnSpeed, -1, -1);
|
||||
CGameMenuItemChain itemChainKeyList("Configure Keys...", 1, 0, 130, 320, 1, &menuKeys, -1, NULL, 0);
|
||||
|
@ -492,9 +492,9 @@ CGameMenuItemChain itemOptionsDisplayModeApply("APPLY CHANGES", 3, 66, 125, 180,
|
|||
void PreDrawDisplayColor(CGameMenuItem *);
|
||||
|
||||
CGameMenuItemTitle itemOptionsDisplayColorTitle("COLOR CORRECTION", 1, 160, 20, -1);
|
||||
CGameMenuItemSliderFloat itemOptionsDisplayColorGamma("GAMMA:", 3, 66, 140, 180, &g_videoGamma, 0.3f, 4.f, 0.1f, UpdateVideoColorMenu, -1, -1, kMenuSliderValue);
|
||||
CGameMenuItemSliderFloat itemOptionsDisplayColorContrast("CONTRAST:", 3, 66, 150, 180, &g_videoContrast, 0.1f, 2.7f, 0.05f, UpdateVideoColorMenu, -1, -1, kMenuSliderValue);
|
||||
CGameMenuItemSliderFloat itemOptionsDisplayColorBrightness("BRIGHTNESS:", 3, 66, 160, 180, &g_videoBrightness, -0.8f, 0.8f, 0.05f, UpdateVideoColorMenu, -1, -1, kMenuSliderValue);
|
||||
CGameMenuItemSliderFloat itemOptionsDisplayColorGamma("GAMMA:", 3, 66, 140, 180, &vid_gamma.Value, 0.3f, 4.f, 0.1f, UpdateVideoColorMenu, -1, -1, kMenuSliderValue);
|
||||
CGameMenuItemSliderFloat itemOptionsDisplayColorContrast("CONTRAST:", 3, 66, 150, 180, &vid_contrast.Value, 0.1f, 2.7f, 0.05f, UpdateVideoColorMenu, -1, -1, kMenuSliderValue);
|
||||
CGameMenuItemSliderFloat itemOptionsDisplayColorBrightness("BRIGHTNESS:", 3, 66, 160, 180, &vid_brightness.Value, -0.8f, 0.8f, 0.05f, UpdateVideoColorMenu, -1, -1, kMenuSliderValue);
|
||||
CGameMenuItemSliderFloat itemOptionsDisplayColorVisibility("VISIBILITY:", 3, 66, 170, 180, &r_ambientlight.Value, 0.125f, 4.f, 0.125f, UpdateVideoColorMenu, -1, -1, kMenuSliderValue);
|
||||
CGameMenuItemChain itemOptionsDisplayColorReset("RESET TO DEFAULTS", 3, 66, 180, 180, 0, NULL, 0, ResetVideoColor, 0);
|
||||
|
||||
|
@ -550,7 +550,6 @@ CGameMenuItemTitle itemOptionsDisplayPolymostTitle("POLYMOST SETUP", 1, 160, 20,
|
|||
CGameMenuItemZCycle itemOptionsDisplayPolymostTextureMode("TEXTURE MODE:", 3, 66, 60, 180, 0, UpdateTextureMode, pzTextureModeStrings, 2, 0);
|
||||
CGameMenuItemZCycle itemOptionsDisplayPolymostAnisotropy("ANISOTROPY:", 3, 66, 70, 180, 0, UpdateAnisotropy, pzAnisotropyStrings, 6, 0);
|
||||
CGameMenuItemZBool itemOptionsDisplayPolymostTrueColorTextures("TRUE COLOR TEXTURES:", 3, 66, 80, 180, 0, UpdateTrueColorTextures, NULL, NULL);
|
||||
CGameMenuItemZCycle itemOptionsDisplayPolymostTexQuality("GL TEXTURE QUALITY:", 3, 66, 90, 180, 0, UpdateTexQuality, pzTexQualityStrings, 3, 0);
|
||||
CGameMenuItemZBool itemOptionsDisplayPolymostPreloadCache("PRE-LOAD MAP TEXTURES:", 3, 66, 100, 180, 0, UpdatePreloadCache, NULL, NULL);
|
||||
CGameMenuItemZBool itemOptionsDisplayPolymostDetailTex("DETAIL TEXTURES:", 3, 66, 120, 180, 0, UpdateDetailTex, NULL, NULL);
|
||||
CGameMenuItemZBool itemOptionsDisplayPolymostGlowTex("GLOW TEXTURES:", 3, 66, 130, 180, 0, UpdateGlowTex, NULL, NULL);
|
||||
|
@ -642,13 +641,13 @@ void SetupMouseButtonMenu(CGameMenuItemChain *pItem);
|
|||
|
||||
CGameMenuItemTitle itemOptionsControlMouseTitle("MOUSE SETUP", 1, 160, 20, 2038);
|
||||
CGameMenuItemChain itemOptionsControlMouseButton("BUTTON ASSIGNMENT", 3, 66, 60, 180, 0, &menuOptionsControlMouseButtonAssignment, 0, SetupMouseButtonMenu, 0);
|
||||
CGameMenuItemSliderFloat itemOptionsControlMouseSensitivity("SENSITIVITY:", 3, 66, 70, 180, &CONTROL_MouseSensitivity, 0.5f, 16.f, 0.5f, SetMouseSensitivity, -1, -1, kMenuSliderValue);
|
||||
CGameMenuItemSliderFloat itemOptionsControlMouseSensitivity("SENSITIVITY:", 3, 66, 70, 180, &in_mousesensitivity.Value, 0.5f, 16.f, 0.5f, SetMouseSensitivity, -1, -1, kMenuSliderValue);
|
||||
CGameMenuItemZBool itemOptionsControlMouseAimFlipped("INVERT AIMING:", 3, 66, 80, 180, false, SetMouseAimFlipped, NULL, NULL);
|
||||
CGameMenuItemZBool itemOptionsControlMouseFilterInput("FILTER INPUT:", 3, 66, 90, 180, false, SetMouseFilterInput, NULL, NULL);
|
||||
CGameMenuItemZBool itemOptionsControlMouseAimMode("AIMING TYPE:", 3, 66, 100, 180, false, SetMouseAimMode, "HOLD", "TOGGLE");
|
||||
CGameMenuItemZBool itemOptionsControlMouseVerticalAim("VERTICAL AIMING:", 3, 66, 110, 180, false, SetMouseVerticalAim, NULL, NULL);
|
||||
CGameMenuItemSlider itemOptionsControlMouseXScale("X-SCALE:", 3, 66, 120, 180, (int*)&MouseAnalogueScale[0], 0, 65536, 1024, SetMouseXScale, -1, -1, kMenuSliderQ16);
|
||||
CGameMenuItemSlider itemOptionsControlMouseYScale("Y-SCALE:", 3, 66, 130, 180, (int*)&MouseAnalogueScale[1], 0, 65536, 1024, SetMouseYScale, -1, -1, kMenuSliderQ16);
|
||||
CGameMenuItemSlider itemOptionsControlMouseXScale("X-SCALE:", 3, 66, 120, 180, (int*)&in_mousescalex, 0, 65536, 1024, SetMouseXScale, -1, -1, kMenuSliderQ16);
|
||||
CGameMenuItemSlider itemOptionsControlMouseYScale("Y-SCALE:", 3, 66, 130, 180, (int*)&in_mousescaley, 0, 65536, 1024, SetMouseYScale, -1, -1, kMenuSliderQ16);
|
||||
CGameMenuItemZCycle itemOptionsControlMouseDigitalUp("DIGITAL UP", 3, 66, 140, 180, 0, SetMouseDigitalAxis, NULL, 0, 0, true);
|
||||
CGameMenuItemZCycle itemOptionsControlMouseDigitalDown("DIGITAL DOWN", 3, 66, 150, 180, 0, SetMouseDigitalAxis, NULL, 0, 0, true);
|
||||
CGameMenuItemZCycle itemOptionsControlMouseDigitalLeft("DIGITAL LEFT", 3, 66, 160, 180, 0, SetMouseDigitalAxis, NULL, 0, 0, true);
|
||||
|
@ -748,7 +747,7 @@ void SetupMessagesMenu(void)
|
|||
|
||||
void SetupControlsMenu(void)
|
||||
{
|
||||
sliderMouseSpeed.fValue = ClipRangeF(CONTROL_MouseSensitivity, sliderMouseSpeed.fRangeLow, sliderMouseSpeed.fRangeHigh);
|
||||
sliderMouseSpeed.fValue = ClipRangeF(in_mousesensitivity, sliderMouseSpeed.fRangeLow, sliderMouseSpeed.fRangeHigh);
|
||||
sliderTurnSpeed.nValue = ClipRange(gTurnSpeed, sliderTurnSpeed.nRangeLow, sliderTurnSpeed.nRangeHigh);
|
||||
boolMouseFlipped.at20 = in_mouseflip;
|
||||
menuControls.Add(&itemControlsTitle, false);
|
||||
|
@ -1230,7 +1229,6 @@ void SetupOptionsMenu(void)
|
|||
//menuOptionsDisplayPolymost.Add(&itemOptionsDisplayPolymostTextureMode, true);
|
||||
//menuOptionsDisplayPolymost.Add(&itemOptionsDisplayPolymostAnisotropy, false);
|
||||
menuOptionsDisplayPolymost.Add(&itemOptionsDisplayPolymostTrueColorTextures, true);
|
||||
menuOptionsDisplayPolymost.Add(&itemOptionsDisplayPolymostTexQuality, false);
|
||||
menuOptionsDisplayPolymost.Add(&itemOptionsDisplayPolymostPreloadCache, false);
|
||||
menuOptionsDisplayPolymost.Add(&itemOptionsDisplayPolymostDetailTex, false);
|
||||
menuOptionsDisplayPolymost.Add(&itemOptionsDisplayPolymostGlowTex, false);
|
||||
|
@ -1238,7 +1236,6 @@ void SetupOptionsMenu(void)
|
|||
menuOptionsDisplayPolymost.Add(&itemOptionsDisplayPolymostDeliriumBlur, false);
|
||||
menuOptionsDisplayPolymost.Add(&itemBloodQAV, false);
|
||||
|
||||
itemOptionsDisplayPolymostTexQuality.pPreDrawCallback = PreDrawDisplayPolymost;
|
||||
itemOptionsDisplayPolymostPreloadCache.pPreDrawCallback = PreDrawDisplayPolymost;
|
||||
itemOptionsDisplayPolymostDetailTex.pPreDrawCallback = PreDrawDisplayPolymost;
|
||||
itemOptionsDisplayPolymostGlowTex.pPreDrawCallback = PreDrawDisplayPolymost;
|
||||
|
@ -1656,9 +1653,9 @@ void PreDrawVideoModeMenu(CGameMenuItem *pItem)
|
|||
void UpdateVideoColorMenu(CGameMenuItemSliderFloat *pItem)
|
||||
{
|
||||
UNREFERENCED_PARAMETER(pItem);
|
||||
g_videoGamma = itemOptionsDisplayColorGamma.fValue;
|
||||
g_videoContrast = itemOptionsDisplayColorContrast.fValue;
|
||||
g_videoBrightness = itemOptionsDisplayColorBrightness.fValue;
|
||||
vid_gamma = itemOptionsDisplayColorGamma.fValue;
|
||||
vid_contrast = itemOptionsDisplayColorContrast.fValue;
|
||||
vid_brightness = itemOptionsDisplayColorBrightness.fValue;
|
||||
r_ambientlight = itemOptionsDisplayColorVisibility.fValue;
|
||||
}
|
||||
|
||||
|
@ -1673,9 +1670,9 @@ void PreDrawDisplayColor(CGameMenuItem *pItem)
|
|||
void ResetVideoColor(CGameMenuItemChain *pItem)
|
||||
{
|
||||
UNREFERENCED_PARAMETER(pItem);
|
||||
g_videoGamma = DEFAULT_GAMMA;
|
||||
g_videoContrast = DEFAULT_CONTRAST;
|
||||
g_videoBrightness = DEFAULT_BRIGHTNESS;
|
||||
vid_gamma = 1.f;
|
||||
vid_contrast = 1.f;
|
||||
vid_brightness = 0.f;
|
||||
r_ambientlight = 1.f;
|
||||
}
|
||||
|
||||
|
@ -1702,7 +1699,6 @@ void SetupVideoPolymostMenu(CGameMenuItemChain *pItem)
|
|||
}
|
||||
}
|
||||
itemOptionsDisplayPolymostTrueColorTextures.at20 = hw_hightile;
|
||||
itemOptionsDisplayPolymostTexQuality.m_nFocus = r_downsize;
|
||||
itemOptionsDisplayPolymostPreloadCache.at20 = r_precache;
|
||||
itemOptionsDisplayPolymostDetailTex.at20 = hw_detailmapping;
|
||||
itemOptionsDisplayPolymostGlowTex.at20 = hw_glowmapping;
|
||||
|
@ -1737,13 +1733,6 @@ void DoModeChange(void)
|
|||
}
|
||||
|
||||
#ifdef USE_OPENGL
|
||||
void UpdateTexQuality(CGameMenuItemZCycle *pItem)
|
||||
{
|
||||
r_downsize = pItem->m_nFocus;
|
||||
r_downsizevar = r_downsize;
|
||||
DoModeChange();
|
||||
}
|
||||
|
||||
void UpdatePreloadCache(CGameMenuItemZBool *pItem)
|
||||
{
|
||||
r_precache = pItem->at20;
|
||||
|
@ -1771,9 +1760,7 @@ void UpdateDeliriumBlur(CGameMenuItemZBool *pItem)
|
|||
|
||||
void PreDrawDisplayPolymost(CGameMenuItem *pItem)
|
||||
{
|
||||
if (pItem == &itemOptionsDisplayPolymostTexQuality)
|
||||
pItem->bEnable = hw_hightile;
|
||||
else if (pItem == &itemOptionsDisplayPolymostPreloadCache)
|
||||
if (pItem == &itemOptionsDisplayPolymostPreloadCache)
|
||||
pItem->bEnable = hw_hightile;
|
||||
else if (pItem == &itemOptionsDisplayPolymostDetailTex)
|
||||
pItem->bEnable = hw_hightile;
|
||||
|
@ -1912,14 +1899,12 @@ void SetMouseVerticalAim(CGameMenuItemZBool *pItem)
|
|||
|
||||
void SetMouseXScale(CGameMenuItemSlider *pItem)
|
||||
{
|
||||
MouseAnalogueScale[0] = pItem->nValue;
|
||||
CONTROL_SetAnalogAxisScale(0, pItem->nValue, controldevice_mouse);
|
||||
in_mousescalex = pItem->nValue;
|
||||
}
|
||||
|
||||
void SetMouseYScale(CGameMenuItemSlider *pItem)
|
||||
{
|
||||
MouseAnalogueScale[1] = pItem->nValue;
|
||||
CONTROL_SetAnalogAxisScale(1, pItem->nValue, controldevice_mouse);
|
||||
in_mousescaley = pItem->nValue;
|
||||
}
|
||||
|
||||
void SetMouseDigitalAxis(CGameMenuItemZCycle *pItem)
|
||||
|
|
|
@ -1077,7 +1077,7 @@ void P_DoQuote(int32_t q, DukePlayer_t *p)
|
|||
{
|
||||
int32_t cq = 0;
|
||||
|
||||
if (ud.fta_on == 0 || q < 0 || !(p->gm & MODE_GAME))
|
||||
if (hud_messages == 0 || q < 0 || !(p->gm & MODE_GAME))
|
||||
return;
|
||||
|
||||
if (q & MAXQUOTES)
|
||||
|
|
|
@ -25,10 +25,12 @@ extern char modechange;
|
|||
extern char nogl;
|
||||
|
||||
extern int32_t swapcomplete;
|
||||
|
||||
EXTERN_CVAR(Int, r_borderless);
|
||||
EXTERN_CVAR(Bool, r_usenewaspect)
|
||||
|
||||
// video
|
||||
extern int32_t r_usenewaspect, newaspect_enable;
|
||||
extern int32_t newaspect_enable;
|
||||
extern int32_t r_fpgrouscan;
|
||||
extern int32_t setaspect_new_use_dimen;
|
||||
extern uint32_t r_screenxy;
|
||||
|
@ -66,13 +68,7 @@ extern int32_t lockcount;
|
|||
} while(0)
|
||||
#endif
|
||||
|
||||
extern float g_videoGamma, g_videoContrast, g_videoBrightness;
|
||||
|
||||
#define DEFAULT_GAMMA 1.0f
|
||||
#define DEFAULT_CONTRAST 1.0f
|
||||
#define DEFAULT_BRIGHTNESS 0.0f
|
||||
|
||||
#define GAMMA_CALC ((int32_t)(min(max((float)((g_videoGamma - 1.0f) * 10.0f), 0.f), 15.f)))
|
||||
#define GAMMA_CALC ((int32_t)(min(max((float)((vid_gamma - 1.0f) * 10.0f), 0.f), 15.f)))
|
||||
|
||||
#ifdef USE_OPENGL
|
||||
extern int osdcmd_glinfo(osdcmdptr_t parm);
|
||||
|
|
|
@ -1095,7 +1095,6 @@ EXTERN_CVAR(Bool, r_voxels)
|
|||
|
||||
extern int32_t r_parallaxskyclamping;
|
||||
extern int32_t r_downsize;
|
||||
extern int32_t r_downsizevar;
|
||||
extern int32_t mdtims, omdtims;
|
||||
extern int32_t glrendmode;
|
||||
|
||||
|
|
|
@ -132,16 +132,13 @@ static int32_t beforedrawrooms = 1;
|
|||
static int32_t oxdimen = -1, oviewingrange = -1, oxyaspect = -1;
|
||||
|
||||
// r_usenewaspect is the cvar, newaspect_enable to trigger the new behaviour in the code
|
||||
int32_t r_usenewaspect = 1, newaspect_enable=0;
|
||||
CVAR(Bool, r_usenewaspect, true, CVAR_ARCHIVE | CVAR_GLOBALCONFIG);
|
||||
int32_t newaspect_enable=0;
|
||||
uint32_t r_screenxy = 0;
|
||||
|
||||
int32_t r_fpgrouscan = 1;
|
||||
int32_t globalflags;
|
||||
|
||||
float g_videoGamma = DEFAULT_GAMMA;
|
||||
float g_videoContrast = DEFAULT_CONTRAST;
|
||||
float g_videoBrightness = DEFAULT_BRIGHTNESS;
|
||||
|
||||
//Textured Map variables
|
||||
static char globalpolytype;
|
||||
static int16_t **dotp1, **dotp2;
|
||||
|
|
|
@ -138,8 +138,6 @@ int32_t glprojectionhacks = 2;
|
|||
static FHardwareTexture *polymosttext = 0;
|
||||
int32_t glrendmode = REND_POLYMOST;
|
||||
|
||||
int32_t r_downsize = 0;
|
||||
int32_t r_downsizevar = -1;
|
||||
int32_t r_scenebrightness = 0;
|
||||
|
||||
int32_t r_rortexture = 0;
|
||||
|
|
|
@ -81,17 +81,17 @@ FBaseCVar::FBaseCVar (const char *var_name, uint32_t flags, void (*callback)(FBa
|
|||
*/
|
||||
}
|
||||
|
||||
FBaseCVar *var;
|
||||
|
||||
var = FindCVar (var_name, NULL);
|
||||
|
||||
m_Callback = callback;
|
||||
Flags = 0;
|
||||
VarName = "";
|
||||
Description = descr;
|
||||
|
||||
FBaseCVar* var = nullptr;
|
||||
if (var_name)
|
||||
{
|
||||
var = FindCVar(var_name, NULL);
|
||||
C_AddTabCommand (var_name);
|
||||
VarName = var_name;
|
||||
m_Next = CVars;
|
||||
|
|
|
@ -120,6 +120,13 @@ public:
|
|||
void SetArchiveBit () { Flags |= CVAR_ARCHIVE; }
|
||||
void MarkUnsafe();
|
||||
|
||||
int ToInt()
|
||||
{
|
||||
ECVarType vt;
|
||||
auto val = GetFavoriteRep(&vt);
|
||||
return ToInt(val, vt);
|
||||
}
|
||||
|
||||
virtual ECVarType GetRealType () const = 0;
|
||||
|
||||
virtual const char *GetHumanString(int precision=-1) const;
|
||||
|
@ -448,6 +455,9 @@ void C_ForgetCVars (void);
|
|||
#define CVARD_NAMED(type,name,varname,def,flags, descr) \
|
||||
F##type##CVar varname (#name, def, flags, nullptr, descr);
|
||||
|
||||
#define CVAR_UNAMED(type,varname) \
|
||||
F##type##CVar varname (nullptr, 0, 0, nullptr, nullptr);
|
||||
|
||||
extern FBaseCVar *CVars;
|
||||
|
||||
#endif //__C_CVARS_H__
|
||||
|
|
|
@ -465,7 +465,6 @@ int CONFIG_SetMapBestTime(uint8_t const* const mapmd4, int32_t tm)
|
|||
|
||||
int32_t MouseDigitalFunctions[MAXMOUSEAXES][2];
|
||||
int32_t MouseAnalogueAxes[MAXMOUSEAXES];
|
||||
int32_t MouseAnalogueScale[MAXMOUSEAXES];
|
||||
int32_t JoystickFunctions[MAXJOYBUTTONSANDHATS][2];
|
||||
int32_t JoystickDigitalFunctions[MAXJOYAXES][2];
|
||||
int32_t JoystickAnalogueAxes[MAXJOYAXES];
|
||||
|
@ -612,41 +611,6 @@ const char* CONFIG_AnalogNumToName(int32_t func)
|
|||
|
||||
void CONFIG_SetupMouse(void)
|
||||
{
|
||||
const char* val;
|
||||
FString section = currentGame + ".MouseSettings";
|
||||
if (!GameConfig->SetSection(section)) return;
|
||||
|
||||
// map over the axes
|
||||
for (int i = 0; i < MAXMOUSEAXES; i++)
|
||||
{
|
||||
section.Format("MouseAnalogAxes%d", i);
|
||||
val = GameConfig->GetValueForKey(section);
|
||||
if (val)
|
||||
MouseAnalogueAxes[i] = CONFIG_AnalogNameToNum(val);
|
||||
|
||||
section.Format("MouseDigitalAxes%d_0", i);
|
||||
val = GameConfig->GetValueForKey(section);
|
||||
if (val)
|
||||
MouseDigitalFunctions[i][0] = buttonMap.FindButtonIndex(val);
|
||||
|
||||
section.Format("MouseDigitalAxes%d_1", i);
|
||||
val = GameConfig->GetValueForKey(section);
|
||||
if (val)
|
||||
MouseDigitalFunctions[i][1] = buttonMap.FindButtonIndex(val);
|
||||
|
||||
section.Format("MouseAnalogScale%d", i);
|
||||
val = GameConfig->GetValueForKey(section);
|
||||
if (val)
|
||||
MouseAnalogueScale[i] = (int32_t)strtoull(val, nullptr, 0);
|
||||
}
|
||||
|
||||
for (int i = 0; i < MAXMOUSEAXES; i++)
|
||||
{
|
||||
CONTROL_MapAnalogAxis(i, MouseAnalogueAxes[i], controldevice_mouse);
|
||||
CONTROL_MapDigitalAxis(i, MouseDigitalFunctions[i][0], 0, controldevice_mouse);
|
||||
CONTROL_MapDigitalAxis(i, MouseDigitalFunctions[i][1], 1, controldevice_mouse);
|
||||
CONTROL_SetAnalogAxisScale(i, MouseAnalogueScale[i], controldevice_mouse);
|
||||
}
|
||||
CONTROL_MouseEnabled = (in_mouse && CONTROL_MousePresent);
|
||||
}
|
||||
|
||||
|
@ -1043,9 +1007,6 @@ void CONFIG_InitMouseAndController()
|
|||
|
||||
for (int i = 0; i < MAXMOUSEAXES; i++)
|
||||
{
|
||||
MouseAnalogueScale[i] = DEFAULTMOUSEANALOGUESCALE;
|
||||
CONTROL_SetAnalogAxisScale(i, MouseAnalogueScale[i], controldevice_mouse);
|
||||
|
||||
MouseDigitalFunctions[i][0] = buttonMap.FindButtonIndex(mousedigitaldefaults[i * 2]);
|
||||
MouseDigitalFunctions[i][1] = buttonMap.FindButtonIndex(mousedigitaldefaults[i * 2 + 1]);
|
||||
CONTROL_MapDigitalAxis(i, MouseDigitalFunctions[i][0], 0, controldevice_mouse);
|
||||
|
@ -1071,34 +1032,7 @@ void CONFIG_PutNumber(const char* key, int number)
|
|||
void CONFIG_WriteControllerSettings()
|
||||
{
|
||||
FString buf;
|
||||
if (in_mouse)
|
||||
{
|
||||
FString section = currentGame + ".MouseSettings";
|
||||
GameConfig->SetSection(section);
|
||||
for (int i = 0; i < MAXMOUSEAXES; i++)
|
||||
{
|
||||
if (CONFIG_AnalogNumToName(MouseAnalogueAxes[i]))
|
||||
{
|
||||
buf.Format("MouseAnalogAxes%d", i);
|
||||
GameConfig->SetValueForKey(buf, CONFIG_AnalogNumToName(MouseAnalogueAxes[i]));
|
||||
}
|
||||
|
||||
if (buttonMap.GetButtonName(MouseDigitalFunctions[i][0]))
|
||||
{
|
||||
buf.Format("MouseDigitalAxes%d_0", i);
|
||||
GameConfig->SetValueForKey(buf, buttonMap.GetButtonName(MouseDigitalFunctions[i][0]));
|
||||
}
|
||||
|
||||
if (buttonMap.GetButtonName(MouseDigitalFunctions[i][1]))
|
||||
{
|
||||
buf.Format("MouseDigitalAxes%d_1", i);
|
||||
GameConfig->SetValueForKey(buf, buttonMap.GetButtonName(MouseDigitalFunctions[i][1]));
|
||||
}
|
||||
|
||||
buf.Format("MouseAnalogScale%d", i);
|
||||
CONFIG_PutNumber(buf, MouseAnalogueScale[i]);
|
||||
}
|
||||
}
|
||||
|
||||
if (in_joystick)
|
||||
{
|
||||
|
|
|
@ -36,7 +36,6 @@ void CONFIG_SetDefaultKeys(const char *defbinds);
|
|||
|
||||
extern int32_t MouseDigitalFunctions[MAXMOUSEAXES][2];
|
||||
extern int32_t MouseAnalogueAxes[MAXMOUSEAXES];
|
||||
extern int32_t MouseAnalogueScale[MAXMOUSEAXES];
|
||||
extern int32_t JoystickFunctions[MAXJOYBUTTONSANDHATS][2];
|
||||
extern int32_t JoystickDigitalFunctions[MAXJOYAXES][2];
|
||||
extern int32_t JoystickAnalogueAxes[MAXJOYAXES];
|
||||
|
|
|
@ -317,7 +317,18 @@ CUSTOM_CVARD(Float, in_mousesensitivity, DEFAULTMOUSESENSITIVITY, CVAR_ARCHIVE|C
|
|||
{
|
||||
if (self < 0) self = 0;
|
||||
else if (self > 25) self = 25;
|
||||
else CONTROL_MouseSensitivity = self;
|
||||
}
|
||||
|
||||
CUSTOM_CVARD(Int, in_mousescalex, 65536, CVAR_ARCHIVE | CVAR_GLOBALCONFIG, "changes the mouse sensitivity")
|
||||
{
|
||||
if (self < -4) self = 4;
|
||||
else if (self > 4) self = 4;
|
||||
}
|
||||
|
||||
CUSTOM_CVARD(Int, in_mousescaley, 65536, CVAR_ARCHIVE | CVAR_GLOBALCONFIG, "changes the mouse sensitivity")
|
||||
{
|
||||
if (self < -4) self = 4;
|
||||
else if (self > 4) self = 4;
|
||||
}
|
||||
|
||||
|
||||
|
@ -457,6 +468,31 @@ CUSTOM_CVAR(String, playername, "Player", CVAR_ARCHIVE | CVAR_USERINFO)
|
|||
//Net_SendClientInfo(); This is in the client code. Todo.
|
||||
}
|
||||
|
||||
CUSTOM_CVARD(Float, vid_gamma, 1.f, CVAR_ARCHIVE | CVAR_GLOBALCONFIG, "adjusts gamma component of gamma ramp")
|
||||
{
|
||||
if (self < 0) self = 0;
|
||||
else if (self > 5) self = 5;
|
||||
// todo: tell the system to update
|
||||
}
|
||||
|
||||
CUSTOM_CVARD(Float, vid_contrast, 1.f, CVAR_ARCHIVE | CVAR_GLOBALCONFIG, "adjusts contrast component of gamma ramp")
|
||||
{
|
||||
if (self < 0) self = 0;
|
||||
else if (self > 5) self = 5;
|
||||
// todo: tell the system to update
|
||||
}
|
||||
|
||||
CUSTOM_CVARD(Float, vid_brightness, 0.f, CVAR_ARCHIVE | CVAR_GLOBALCONFIG, "adjusts brightness component of gamma ramp")
|
||||
{
|
||||
if (self < 0) self = 0;
|
||||
else if (self > 5) self = 5;
|
||||
// todo: tell the system to update
|
||||
}
|
||||
|
||||
//{ "vid_contrast","adjusts contrast component of gamma ramp",(void *) &vid_contrast, CVAR_FLOAT|CVAR_FUNCPTR, 0, 10 },
|
||||
//{ "vid_brightness","adjusts brightness component of gamma ramp",(void *) &vid_brightness, CVAR_FLOAT|CVAR_FUNCPTR, 0, 10 },
|
||||
|
||||
|
||||
CUSTOM_CVAR(String, rtsname, "", CVAR_ARCHIVE | CVAR_USERINFO)
|
||||
{
|
||||
RTS_Init(self);
|
||||
|
@ -464,6 +500,17 @@ CUSTOM_CVAR(String, rtsname, "", CVAR_ARCHIVE | CVAR_USERINFO)
|
|||
|
||||
CVAR(String, usermapfolder, "", CVAR_ARCHIVE);
|
||||
|
||||
|
||||
// Internal settings for demo recording and the multiplayer menu. These won't get saved and only are CVARs so that the menu code can use them.
|
||||
CVAR(Bool, m_recstat, false, CVAR_NOSET)
|
||||
CVAR(Int, m_coop, 0, CVAR_NOSET)
|
||||
CVAR(Int, m_ffire, 1, CVAR_NOSET)
|
||||
CVAR(Int, m_marker, 1, CVAR_NOSET)
|
||||
CVAR(Int, m_level_number, 0, CVAR_NOSET)
|
||||
CVAR(Int, m_noexits, 0, CVAR_NOSET)
|
||||
CVAR(Int, playercolor, 0, CVAR_NOSET)
|
||||
CVAR(Int, playerteam, 0, CVAR_NOSET)
|
||||
|
||||
#if 0
|
||||
|
||||
// These have to wait until the HUD code is cleaned up (no idea which may survive and which won't.)
|
||||
|
@ -473,12 +520,10 @@ CVAR(String, usermapfolder, "", CVAR_ARCHIVE);
|
|||
// Currently unavailable due to dependency on an obsolete OpenGL feature
|
||||
{ "deliriumblur", "enable/disable delirium blur effect(polymost)", (void *)&gDeliriumBlur, CVAR_BOOL, 0, 1 },
|
||||
|
||||
// This needs some serious internal cleanup first, the implementation is all over the place and prone to whacking the user setting.
|
||||
{ "color", "changes player palette", (void *)&ud.color, CVAR_INT|CVAR_MULTI, 0, MAXPALOOKUPS-1 },
|
||||
if (!Bstrcasecmp(parm->name, "color"))
|
||||
{
|
||||
ud.color = G_CheckPlayerColor(ud.color);
|
||||
g_player[0].ps->palookup = g_player[0].pcolor = ud.color;
|
||||
playercolor = G_CheckPlayerColor(playercolor);
|
||||
g_player[0].ps->palookup = g_player[0].pcolor = playercolor;
|
||||
}
|
||||
|
||||
// This one gets changed at run time by the game code, so making it persistent does not work
|
||||
|
@ -490,7 +535,7 @@ CVAR(String, usermapfolder, "", CVAR_ARCHIVE);
|
|||
{ "skill","changes the game skill setting", (void *)&ud.m_player_skill, CVAR_INT|CVAR_FUNCPTR|CVAR_NOSAVE/*|CVAR_NOMULTI*/, 0, 5 },
|
||||
|
||||
// requires cleanup first
|
||||
//{ "team","change team in multiplayer", (void *)&ud.team, CVAR_INT|CVAR_MULTI, 0, 3 },
|
||||
//{ "team","change team in multiplayer", (void *)&playerteam, CVAR_INT|CVAR_MULTI, 0, 3 },
|
||||
|
||||
// just as a reminder:
|
||||
/*
|
||||
|
@ -505,12 +550,8 @@ CVAR(String, usermapfolder, "", CVAR_ARCHIVE);
|
|||
/* Baselayer CVARs. Some are pointless, some not worth bothering before the backend is swappewd out, the only relevant one was r_voxels.
|
||||
static osdcvardata_t cvars_engine[] =
|
||||
{
|
||||
{ "r_usenewaspect","enable/disable new screen aspect ratio determination code",(void *) &r_usenewaspect, CVAR_BOOL, 0, 1 },
|
||||
{ "r_screenaspect","if using r_usenewaspect and in fullscreen, screen aspect ratio in the form XXYY, e.g. 1609 for 16:9",
|
||||
(void *) &r_screenxy, SCREENASPECT_CVAR_TYPE, 0, 9999 },
|
||||
//{ "vid_gamma","adjusts gamma component of gamma ramp",(void *) &g_videoGamma, CVAR_FLOAT|CVAR_FUNCPTR, 0, 10 },
|
||||
//{ "vid_contrast","adjusts contrast component of gamma ramp",(void *) &g_videoContrast, CVAR_FLOAT|CVAR_FUNCPTR, 0, 10 },
|
||||
//{ "vid_brightness","adjusts brightness component of gamma ramp",(void *) &g_videoBrightness, CVAR_FLOAT|CVAR_FUNCPTR, 0, 10 },
|
||||
};
|
||||
*/
|
||||
|
||||
|
|
|
@ -52,6 +52,8 @@ extern int MusicDevice;
|
|||
|
||||
EXTERN_CVAR(Int, hud_layout)
|
||||
EXTERN_CVAR(Int, hud_scale)
|
||||
EXTERN_CVAR(Int, hud_size)
|
||||
|
||||
EXTERN_CVAR(Int, hud_custom)
|
||||
EXTERN_CVAR(Bool, hud_stats)
|
||||
EXTERN_CVAR(Bool, hud_showmapname)
|
||||
|
@ -79,6 +81,11 @@ EXTERN_CVAR(Bool, r_shadows)
|
|||
EXTERN_CVAR(Bool, r_rotatespritenowidescreen)
|
||||
EXTERN_CVAR(Bool, r_precache)
|
||||
EXTERN_CVAR(Bool, r_voxels)
|
||||
EXTERN_CVAR(Int, r_upscalefactor)
|
||||
|
||||
EXTERN_CVAR(Float, vid_gamma)
|
||||
EXTERN_CVAR(Float, vid_contrast)
|
||||
EXTERN_CVAR(Float, vid_brightness)
|
||||
|
||||
|
||||
EXTERN_CVAR(Bool, in_joystick)
|
||||
|
@ -90,6 +97,8 @@ EXTERN_CVAR(Bool, in_mouseflip)
|
|||
EXTERN_CVAR(Bool, in_mousemode)
|
||||
EXTERN_CVAR(Bool, in_mousesmoothing)
|
||||
EXTERN_CVAR(Float, in_mousesensitivity)
|
||||
EXTERN_CVAR(Int, in_mousescalex)
|
||||
EXTERN_CVAR(Int, in_mousescaley)
|
||||
extern int32_t g_MyAimMode;
|
||||
EXTERN_CVAR(Bool, in_mousemode)
|
||||
EXTERN_CVAR(String, wchoice)
|
||||
|
@ -107,6 +116,16 @@ EXTERN_CVAR(String, playername)
|
|||
EXTERN_CVAR(String, rtsname)
|
||||
EXTERN_CVAR(String, usermapfolder)
|
||||
|
||||
EXTERN_CVAR(Bool, m_recstat)
|
||||
EXTERN_CVAR(Int, m_coop)
|
||||
EXTERN_CVAR(Int, m_marker)
|
||||
EXTERN_CVAR(Int, m_level_number)
|
||||
EXTERN_CVAR(Int, m_ffire)
|
||||
EXTERN_CVAR(Int, m_noexits)
|
||||
EXTERN_CVAR(Int, m_levelnumber)
|
||||
EXTERN_CVAR(Int, playercolor)
|
||||
EXTERN_CVAR(Int, playerteam)
|
||||
|
||||
extern bool gNoAutoLoad;
|
||||
extern float r_ambientlightrecip;
|
||||
extern int hud_statusbarrange; // will be set by the game's configuration setup.
|
||||
|
|
|
@ -368,13 +368,13 @@ void G_DoCheats(void)
|
|||
levnume--;
|
||||
|
||||
ud.m_volume_number = volnume;
|
||||
ud.m_level_number = levnume;
|
||||
m_level_number = levnume;
|
||||
}
|
||||
else
|
||||
{
|
||||
// JBF 20030914
|
||||
ud.m_volume_number = osdcmd_cheatsinfo_stat.volume;
|
||||
ud.m_level_number = osdcmd_cheatsinfo_stat.level;
|
||||
m_level_number = osdcmd_cheatsinfo_stat.level;
|
||||
}
|
||||
}
|
||||
else if (cheatNum == CHEAT_SKILL)
|
||||
|
@ -399,7 +399,7 @@ void G_DoCheats(void)
|
|||
if (originalCheatNum == CHEAT_SCOTTY)
|
||||
{
|
||||
ud.m_volume_number = ud.volume_number;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
}
|
||||
else if (originalCheatNum == CHEAT_SKILL)
|
||||
{
|
||||
|
@ -555,7 +555,7 @@ void G_DoCheats(void)
|
|||
|
||||
case CHEAT_SCOTTY:
|
||||
{
|
||||
int32_t const volnume = ud.m_volume_number, levnume = ud.m_level_number;
|
||||
int32_t const volnume = ud.m_volume_number, levnume = m_level_number;
|
||||
|
||||
if ((!VOLUMEONE || volnume == 0) && (unsigned)volnume < (unsigned)g_volumeCnt &&
|
||||
(unsigned)levnume < MAXLEVELS && g_mapInfo[volnume*MAXLEVELS + levnume].filename != NULL)
|
||||
|
@ -580,7 +580,7 @@ void G_DoCheats(void)
|
|||
|
||||
#if 0
|
||||
if (numplayers > 1 && g_netServer)
|
||||
Net_NewGame(ud.m_volume_number, ud.m_level_number);
|
||||
Net_NewGame(ud.m_volume_number, m_level_number);
|
||||
else
|
||||
#endif
|
||||
pPlayer->gm |= MODE_RESTART;
|
||||
|
|
|
@ -73,14 +73,11 @@ void CONFIG_SetDefaults(void)
|
|||
ud.althud = 1;
|
||||
ud.angleinterpolation = 0;
|
||||
ud.camerasprite = -1;
|
||||
ud.color = 0;
|
||||
ud.config.ShowWeapons = 0;
|
||||
ud.default_skill = 1;
|
||||
ud.detail = 0;
|
||||
ud.display_bonus_screen = 1;
|
||||
|
||||
hud_position = 0;
|
||||
ud.m_marker = 1;
|
||||
ud.menu_scrollbartilenum = -1;
|
||||
ud.menu_scrollbarz = 65536;
|
||||
ud.menu_scrollcursorz = 65536;
|
||||
|
@ -98,16 +95,14 @@ void CONFIG_SetDefaults(void)
|
|||
ud.statusbarflags = 0;//STATUSBAR_NOSHRINK;
|
||||
ud.statusbarmode = 1;
|
||||
ud.statusbarscale = 100;
|
||||
ud.team = 0;
|
||||
|
||||
ud.fta_on = 1;
|
||||
ud.god = 0;
|
||||
ud.m_respawn_items = 0;
|
||||
ud.m_respawn_monsters = 0;
|
||||
ud.m_respawn_inventory = 0;
|
||||
ud.warp_on = 0;
|
||||
ud.cashman = 0;
|
||||
ud.m_ffire = 1;
|
||||
m_ffire = 1;
|
||||
ud.m_player_skill = ud.player_skill = 2;
|
||||
memcpy(g_player[0].wchoice, "\3\4\5\7\0x8\6\0\2\0x9\1", 10);
|
||||
wchoice.Callback();
|
||||
|
|
|
@ -144,7 +144,7 @@ void G_OpenDemoWrite(void)
|
|||
{
|
||||
Bstrcpy(apStrings[QUOTE_RESERVED4], "CANNOT START DEMO RECORDING WHEN DEAD!");
|
||||
P_DoQuote(QUOTE_RESERVED4, g_player[myconnectindex].ps);
|
||||
ud.recstat = ud.m_recstat = 0;
|
||||
ud.recstat = m_recstat = 0;
|
||||
return;
|
||||
}
|
||||
do
|
||||
|
@ -181,7 +181,7 @@ void G_OpenDemoWrite(void)
|
|||
error_wopen_demo:
|
||||
Bstrcpy(apStrings[QUOTE_RESERVED4], "FAILED STARTING DEMO RECORDING. SEE CONSOLE FOR DETAILS.");
|
||||
P_DoQuote(QUOTE_RESERVED4, g_player[myconnectindex].ps);
|
||||
ud.recstat = ud.m_recstat = 0;
|
||||
ud.recstat = m_recstat = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -193,7 +193,7 @@ error_wopen_demo:
|
|||
P_DoQuote(QUOTE_RESERVED4, g_player[myconnectindex].ps);
|
||||
|
||||
ud.reccnt = 0;
|
||||
ud.recstat = ud.m_recstat = 1; //
|
||||
ud.recstat = m_recstat = 1; //
|
||||
|
||||
# if KRANDDEBUG
|
||||
krd_enable(1);
|
||||
|
@ -278,7 +278,7 @@ void G_CloseDemoWrite(void)
|
|||
// lastly, we need to write the number of written recsyncs to the demo file
|
||||
g_demo_filePtr->Write(&g_demo_cnt, sizeof(g_demo_cnt));
|
||||
|
||||
ud.recstat = ud.m_recstat = 0;
|
||||
ud.recstat = m_recstat = 0;
|
||||
delete g_demo_filePtr;
|
||||
g_demo_filePtr = nullptr;
|
||||
|
||||
|
|
|
@ -188,11 +188,11 @@ void G_HandleSpecialKeys(void)
|
|||
|
||||
if (g_networkMode != NET_DEDICATED_SERVER && ALT_IS_PRESSED && inputState.GetKeyStatus(sc_Enter))
|
||||
{
|
||||
if (videoSetGameMode(!ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, ud.detail))
|
||||
if (videoSetGameMode(!ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, 1))
|
||||
{
|
||||
OSD_Printf(OSD_ERROR "Failed setting video mode!\n");
|
||||
|
||||
if (videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, ud.detail))
|
||||
if (videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, 1))
|
||||
G_GameExit("Fatal error: unable to recover from failure setting video mode!\n");
|
||||
}
|
||||
else
|
||||
|
@ -273,7 +273,7 @@ void G_GameExit(const char *msg)
|
|||
g_mostConcurrentPlayers > 1 && g_player[myconnectindex].ps->gm & MODE_GAME && GTFLAGS(GAMETYPE_SCORESHEET) && *msg == ' ')
|
||||
{
|
||||
G_BonusScreen(1);
|
||||
videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, ud.detail);
|
||||
videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, 1);
|
||||
}
|
||||
|
||||
// shareware and TEN screens
|
||||
|
@ -4466,7 +4466,7 @@ void GameInterface::set_hud_layout(int layout)
|
|||
|
||||
void GameInterface::set_hud_scale(int scale)
|
||||
{
|
||||
G_UpdateScreenArea();
|
||||
G_SetStatusBarScale(scale);
|
||||
}
|
||||
|
||||
void G_HandleLocalKeys(void)
|
||||
|
@ -4862,10 +4862,10 @@ FAKE_F3:
|
|||
{
|
||||
inputState.ClearKeyStatus(sc_F8);
|
||||
|
||||
int const fta = !ud.fta_on;
|
||||
ud.fta_on = 1;
|
||||
int const fta = !hud_messages;
|
||||
hud_messages = 1;
|
||||
P_DoQuote(fta ? QUOTE_MESSAGES_ON : QUOTE_MESSAGES_OFF, &myplayer);
|
||||
ud.fta_on = fta;
|
||||
hud_messages = fta;
|
||||
}
|
||||
|
||||
if ((buttonMap.ButtonDown(gamefunc_Quick_Load) || g_doQuickSave == 2) && (myplayer.gm & MODE_GAME))
|
||||
|
@ -5729,9 +5729,9 @@ static void G_CompileScripts(void)
|
|||
|
||||
static inline void G_CheckGametype(void)
|
||||
{
|
||||
ud.m_coop = clamp(ud.m_coop, 0, g_gametypeCnt-1);
|
||||
initprintf("%s\n",g_gametypeNames[ud.m_coop]);
|
||||
if (g_gametypeFlags[ud.m_coop] & GAMETYPE_ITEMRESPAWN)
|
||||
m_coop = clamp(*m_coop, 0, g_gametypeCnt-1);
|
||||
initprintf("%s\n",g_gametypeNames[m_coop]);
|
||||
if (g_gametypeFlags[m_coop] & GAMETYPE_ITEMRESPAWN)
|
||||
ud.m_respawn_items = ud.m_respawn_inventory = 1;
|
||||
}
|
||||
|
||||
|
@ -5991,9 +5991,9 @@ void G_UpdatePlayerFromMenu(void)
|
|||
/*int32_t j = p.team;*/
|
||||
|
||||
P_SetupMiscInputSettings();
|
||||
p.palookup = g_player[myconnectindex].pcolor = ud.color;
|
||||
p.palookup = g_player[myconnectindex].pcolor = playercolor;
|
||||
|
||||
g_player[myconnectindex].pteam = ud.team;
|
||||
g_player[myconnectindex].pteam = playerteam;
|
||||
|
||||
if (sprite[p.i].picnum == APLAYER && sprite[p.i].pal != 1)
|
||||
sprite[p.i].pal = g_player[myconnectindex].pcolor;
|
||||
|
@ -6055,7 +6055,7 @@ static int G_EndOfLevel(void)
|
|||
}
|
||||
else
|
||||
{
|
||||
ud.m_level_number = 0;
|
||||
m_level_number = 0;
|
||||
ud.level_number = 0;
|
||||
}
|
||||
}
|
||||
|
@ -6208,7 +6208,7 @@ int GameInterface::app_main()
|
|||
|
||||
if (numplayers == 1 && boardfilename[0] != 0)
|
||||
{
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
ud.m_volume_number = 0;
|
||||
ud.warp_on = 1;
|
||||
}
|
||||
|
@ -6252,7 +6252,7 @@ int GameInterface::app_main()
|
|||
|
||||
if (g_networkMode != NET_DEDICATED_SERVER && validmodecnt > 0)
|
||||
{
|
||||
if (videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, ud.detail) < 0)
|
||||
if (videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, 1) < 0)
|
||||
{
|
||||
initprintf("Failure setting video mode %dx%dx%d %s! Trying next mode...\n", *ScreenWidth, *ScreenHeight,
|
||||
*ScreenBPP, *ScreenMode ? "fullscreen" : "windowed");
|
||||
|
@ -6271,7 +6271,7 @@ int GameInterface::app_main()
|
|||
int const savedIdx = resIdx;
|
||||
int bpp = ScreenBPP;
|
||||
|
||||
while (videoSetGameMode(0, validmode[resIdx].xdim, validmode[resIdx].ydim, bpp, ud.detail) < 0)
|
||||
while (videoSetGameMode(0, validmode[resIdx].xdim, validmode[resIdx].ydim, bpp, 1) < 0)
|
||||
{
|
||||
initprintf("Failure setting video mode %dx%dx%d windowed! Trying next mode...\n",
|
||||
validmode[resIdx].xdim, validmode[resIdx].ydim, bpp);
|
||||
|
@ -6360,7 +6360,7 @@ MAIN_LOOP_RESTART:
|
|||
{
|
||||
if ((g_netServer || ud.multimode > 1) && boardfilename[0] != 0)
|
||||
{
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
ud.m_volume_number = 0;
|
||||
ud.m_respawn_monsters = !!(ud.m_player_skill == 4);
|
||||
|
||||
|
@ -6393,13 +6393,13 @@ MAIN_LOOP_RESTART:
|
|||
|
||||
ud.showweapons = ud.config.ShowWeapons;
|
||||
P_SetupMiscInputSettings();
|
||||
g_player[myconnectindex].pteam = ud.team;
|
||||
g_player[myconnectindex].pteam = playerteam;
|
||||
|
||||
if (g_gametypeFlags[ud.coop] & GAMETYPE_TDM)
|
||||
myplayer.palookup = g_player[myconnectindex].pcolor = G_GetTeamPalette(g_player[myconnectindex].pteam);
|
||||
else
|
||||
{
|
||||
if (ud.color) myplayer.palookup = g_player[myconnectindex].pcolor = ud.color;
|
||||
if (playercolor) myplayer.palookup = g_player[myconnectindex].pcolor = playercolor;
|
||||
else myplayer.palookup = g_player[myconnectindex].pcolor;
|
||||
}
|
||||
|
||||
|
|
|
@ -163,21 +163,21 @@ typedef struct {
|
|||
int32_t reccnt;
|
||||
|
||||
int32_t runkey_mode,statusbarscale,weaponswitch; // JBF 20031125
|
||||
int32_t color,statusbarmode;
|
||||
int32_t m_noexits,noexits;
|
||||
int32_t team, althud;
|
||||
int32_t statusbarmode;
|
||||
int32_t noexits;
|
||||
int32_t althud;
|
||||
int32_t statusbarflags, statusbarrange;
|
||||
int32_t menu_slidebarz, menu_slidebarmargin, menu_slidecursorz;
|
||||
int32_t menu_scrollbartilenum, menu_scrollbarz, menu_scrollcursorz;
|
||||
|
||||
int32_t entered_name,screen_tilting,fta_on;
|
||||
int32_t m_coop,coop,screen_size;
|
||||
int32_t entered_name,screen_tilting;
|
||||
int32_t coop,screen_size;
|
||||
int32_t playerai,angleinterpolation;
|
||||
|
||||
int32_t respawn_monsters,respawn_items,respawn_inventory,recstat,monsters_off,brightness;
|
||||
int32_t m_respawn_items,m_respawn_monsters,m_respawn_inventory,m_recstat,m_monsters_off,detail;
|
||||
int32_t m_ffire,ffire,m_player_skill,m_level_number,m_volume_number,multimode;
|
||||
int32_t player_skill,level_number,volume_number,m_marker,marker;
|
||||
int32_t m_respawn_items,m_respawn_monsters,m_respawn_inventory,m_monsters_off;
|
||||
int32_t ffire,m_player_skill,m_level_number,m_volume_number,multimode;
|
||||
int32_t player_skill,level_number,volume_number,marker;
|
||||
int32_t music_episode, music_level, skill_voice;
|
||||
|
||||
int32_t playerbest;
|
||||
|
@ -236,7 +236,7 @@ static inline int G_HaveUserMap(void)
|
|||
|
||||
static inline int Menu_HaveUserMap(void)
|
||||
{
|
||||
return (boardfilename[0] != 0 && ud.m_level_number == 7 && ud.m_volume_number == 0);
|
||||
return (boardfilename[0] != 0 && m_level_number == 7 && ud.m_volume_number == 0);
|
||||
}
|
||||
|
||||
extern const char *G_DefaultRtsFile(void);
|
||||
|
@ -461,7 +461,7 @@ enum
|
|||
|
||||
static inline void G_NewGame_EnterLevel(void)
|
||||
{
|
||||
G_NewGame(ud.m_volume_number, ud.m_level_number, ud.m_player_skill);
|
||||
G_NewGame(ud.m_volume_number, m_level_number, ud.m_player_skill);
|
||||
|
||||
if (G_EnterLevel(MODE_GAME))
|
||||
G_BackToMenu();
|
||||
|
@ -525,7 +525,7 @@ EXTERN_INLINE_HEADER void SetIfGreater(int32_t *variable, int32_t potentialValue
|
|||
|
||||
EXTERN_INLINE void G_SetStatusBarScale(int32_t sc)
|
||||
{
|
||||
ud.statusbarscale = clamp(sc, 50, 100);
|
||||
ud.statusbarscale = clamp(sc, 36, 100);
|
||||
G_UpdateScreenArea();
|
||||
}
|
||||
|
||||
|
|
|
@ -3936,7 +3936,7 @@ badindex:
|
|||
}
|
||||
|
||||
ud.m_volume_number = ud.volume_number = volumeNum;
|
||||
ud.m_level_number = ud.level_number = levelNum;
|
||||
m_level_number = ud.level_number = levelNum;
|
||||
// if (numplayers > 1 && g_netServer)
|
||||
// Net_NewGame(volnume,levnume);
|
||||
//else
|
||||
|
|
|
@ -1409,12 +1409,12 @@ int32_t __fastcall VM_GetUserdef(int32_t labelNum, int const lParm2)
|
|||
case USERDEFS_ENTERED_NAME: labelNum = ud.entered_name; break;
|
||||
case USERDEFS_SCREEN_TILTING: labelNum = ud.screen_tilting; break;
|
||||
case USERDEFS_SHADOWS: labelNum = r_shadows; break;
|
||||
case USERDEFS_FTA_ON: labelNum = ud.fta_on; break;
|
||||
case USERDEFS_FTA_ON: labelNum = hud_messages; break;
|
||||
case USERDEFS_EXECUTIONS: labelNum = 1; break;
|
||||
case USERDEFS_AUTO_RUN: labelNum = cl_autorun; break;
|
||||
case USERDEFS_COORDS: labelNum = cl_showcoords; break;
|
||||
case USERDEFS_TICKRATE: labelNum = r_showfps; break;
|
||||
case USERDEFS_M_COOP: labelNum = ud.m_coop; break;
|
||||
case USERDEFS_M_COOP: labelNum = m_coop; break;
|
||||
case USERDEFS_COOP: labelNum = ud.coop; break;
|
||||
case USERDEFS_SCREEN_SIZE: labelNum = ud.screen_size; break;
|
||||
case USERDEFS_LOCKOUT: labelNum = adult_lockout; break;
|
||||
|
@ -1429,13 +1429,13 @@ int32_t __fastcall VM_GetUserdef(int32_t labelNum, int const lParm2)
|
|||
case USERDEFS_M_RESPAWN_ITEMS: labelNum = ud.m_respawn_items; break;
|
||||
case USERDEFS_M_RESPAWN_MONSTERS: labelNum = ud.m_respawn_monsters; break;
|
||||
case USERDEFS_M_RESPAWN_INVENTORY: labelNum = ud.m_respawn_inventory; break;
|
||||
case USERDEFS_M_RECSTAT: labelNum = ud.m_recstat; break;
|
||||
case USERDEFS_M_RECSTAT: labelNum = m_recstat; break;
|
||||
case USERDEFS_M_MONSTERS_OFF: labelNum = ud.m_monsters_off; break;
|
||||
case USERDEFS_DETAIL: labelNum = ud.detail; break;
|
||||
case USERDEFS_M_FFIRE: labelNum = ud.m_ffire; break;
|
||||
case USERDEFS_DETAIL: labelNum = 1; break;
|
||||
case USERDEFS_M_FFIRE: labelNum = m_ffire; break;
|
||||
case USERDEFS_FFIRE: labelNum = ud.ffire; break;
|
||||
case USERDEFS_M_PLAYER_SKILL: labelNum = ud.m_player_skill; break;
|
||||
case USERDEFS_M_LEVEL_NUMBER: labelNum = ud.m_level_number; break;
|
||||
case USERDEFS_M_LEVEL_NUMBER: labelNum = m_level_number; break;
|
||||
case USERDEFS_M_VOLUME_NUMBER: labelNum = ud.m_volume_number; break;
|
||||
case USERDEFS_M_USER_MAP: labelNum = Menu_HaveUserMap(); break;
|
||||
case USERDEFS_MULTIMODE: labelNum = ud.multimode; break;
|
||||
|
@ -1443,7 +1443,7 @@ int32_t __fastcall VM_GetUserdef(int32_t labelNum, int const lParm2)
|
|||
case USERDEFS_LEVEL_NUMBER: labelNum = ud.level_number; break;
|
||||
case USERDEFS_VOLUME_NUMBER: labelNum = ud.volume_number; break;
|
||||
case USERDEFS_USER_MAP: labelNum = G_HaveUserMap(); break;
|
||||
case USERDEFS_M_MARKER: labelNum = ud.m_marker; break;
|
||||
case USERDEFS_M_MARKER: labelNum = m_marker; break;
|
||||
case USERDEFS_MARKER: labelNum = ud.marker; break;
|
||||
case USERDEFS_MOUSEFLIP: labelNum = !in_mouseflip; break;
|
||||
case USERDEFS_STATUSBARSCALE: labelNum = ud.statusbarscale; break;
|
||||
|
@ -1451,15 +1451,15 @@ int32_t __fastcall VM_GetUserdef(int32_t labelNum, int const lParm2)
|
|||
case USERDEFS_MOUSEAIMING: labelNum = in_aimmode; break;
|
||||
case USERDEFS_WEAPONSWITCH: labelNum = cl_weaponswitch; break;
|
||||
case USERDEFS_DEMOCAMS: labelNum = cl_democams; break;
|
||||
case USERDEFS_COLOR: labelNum = ud.color; break;
|
||||
case USERDEFS_COLOR: labelNum = playercolor; break;
|
||||
case USERDEFS_MSGDISPTIME: labelNum = hud_messagetime; break;
|
||||
case USERDEFS_STATUSBARMODE: labelNum = ud.statusbarmode; break;
|
||||
case USERDEFS_M_NOEXITS: labelNum = ud.m_noexits; break;
|
||||
case USERDEFS_M_NOEXITS: labelNum = m_noexits; break;
|
||||
case USERDEFS_NOEXITS: labelNum = ud.noexits; break;
|
||||
case USERDEFS_AUTOVOTE: labelNum = cl_autovote; break;
|
||||
case USERDEFS_AUTOMSG: labelNum = cl_automsg; break;
|
||||
case USERDEFS_IDPLAYERS: labelNum = cl_idplayers; break;
|
||||
case USERDEFS_TEAM: labelNum = ud.team; break;
|
||||
case USERDEFS_TEAM: labelNum = playerteam; break;
|
||||
case USERDEFS_VIEWBOB: labelNum = cl_viewbob; break;
|
||||
case USERDEFS_WEAPONSWAY: labelNum = cl_weaponsway; break;
|
||||
case USERDEFS_ANGLEINTERPOLATION: labelNum = ud.angleinterpolation; break;
|
||||
|
@ -1480,7 +1480,7 @@ int32_t __fastcall VM_GetUserdef(int32_t labelNum, int const lParm2)
|
|||
case USERDEFS_USEHIGHTILE: labelNum = hw_hightile; break;
|
||||
case USERDEFS_USEMODELS: labelNum = hw_models; break;
|
||||
case USERDEFS_GAMETYPEFLAGS: labelNum = g_gametypeFlags[ud.coop]; break;
|
||||
case USERDEFS_M_GAMETYPEFLAGS: labelNum = g_gametypeFlags[ud.m_coop]; break;
|
||||
case USERDEFS_M_GAMETYPEFLAGS: labelNum = g_gametypeFlags[m_coop]; break;
|
||||
case USERDEFS_GLOBALFLAGS: labelNum = globalflags; break;
|
||||
case USERDEFS_GLOBALGAMEFLAGS: labelNum = duke3d_globalflags; break;
|
||||
case USERDEFS_VM_PLAYER: labelNum = vm.playerNum; break;
|
||||
|
@ -1597,12 +1597,12 @@ void __fastcall VM_SetUserdef(int const labelNum, int const lParm2, int32_t cons
|
|||
case USERDEFS_ENTERED_NAME: ud.entered_name = iSet; break;
|
||||
case USERDEFS_SCREEN_TILTING: ud.screen_tilting = iSet; break;
|
||||
case USERDEFS_SHADOWS: r_shadows.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_FTA_ON: ud.fta_on = iSet; break;
|
||||
case USERDEFS_FTA_ON: hud_messages = iSet; break;
|
||||
case USERDEFS_EXECUTIONS: break; // what was this supposed to accomplish?
|
||||
case USERDEFS_AUTO_RUN: cl_autorun.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_COORDS: cl_showcoords.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_TICKRATE: r_showfps = iSet; break;
|
||||
case USERDEFS_M_COOP: ud.m_coop = iSet; break;
|
||||
case USERDEFS_M_COOP: m_coop = iSet; break;
|
||||
case USERDEFS_COOP: ud.coop = iSet; break;
|
||||
case USERDEFS_SCREEN_SIZE:
|
||||
if (ud.screen_size != iSet)
|
||||
|
@ -1623,20 +1623,20 @@ void __fastcall VM_SetUserdef(int const labelNum, int const lParm2, int32_t cons
|
|||
case USERDEFS_M_RESPAWN_ITEMS: ud.m_respawn_items = iSet; break;
|
||||
case USERDEFS_M_RESPAWN_MONSTERS: ud.m_respawn_monsters = iSet; break;
|
||||
case USERDEFS_M_RESPAWN_INVENTORY: ud.m_respawn_inventory = iSet; break;
|
||||
case USERDEFS_M_RECSTAT: ud.m_recstat = iSet; break;
|
||||
case USERDEFS_M_RECSTAT: m_recstat = iSet; break;
|
||||
case USERDEFS_M_MONSTERS_OFF: ud.m_monsters_off = iSet; break;
|
||||
// REMINDER: must implement "boolean" setters like "!!iSet" in Lunatic, too.
|
||||
case USERDEFS_DETAIL: ud.detail = clamp(iSet, 1, 16); break;
|
||||
case USERDEFS_M_FFIRE: ud.m_ffire = iSet; break;
|
||||
case USERDEFS_DETAIL: /*ud.detail = clamp(iSet, 1, 16); obsolete*/ break;
|
||||
case USERDEFS_M_FFIRE: m_ffire = iSet; break;
|
||||
case USERDEFS_FFIRE: ud.ffire = iSet; break;
|
||||
case USERDEFS_M_PLAYER_SKILL: ud.m_player_skill = iSet; break;
|
||||
case USERDEFS_M_LEVEL_NUMBER: ud.m_level_number = iSet; break;
|
||||
case USERDEFS_M_LEVEL_NUMBER: m_level_number = iSet; break;
|
||||
case USERDEFS_M_VOLUME_NUMBER: ud.m_volume_number = iSet; break;
|
||||
case USERDEFS_MULTIMODE: ud.multimode = iSet; break;
|
||||
case USERDEFS_PLAYER_SKILL: ud.player_skill = iSet; break;
|
||||
case USERDEFS_LEVEL_NUMBER: ud.level_number = iSet; break;
|
||||
case USERDEFS_VOLUME_NUMBER: ud.volume_number = iSet; break;
|
||||
case USERDEFS_M_MARKER: ud.m_marker = iSet; break;
|
||||
case USERDEFS_M_MARKER: m_marker = iSet; break;
|
||||
case USERDEFS_MARKER: ud.marker = iSet; break;
|
||||
case USERDEFS_MOUSEFLIP: in_mouseflip.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_STATUSBARSCALE: ud.statusbarscale = iSet; break;
|
||||
|
@ -1644,15 +1644,15 @@ void __fastcall VM_SetUserdef(int const labelNum, int const lParm2, int32_t cons
|
|||
case USERDEFS_MOUSEAIMING: in_aimmode.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_WEAPONSWITCH: cl_weaponswitch.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_DEMOCAMS: cl_democams = iSet; break;
|
||||
case USERDEFS_COLOR: ud.color = iSet; break;
|
||||
case USERDEFS_COLOR: playercolor = iSet; break;
|
||||
case USERDEFS_MSGDISPTIME: hud_messagetime.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_STATUSBARMODE: ud.statusbarmode = iSet; break;
|
||||
case USERDEFS_M_NOEXITS: ud.m_noexits = iSet; break;
|
||||
case USERDEFS_M_NOEXITS: m_noexits = iSet; break;
|
||||
case USERDEFS_NOEXITS: ud.noexits = iSet; break;
|
||||
case USERDEFS_AUTOVOTE: cl_autovote.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_AUTOMSG: cl_automsg.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_IDPLAYERS: cl_idplayers.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_TEAM: ud.team = iSet; break;
|
||||
case USERDEFS_TEAM: playerteam = iSet; break;
|
||||
case USERDEFS_VIEWBOB: cl_viewbob.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_WEAPONSWAY: cl_weaponsway.SetGenericRepDefault(iSet, CVAR_Int); break;
|
||||
case USERDEFS_ANGLEINTERPOLATION: ud.angleinterpolation = iSet; break;
|
||||
|
|
|
@ -36,6 +36,13 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
#include "c_bind.h"
|
||||
#include "../../glbackend/glbackend.h"
|
||||
|
||||
bool ShowOptionMenu();
|
||||
|
||||
namespace ImGui
|
||||
{
|
||||
void ShowDemoWindow(bool*);
|
||||
}
|
||||
|
||||
BEGIN_DUKE_NS
|
||||
|
||||
|
||||
|
@ -393,10 +400,10 @@ static int32_t MEOSV_GAMESETUP_AIM_AUTO[] = { 0, 1, 2,
|
|||
};
|
||||
|
||||
static MenuOptionSet_t MEOS_GAMESETUP_AIM_AUTO = MAKE_MENUOPTIONSET( MEOSN_GAMESETUP_AIM_AUTO, MEOSV_GAMESETUP_AIM_AUTO, 0x2 );
|
||||
static MenuOption_t MEO_GAMESETUP_AIM_AUTO = MAKE_MENUOPTION( &MF_Redfont, &MEOS_GAMESETUP_AIM_AUTO, &cl_autoaim.Value );
|
||||
static MenuOption_t MEO_GAMESETUP_AIM_AUTO = MAKE_MENUOPTION( &MF_Redfont, &MEOS_GAMESETUP_AIM_AUTO, &cl_autoaim );
|
||||
static MenuEntry_t ME_GAMESETUP_AIM_AUTO = MAKE_MENUENTRY( "Auto aim:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_GAMESETUP_AIM_AUTO, Option );
|
||||
|
||||
static MenuOption_t MEO_GAMESETUP_ALWAYS_RUN = MAKE_MENUOPTION( &MF_Redfont, &MEOS_NoYes, &cl_autorun.Value);
|
||||
static MenuOption_t MEO_GAMESETUP_ALWAYS_RUN = MAKE_MENUOPTION( &MF_Redfont, &MEOS_NoYes, &cl_autorun);
|
||||
static MenuEntry_t ME_GAMESETUP_ALWAYS_RUN = MAKE_MENUENTRY( "Always run:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_GAMESETUP_ALWAYS_RUN, Option );
|
||||
|
||||
static char const *MEOSN_GAMESETUP_WEAPSWITCH_PICKUP[] = { "Never", "If new", /*"If favored",*/ };
|
||||
|
@ -406,10 +413,10 @@ static MenuEntry_t ME_GAMESETUP_WEAPSWITCH_PICKUP = MAKE_MENUENTRY( "Equip picku
|
|||
|
||||
static char const *MEOSN_DemoRec[] = { "Off", "Running", };
|
||||
static MenuOptionSet_t MEOS_DemoRec = MAKE_MENUOPTIONSET( MEOSN_DemoRec, NULL, 0x3 );
|
||||
static MenuOption_t MEO_GAMESETUP_DEMOREC = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &ud.m_recstat );
|
||||
static MenuOption_t MEO_GAMESETUP_DEMOREC = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &m_recstat );
|
||||
static MenuEntry_t ME_GAMESETUP_DEMOREC = MAKE_MENUENTRY( "Record demo:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_GAMESETUP_DEMOREC, Option );
|
||||
|
||||
static MenuOption_t MEO_ADULTMODE = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &adult_lockout.Value);
|
||||
static MenuOption_t MEO_ADULTMODE = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &adult_lockout);
|
||||
static MenuEntry_t ME_ADULTMODE = MAKE_MENUENTRY( "Parental lock:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_ADULTMODE, Option );
|
||||
|
||||
#if defined(EDUKE32_ANDROID_MENU) || !defined(EDUKE32_SIMPLE_MENU)
|
||||
|
@ -448,7 +455,14 @@ MAKE_MENU_TOP_ENTRYLINK( "Touch Setup", MEF_BigOptionsRtSections, OPTIONS_TOUCHS
|
|||
MAKE_MENU_TOP_ENTRYLINK("Cheats", MEF_OptionsMenu, OPTIONS_CHEATS, MENU_CHEATS);
|
||||
#endif
|
||||
|
||||
static int32_t newresolution, newrendermode, newfullscreen, newvsync, newborderless;
|
||||
// Zhe menu code lacks flexibility, it can either be hardwired to ints or to CVARs.
|
||||
// Since CVARs are more important it means that these need to be implemented as CVARs even though they are just temporaries.
|
||||
// By giving them no name we ensure that they remain outside the CVAR system.
|
||||
CVAR_UNAMED(Int, newresolution)
|
||||
CVAR_UNAMED(Int, newrendermode)
|
||||
CVAR_UNAMED(Int, newfullscreen)
|
||||
CVAR_UNAMED(Int, newvsync)
|
||||
CVAR_UNAMED(Int, newborderless)
|
||||
|
||||
enum resflags_t {
|
||||
RES_FS = 0x1,
|
||||
|
@ -472,13 +486,8 @@ static MenuOption_t MEO_VIDEOSETUP_RESOLUTION = MAKE_MENUOPTION( &MF_Redfont, &M
|
|||
static MenuEntry_t ME_VIDEOSETUP_RESOLUTION = MAKE_MENUENTRY( "Resolution:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_VIDEOSETUP_RESOLUTION, Option );
|
||||
|
||||
#ifdef USE_OPENGL
|
||||
#ifdef POLYMER
|
||||
static char const *MEOSN_VIDEOSETUP_RENDERER[] = { "Classic", "Polymost", "Polymer", };
|
||||
static int32_t MEOSV_VIDEOSETUP_RENDERER[] = { REND_CLASSIC, REND_POLYMOST, REND_POLYMER, };
|
||||
#else
|
||||
static char const *MEOSN_VIDEOSETUP_RENDERER[] = { "Classic", "OpenGL", };
|
||||
static int32_t MEOSV_VIDEOSETUP_RENDERER[] = { REND_CLASSIC, REND_POLYMOST, };
|
||||
#endif
|
||||
|
||||
static MenuOptionSet_t MEOS_VIDEOSETUP_RENDERER = MAKE_MENUOPTIONSET( MEOSN_VIDEOSETUP_RENDERER, MEOSV_VIDEOSETUP_RENDERER, 0x2 );
|
||||
|
||||
|
@ -512,85 +521,53 @@ static MenuLink_t MEO_DISPLAYSETUP_COLORCORR = { MENU_COLCORR, MA_Advance, };
|
|||
static MenuEntry_t ME_DISPLAYSETUP_COLORCORR = MAKE_MENUENTRY( "Color Correction", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_COLORCORR, Link );
|
||||
|
||||
|
||||
static char const *MEOSN_DISPLAYSETUP_UPSCALING[] = { "None", "2x" };
|
||||
static int32_t MEOSV_DISPLAYSETUP_UPSCALING[] = { 1, 2 };
|
||||
static MenuOptionSet_t MEOS_DISPLAYSETUP_UPSCALING = MAKE_MENUOPTIONSET( MEOSN_DISPLAYSETUP_UPSCALING, MEOSV_DISPLAYSETUP_UPSCALING, 0x0 );
|
||||
static MenuOption_t MEO_DISPLAYSETUP_UPSCALING = MAKE_MENUOPTION( &MF_Redfont, &MEOS_DISPLAYSETUP_UPSCALING, &ud.detail );
|
||||
static MenuEntry_t ME_DISPLAYSETUP_UPSCALING = MAKE_MENUENTRY( "Upscaling:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_UPSCALING, Option );
|
||||
|
||||
|
||||
#ifndef EDUKE32_ANDROID_MENU
|
||||
static MenuOption_t MEO_DISPLAYSETUP_ASPECTRATIO = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &r_usenewaspect);
|
||||
static MenuEntry_t ME_DISPLAYSETUP_ASPECTRATIO = MAKE_MENUENTRY( "Widescreen:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_ASPECTRATIO, Option );
|
||||
#endif
|
||||
|
||||
static MenuOption_t MEO_DISPLAYSETUP_VOXELS = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &r_voxels.Value);
|
||||
static MenuOption_t MEO_DISPLAYSETUP_VOXELS = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &r_voxels);
|
||||
static MenuEntry_t ME_DISPLAYSETUP_VOXELS = MAKE_MENUENTRY( "Voxels:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_VOXELS, Option );
|
||||
|
||||
static MenuRangeInt32_t MEO_DISPLAYSETUP_FOV = MAKE_MENURANGE( &r_fov.Value, &MF_Redfont, 70, 120, 0, 11, 1 );
|
||||
static MenuRangeInt32_t MEO_DISPLAYSETUP_FOV = MAKE_MENURANGE( &r_fov, &MF_Redfont, 70, 120, 0, 11, 1 );
|
||||
static MenuEntry_t ME_DISPLAYSETUP_FOV = MAKE_MENUENTRY( "FOV:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_FOV, RangeInt32 );
|
||||
|
||||
|
||||
#ifdef USE_OPENGL
|
||||
# if !(defined EDUKE32_STANDALONE) || defined POLYMER
|
||||
#define TEXFILTER_MENU_OPTIONS
|
||||
//POGOTODO: allow filtering again in standalone once indexed colour textures support filtering
|
||||
#ifdef TEXFILTER_MENU_OPTIONS
|
||||
static char const *MEOSN_DISPLAYSETUP_TEXFILTER[] = { "Classic", "Filtered" };
|
||||
static int32_t MEOSV_DISPLAYSETUP_TEXFILTER[] = { TEXFILTER_OFF, TEXFILTER_ON };
|
||||
static MenuOptionSet_t MEOS_DISPLAYSETUP_TEXFILTER = MAKE_MENUOPTIONSET( MEOSN_DISPLAYSETUP_TEXFILTER, MEOSV_DISPLAYSETUP_TEXFILTER, 0x2 );
|
||||
static MenuOption_t MEO_DISPLAYSETUP_TEXFILTER = MAKE_MENUOPTION( &MF_Redfont, &MEOS_DISPLAYSETUP_TEXFILTER, &hw_texfilter.Value );
|
||||
static MenuOption_t MEO_DISPLAYSETUP_TEXFILTER = MAKE_MENUOPTION( &MF_Redfont, &MEOS_DISPLAYSETUP_TEXFILTER, &hw_texfilter );
|
||||
static MenuEntry_t ME_DISPLAYSETUP_TEXFILTER = MAKE_MENUENTRY( "Texture Mode:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_TEXFILTER, Option );
|
||||
|
||||
static char const *MEOSN_DISPLAYSETUP_ANISOTROPY[] = { "Max", "None", "2x", "4x", "8x", "16x", };
|
||||
static int32_t MEOSV_DISPLAYSETUP_ANISOTROPY[] = { 0, 1, 2, 4, 8, 16, };
|
||||
static MenuOptionSet_t MEOS_DISPLAYSETUP_ANISOTROPY = MAKE_MENUOPTIONSET( MEOSN_DISPLAYSETUP_ANISOTROPY, MEOSV_DISPLAYSETUP_ANISOTROPY, 0x0 );
|
||||
static MenuOption_t MEO_DISPLAYSETUP_ANISOTROPY = MAKE_MENUOPTION(&MF_Redfont, &MEOS_DISPLAYSETUP_ANISOTROPY, &hw_anisotropy.Value);
|
||||
static MenuOption_t MEO_DISPLAYSETUP_ANISOTROPY = MAKE_MENUOPTION(&MF_Redfont, &MEOS_DISPLAYSETUP_ANISOTROPY, &hw_anisotropy);
|
||||
static MenuEntry_t ME_DISPLAYSETUP_ANISOTROPY = MAKE_MENUENTRY( "Anisotropy:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_ANISOTROPY, Option );
|
||||
#endif
|
||||
# endif
|
||||
|
||||
# ifdef EDUKE32_ANDROID_MENU
|
||||
static MenuOption_t MEO_DISPLAYSETUP_HIDEDPAD = MAKE_MENUOPTION(&MF_Redfont, &MEOS_NoYes, &droidinput.hideStick);
|
||||
static MenuEntry_t ME_DISPLAYSETUP_HIDEDPAD = MAKE_MENUENTRY("Hide touch D-pad:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_HIDEDPAD, Option);
|
||||
|
||||
static MenuRangeFloat_t MEO_DISPLAYSETUP_TOUCHALPHA = MAKE_MENURANGE(&droidinput.gameControlsAlpha, &MF_Redfont, 0, 1, 0, 16, 2);
|
||||
static MenuEntry_t ME_DISPLAYSETUP_TOUCHALPHA = MAKE_MENUENTRY("UI opacity:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_TOUCHALPHA, RangeFloat);
|
||||
# endif
|
||||
|
||||
#endif
|
||||
|
||||
static char const s_Scale[] = "Scale:";
|
||||
|
||||
static MenuOption_t MEO_SCREENSETUP_CROSSHAIR = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &cl_crosshair.Value);
|
||||
static MenuOption_t MEO_SCREENSETUP_CROSSHAIR = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &cl_crosshair);
|
||||
static MenuEntry_t ME_SCREENSETUP_CROSSHAIR = MAKE_MENUENTRY( "Crosshair:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SCREENSETUP_CROSSHAIR, Option );
|
||||
static MenuRangeInt32_t MEO_SCREENSETUP_CROSSHAIRSIZE = MAKE_MENURANGE( &cl_crosshairscale.Value, &MF_Redfont, 25, 100, 0, 16, 2 );
|
||||
static MenuRangeInt32_t MEO_SCREENSETUP_CROSSHAIRSIZE = MAKE_MENURANGE( &cl_crosshairscale, &MF_Redfont, 25, 100, 0, 16, 2 );
|
||||
static MenuEntry_t ME_SCREENSETUP_CROSSHAIRSIZE = MAKE_MENUENTRY( s_Scale, &MF_Redfont, &MEF_BigOptions_Apply, &MEO_SCREENSETUP_CROSSHAIRSIZE, RangeInt32 );
|
||||
|
||||
static int32_t vpsize;
|
||||
static MenuRangeInt32_t MEO_SCREENSETUP_SCREENSIZE = MAKE_MENURANGE( &vpsize, &MF_Redfont, 0, 0, 0, 1, EnforceIntervals );
|
||||
static MenuOption_t MEO_SCREENSETUP_SCREENSIZE_TWO = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &vpsize );
|
||||
static MenuRangeInt32_t MEO_SCREENSETUP_SCREENSIZE = MAKE_MENURANGE( &hud_size, &MF_Redfont, 0, 11, 0, 1, EnforceIntervals );
|
||||
static MenuOption_t MEO_SCREENSETUP_SCREENSIZE_TWO = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &hud_size );
|
||||
static MenuEntry_t ME_SCREENSETUP_SCREENSIZE = MAKE_MENUENTRY( "Status bar:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SCREENSETUP_SCREENSIZE, RangeInt32 );
|
||||
static MenuRangeInt32_t MEO_SCREENSETUP_TEXTSIZE = MAKE_MENURANGE( &hud_textscale.Value, &MF_Redfont, 100, 400, 0, 16, 2 );
|
||||
static MenuRangeInt32_t MEO_SCREENSETUP_TEXTSIZE = MAKE_MENURANGE( &hud_textscale, &MF_Redfont, 100, 400, 0, 16, 2 );
|
||||
static MenuEntry_t ME_SCREENSETUP_TEXTSIZE = MAKE_MENUENTRY( s_Scale, &MF_Redfont, &MEF_BigOptions_Apply, &MEO_SCREENSETUP_TEXTSIZE, RangeInt32 );
|
||||
static MenuOption_t MEO_SCREENSETUP_LEVELSTATS = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &hud_stats.Value);
|
||||
static MenuOption_t MEO_SCREENSETUP_LEVELSTATS = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &hud_stats);
|
||||
static MenuEntry_t ME_SCREENSETUP_LEVELSTATS = MAKE_MENUENTRY( "Level stats:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SCREENSETUP_LEVELSTATS, Option );
|
||||
|
||||
|
||||
static MenuOption_t MEO_SCREENSETUP_SHOWPICKUPMESSAGES = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &ud.fta_on);
|
||||
static MenuOption_t MEO_SCREENSETUP_SHOWPICKUPMESSAGES = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &hud_messages);
|
||||
static MenuEntry_t ME_SCREENSETUP_SHOWPICKUPMESSAGES = MAKE_MENUENTRY( "Game messages:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SCREENSETUP_SHOWPICKUPMESSAGES, Option );
|
||||
|
||||
|
||||
|
||||
#ifdef EDUKE32_ANDROID_MENU
|
||||
static char const *MEOSN_SCREENSETUP_STATUSBARONTOP[] = { "Bottom", "Top" };
|
||||
static int32_t MEOSV_SCREENSETUP_STATUSBARONTOP[] = { 0, 1 };
|
||||
static MenuOptionSet_t MEOS_SCREENSETUP_STATUSBARONTOP = MAKE_MENUOPTIONSET( MEOSN_SCREENSETUP_STATUSBARONTOP, MEOSV_SCREENSETUP_STATUSBARONTOP, 0x2 );
|
||||
static MenuOption_t MEO_SCREENSETUP_STATUSBARONTOP = MAKE_MENUOPTION(&MF_Redfont, &MEOS_SCREENSETUP_STATUSBARONTOP, &hud_position.Value);
|
||||
static MenuEntry_t ME_SCREENSETUP_STATUSBARONTOP = MAKE_MENUENTRY( "Status bar:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SCREENSETUP_STATUSBARONTOP, Option );
|
||||
#endif
|
||||
|
||||
static MenuRangeInt32_t MEO_SCREENSETUP_SBARSIZE = MAKE_MENURANGE( &ud.statusbarscale, &MF_Redfont, 50, 100, 0, 10, 2 );
|
||||
static MenuRangeInt32_t MEO_SCREENSETUP_SBARSIZE = MAKE_MENURANGE( &hud_scale, &MF_Redfont, 50, 100, 0, 10, 2 );
|
||||
static MenuEntry_t ME_SCREENSETUP_SBARSIZE = MAKE_MENUENTRY( s_Scale, &MF_Redfont, &MEF_BigOptions_Apply, &MEO_SCREENSETUP_SBARSIZE, RangeInt32 );
|
||||
|
||||
|
||||
|
@ -598,16 +575,9 @@ static MenuLink_t MEO_DISPLAYSETUP_SCREENSETUP = { MENU_SCREENSETUP, MA_Advance,
|
|||
static MenuEntry_t ME_DISPLAYSETUP_SCREENSETUP = MAKE_MENUENTRY( "HUD setup", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_SCREENSETUP, Link );
|
||||
|
||||
|
||||
#ifndef EDUKE32_SIMPLE_MENU
|
||||
#ifdef USE_OPENGL
|
||||
static MenuLink_t MEO_DISPLAYSETUP_ADVANCED_GL_POLYMOST = { MENU_POLYMOST, MA_Advance, };
|
||||
static MenuEntry_t ME_DISPLAYSETUP_ADVANCED_GL_POLYMOST = MAKE_MENUENTRY( "Polymost setup", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_ADVANCED_GL_POLYMOST, Link );
|
||||
|
||||
#ifdef POLYMER
|
||||
static MenuLink_t MEO_DISPLAYSETUP_ADVANCED_GL_POLYMER = { MENU_POLYMER, MA_Advance, };
|
||||
static MenuEntry_t ME_DISPLAYSETUP_ADVANCED_GL_POLYMER = MAKE_MENUENTRY("Polymer setup", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_ADVANCED_GL_POLYMER, Link);
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef EDUKE32_ANDROID_MENU
|
||||
|
@ -710,60 +680,22 @@ static MenuEntry_t *MEL_DISPLAYSETUP[] = {
|
|||
&ME_DISPLAYSETUP_VOXELS,
|
||||
&ME_DISPLAYSETUP_FOV,
|
||||
#endif
|
||||
&ME_DISPLAYSETUP_UPSCALING,
|
||||
};
|
||||
|
||||
#ifdef USE_OPENGL
|
||||
static MenuEntry_t *MEL_DISPLAYSETUP_GL[] = {
|
||||
&ME_DISPLAYSETUP_SCREENSETUP,
|
||||
&ME_DISPLAYSETUP_COLORCORR,
|
||||
#ifndef EDUKE32_ANDROID_MENU
|
||||
&ME_DISPLAYSETUP_VIDEOSETUP,
|
||||
&ME_DISPLAYSETUP_ASPECTRATIO,
|
||||
&ME_DISPLAYSETUP_VOXELS,
|
||||
&ME_DISPLAYSETUP_FOV,
|
||||
#endif
|
||||
#ifndef EDUKE32_STANDALONE
|
||||
# ifdef TEXFILTER_MENU_OPTIONS
|
||||
&ME_DISPLAYSETUP_TEXFILTER,
|
||||
# endif
|
||||
#endif
|
||||
#ifdef EDUKE32_ANDROID_MENU
|
||||
&ME_DISPLAYSETUP_HIDEDPAD,
|
||||
&ME_DISPLAYSETUP_TOUCHALPHA,
|
||||
#else
|
||||
# ifndef EDUKE32_STANDALONE
|
||||
# ifdef TEXFILTER_MENU_OPTIONS
|
||||
&ME_DISPLAYSETUP_ANISOTROPY,
|
||||
# endif
|
||||
# endif
|
||||
# ifndef EDUKE32_SIMPLE_MENU
|
||||
&ME_DISPLAYSETUP_ADVANCED_GL_POLYMOST,
|
||||
#endif
|
||||
#endif
|
||||
};
|
||||
|
||||
#ifdef POLYMER
|
||||
static MenuEntry_t *MEL_DISPLAYSETUP_GL_POLYMER[] = {
|
||||
&ME_DISPLAYSETUP_SCREENSETUP,
|
||||
&ME_DISPLAYSETUP_COLORCORR,
|
||||
#ifndef EDUKE32_ANDROID_MENU
|
||||
&ME_DISPLAYSETUP_VIDEOSETUP,
|
||||
&ME_DISPLAYSETUP_FOV,
|
||||
&ME_DISPLAYSETUP_VOXELS,
|
||||
#endif
|
||||
#ifdef TEXFILTER_MENU_OPTIONS
|
||||
&ME_DISPLAYSETUP_TEXFILTER,
|
||||
&ME_DISPLAYSETUP_ANISOTROPY,
|
||||
#endif
|
||||
#ifndef EDUKE32_SIMPLE_MENU
|
||||
&ME_DISPLAYSETUP_ADVANCED_GL_POLYMER,
|
||||
#endif
|
||||
};
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
static char const *MenuKeyNone = " -";
|
||||
|
@ -830,37 +762,32 @@ static int32_t MenuMouseDataIndex[MENUMOUSEFUNCTIONS][2] = {
|
|||
static MenuOption_t MEO_MOUSEJOYSETUPBTNS_TEMPLATE = MAKE_MENUOPTION( &MF_Minifont, &MEOS_Gamefuncs, NULL );
|
||||
static MenuOption_t MEO_MOUSESETUPBTNS[MENUMOUSEFUNCTIONS];
|
||||
static MenuEntry_t ME_MOUSEJOYSETUPBTNS_TEMPLATE = MAKE_MENUENTRY( NULL, &MF_Minifont, &MEF_FuncList, NULL, Option );
|
||||
static MenuEntry_t ME_MOUSESETUPBTNS[MENUMOUSEFUNCTIONS];
|
||||
static MenuEntry_t *MEL_MOUSESETUPBTNS[MENUMOUSEFUNCTIONS];
|
||||
|
||||
static MenuLink_t MEO_MOUSESETUP_BTNS = { MENU_MOUSEBTNS, MA_Advance, };
|
||||
static MenuEntry_t ME_MOUSESETUP_BTNS = MAKE_MENUENTRY( "Button assignment", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_BTNS, Link );
|
||||
static MenuRangeFloat_t MEO_MOUSESETUP_SENSITIVITY = MAKE_MENURANGE( &CONTROL_MouseSensitivity, &MF_Redfont, .5f, 16.f, 0.f, 32, 1 );
|
||||
static MenuRangeFloat_t MEO_MOUSESETUP_SENSITIVITY = MAKE_MENURANGE( &in_mousesensitivity, &MF_Redfont, .5f, 16.f, 0.f, 32, 1 );
|
||||
static MenuEntry_t ME_MOUSESETUP_SENSITIVITY = MAKE_MENUENTRY( "Sensitivity:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_SENSITIVITY, RangeFloat );
|
||||
|
||||
#ifndef EDUKE32_SIMPLE_MENU
|
||||
static char const *MEOSN_MOUSESETUP_AIM_TYPE [] = { "Toggle", "Hold" };
|
||||
static MenuOptionSet_t MEOS_MOUSESETUP_AIM_TYPE = MAKE_MENUOPTIONSET(MEOSN_MOUSESETUP_AIM_TYPE, NULL, 0x2);
|
||||
static MenuOption_t MEO_MOUSESETUP_MOUSEAIMINGTYPE = MAKE_MENUOPTION(&MF_Redfont, &MEOS_MOUSESETUP_AIM_TYPE, &in_aimmode.Value);
|
||||
static MenuOption_t MEO_MOUSESETUP_MOUSEAIMINGTYPE = MAKE_MENUOPTION(&MF_Redfont, &MEOS_MOUSESETUP_AIM_TYPE, &in_aimmode);
|
||||
static MenuEntry_t ME_MOUSESETUP_MOUSEAIMINGTYPE = MAKE_MENUENTRY("Aiming type:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_MOUSEAIMINGTYPE, Option);
|
||||
static MenuOption_t MEO_MOUSESETUP_MOUSEAIMING = MAKE_MENUOPTION( &MF_Redfont, &MEOS_NoYes, &in_mousemode.Value );
|
||||
static MenuOption_t MEO_MOUSESETUP_MOUSEAIMING = MAKE_MENUOPTION( &MF_Redfont, &MEOS_NoYes, &in_mousemode );
|
||||
static MenuEntry_t ME_MOUSESETUP_MOUSEAIMING = MAKE_MENUENTRY( "Vertical aiming:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_MOUSEAIMING, Option );
|
||||
#endif
|
||||
static MenuOption_t MEO_MOUSESETUP_INVERT = MAKE_MENUOPTION( &MF_Redfont, &MEOS_YesNo, &in_mouseflip.Value );
|
||||
static MenuOption_t MEO_MOUSESETUP_INVERT = MAKE_MENUOPTION( &MF_Redfont, &MEOS_YesNo, &in_mouseflip );
|
||||
static MenuEntry_t ME_MOUSESETUP_INVERT = MAKE_MENUENTRY( "Invert aiming:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_INVERT, Option );
|
||||
static MenuOption_t MEO_MOUSESETUP_SMOOTH = MAKE_MENUOPTION( &MF_Redfont, &MEOS_NoYes, &in_mousesmoothing.Value );
|
||||
static MenuOption_t MEO_MOUSESETUP_SMOOTH = MAKE_MENUOPTION( &MF_Redfont, &MEOS_NoYes, &in_mousesmoothing );
|
||||
static MenuEntry_t ME_MOUSESETUP_SMOOTH = MAKE_MENUENTRY( "Filter input:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_SMOOTH, Option );
|
||||
#ifndef EDUKE32_SIMPLE_MENU
|
||||
static MenuLink_t MEO_MOUSESETUP_ADVANCED = { MENU_MOUSEADVANCED, MA_Advance, };
|
||||
static MenuEntry_t ME_MOUSESETUP_ADVANCED = MAKE_MENUENTRY( "Advanced setup", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_ADVANCED, Link );
|
||||
#endif
|
||||
static MenuRangeInt32_t MEO_MOUSEADVANCED_SCALEX = MAKE_MENURANGE(&MouseAnalogueScale[0], &MF_Redfont, -262144, 262144, 65536, 161, 3);
|
||||
static MenuRangeInt32_t MEO_MOUSEADVANCED_SCALEX = MAKE_MENURANGE(&in_mousescalex, &MF_Redfont, -262144, 262144, 65536, 161, 3);
|
||||
static MenuEntry_t ME_MOUSEADVANCED_SCALEX = MAKE_MENUENTRY("X-Scale:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSEADVANCED_SCALEX, RangeInt32);
|
||||
static MenuRangeInt32_t MEO_MOUSEADVANCED_SCALEY = MAKE_MENURANGE(&MouseAnalogueScale[1], &MF_Redfont, -262144, 262144, 65536, 161, 3);
|
||||
static MenuRangeInt32_t MEO_MOUSEADVANCED_SCALEY = MAKE_MENURANGE(&in_mousescaley, &MF_Redfont, -262144, 262144, 65536, 161, 3);
|
||||
static MenuEntry_t ME_MOUSEADVANCED_SCALEY = MAKE_MENUENTRY("Y-Scale:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSEADVANCED_SCALEY, RangeInt32);
|
||||
|
||||
static MenuEntry_t *MEL_MOUSESETUP[] = {
|
||||
&ME_MOUSESETUP_BTNS,
|
||||
&ME_MOUSESETUP_SENSITIVITY,
|
||||
#ifdef EDUKE32_SIMPLE_MENU
|
||||
&ME_MOUSEADVANCED_SCALEX,
|
||||
|
@ -910,7 +837,7 @@ static MenuEntry_t *MEL_TOUCHSENS [] = {
|
|||
};
|
||||
#endif
|
||||
|
||||
static MenuOption_t MEO_JOYSTICK_ENABLE = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &in_joystick.Value );
|
||||
static MenuOption_t MEO_JOYSTICK_ENABLE = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &in_joystick );
|
||||
static MenuEntry_t ME_JOYSTICK_ENABLE = MAKE_MENUENTRY( "Enable Gamepad:", &MF_Redfont, &MEF_BigOptionsRtSections, &MEO_JOYSTICK_ENABLE, Option );
|
||||
|
||||
MAKE_MENU_TOP_ENTRYLINK( "Edit Buttons", MEF_BigOptionsRtSections, JOYSTICK_EDITBUTTONS, MENU_JOYSTICKBTNS );
|
||||
|
@ -992,28 +919,23 @@ static MenuEntry_t *MEL_INTERNAL_JOYSTICKAXIS_DIGITAL[] = {
|
|||
};
|
||||
|
||||
#ifdef USE_OPENGL
|
||||
static MenuOption_t MEO_RENDERERSETUP_HIGHTILE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NoYes, &hw_hightile.Value );
|
||||
static MenuOption_t MEO_RENDERERSETUP_HIGHTILE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NoYes, &hw_hightile );
|
||||
static MenuEntry_t ME_RENDERERSETUP_HIGHTILE = MAKE_MENUENTRY( "True color textures:", &MF_Bluefont, &MEF_SmallOptions, &MEO_RENDERERSETUP_HIGHTILE, Option );
|
||||
|
||||
static char const *MEOSN_RENDERERSETUP_TEXQUALITY [] = { "Full", "Half", "Barf", };
|
||||
static MenuOptionSet_t MEOS_RENDERERSETUP_TEXQUALITY = MAKE_MENUOPTIONSET(MEOSN_RENDERERSETUP_TEXQUALITY, NULL, 0x2);
|
||||
static MenuOption_t MEO_RENDERERSETUP_TEXQUALITY = MAKE_MENUOPTION(&MF_Bluefont, &MEOS_RENDERERSETUP_TEXQUALITY, &r_downsize);
|
||||
static MenuEntry_t ME_RENDERERSETUP_TEXQUALITY = MAKE_MENUENTRY("GL texture quality:", &MF_Bluefont, &MEF_SmallOptions, &MEO_RENDERERSETUP_TEXQUALITY, Option);
|
||||
|
||||
|
||||
static MenuOption_t MEO_RENDERERSETUP_PRECACHE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &r_precache.Value );
|
||||
static MenuOption_t MEO_RENDERERSETUP_PRECACHE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &r_precache );
|
||||
static MenuEntry_t ME_RENDERERSETUP_PRECACHE = MAKE_MENUENTRY( "Pre-load map textures:", &MF_Bluefont, &MEF_SmallOptions, &MEO_RENDERERSETUP_PRECACHE, Option );
|
||||
# ifndef EDUKE32_GLES
|
||||
static char const *MEOSN_RENDERERSETUP_TEXCACHE[] = { "Off", "On", "Compr.", };
|
||||
static MenuOptionSet_t MEOS_RENDERERSETUP_TEXCACHE = MAKE_MENUOPTIONSET( MEOSN_RENDERERSETUP_TEXCACHE, NULL, 0x2 );
|
||||
# endif
|
||||
# ifdef USE_GLEXT
|
||||
static MenuOption_t MEO_RENDERERSETUP_DETAILTEX = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NoYes, &hw_detailmapping.Value );
|
||||
static MenuOption_t MEO_RENDERERSETUP_DETAILTEX = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NoYes, &hw_detailmapping );
|
||||
static MenuEntry_t ME_RENDERERSETUP_DETAILTEX = MAKE_MENUENTRY( "Detail textures:", &MF_Bluefont, &MEF_SmallOptions, &MEO_RENDERERSETUP_DETAILTEX, Option );
|
||||
static MenuOption_t MEO_RENDERERSETUP_GLOWTEX = MAKE_MENUOPTION(&MF_Bluefont, &MEOS_NoYes, &hw_glowmapping.Value);
|
||||
static MenuOption_t MEO_RENDERERSETUP_GLOWTEX = MAKE_MENUOPTION(&MF_Bluefont, &MEOS_NoYes, &hw_glowmapping);
|
||||
static MenuEntry_t ME_RENDERERSETUP_GLOWTEX = MAKE_MENUENTRY("Glow textures:", &MF_Bluefont, &MEF_SmallOptions, &MEO_RENDERERSETUP_GLOWTEX, Option);
|
||||
# endif
|
||||
static MenuOption_t MEO_RENDERERSETUP_MODELS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NoYes, &hw_models.Value );
|
||||
static MenuOption_t MEO_RENDERERSETUP_MODELS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NoYes, &hw_models );
|
||||
static MenuEntry_t ME_RENDERERSETUP_MODELS = MAKE_MENUENTRY( "3D models:", &MF_Bluefont, &MEF_SmallOptions, &MEO_RENDERERSETUP_MODELS, Option );
|
||||
#endif
|
||||
|
||||
|
@ -1021,7 +943,6 @@ static MenuEntry_t ME_RENDERERSETUP_MODELS = MAKE_MENUENTRY( "3D models:", &MF_B
|
|||
#ifdef USE_OPENGL
|
||||
static MenuEntry_t *MEL_RENDERERSETUP_POLYMOST[] = {
|
||||
&ME_RENDERERSETUP_HIGHTILE,
|
||||
&ME_RENDERERSETUP_TEXQUALITY,
|
||||
&ME_RENDERERSETUP_PRECACHE,
|
||||
# ifdef USE_GLEXT
|
||||
&ME_RENDERERSETUP_DETAILTEX,
|
||||
|
@ -1033,15 +954,11 @@ static MenuEntry_t *MEL_RENDERERSETUP_POLYMOST[] = {
|
|||
|
||||
#endif
|
||||
|
||||
#ifdef EDUKE32_ANDROID_MENU
|
||||
static MenuRangeFloat_t MEO_COLCORR_GAMMA = MAKE_MENURANGE( &g_videoGamma, &MF_Bluefont, 1.f, 2.5f, 0.f, 39, 1 );
|
||||
#else
|
||||
static MenuRangeFloat_t MEO_COLCORR_GAMMA = MAKE_MENURANGE( &g_videoGamma, &MF_Bluefont, 0.3f, 4.f, 0.f, 75, 1 );
|
||||
#endif
|
||||
static MenuRangeFloat_t MEO_COLCORR_GAMMA = MAKE_MENURANGE( &vid_gamma, &MF_Bluefont, 0.3f, 4.f, 0.f, 75, 1 );
|
||||
static MenuEntry_t ME_COLCORR_GAMMA = MAKE_MENUENTRY( "Gamma:", &MF_Redfont, &MEF_ColorCorrect, &MEO_COLCORR_GAMMA, RangeFloat );
|
||||
static MenuRangeFloat_t MEO_COLCORR_CONTRAST = MAKE_MENURANGE( &g_videoContrast, &MF_Bluefont, 0.1f, 2.7f, 0.f, 53, 1 );
|
||||
static MenuRangeFloat_t MEO_COLCORR_CONTRAST = MAKE_MENURANGE( &vid_contrast, &MF_Bluefont, 0.1f, 2.7f, 0.f, 53, 1 );
|
||||
static MenuEntry_t ME_COLCORR_CONTRAST = MAKE_MENUENTRY( "Contrast:", &MF_Redfont, &MEF_ColorCorrect, &MEO_COLCORR_CONTRAST, RangeFloat );
|
||||
static MenuRangeFloat_t MEO_COLCORR_BRIGHTNESS = MAKE_MENURANGE( &g_videoBrightness, &MF_Bluefont, -0.8f, 0.8f, 0.f, 33, 1 );
|
||||
static MenuRangeFloat_t MEO_COLCORR_BRIGHTNESS = MAKE_MENURANGE( &vid_brightness, &MF_Bluefont, -0.8f, 0.8f, 0.f, 33, 1 );
|
||||
static MenuEntry_t ME_COLCORR_BRIGHTNESS = MAKE_MENUENTRY( "Brightness:", &MF_Redfont, &MEF_ColorCorrect, &MEO_COLCORR_BRIGHTNESS, RangeFloat );
|
||||
static MenuLink_t MEO_COLCORR_RESET = { MENU_COLCORRRESETVERIFY, MA_None, };
|
||||
static MenuEntry_t ME_COLCORR_RESET = MAKE_MENUENTRY( "Reset To Defaults", &MF_Redfont, &MEF_ColorCorrect, &MEO_COLCORR_RESET, Link );
|
||||
|
@ -1051,7 +968,7 @@ static MenuEntry_t ME_COLCORR_RESET = MAKE_MENUENTRY( "Reset To Defaults", &MF_R
|
|||
#define MINVIS 0.125f
|
||||
#endif
|
||||
#ifndef EDUKE32_SIMPLE_MENU
|
||||
static MenuRangeFloat_t MEO_COLCORR_AMBIENT = MAKE_MENURANGE( &r_ambientlight.Value, &MF_Bluefont, MINVIS, 4.f, 0.f, 32, 1 );
|
||||
static MenuRangeFloat_t MEO_COLCORR_AMBIENT = MAKE_MENURANGE( &r_ambientlight, &MF_Bluefont, MINVIS, 4.f, 0.f, 32, 1 );
|
||||
static MenuEntry_t ME_COLCORR_AMBIENT = MAKE_MENUENTRY( "Visibility:", &MF_Redfont, &MEF_ColorCorrect, &MEO_COLCORR_AMBIENT, RangeFloat );
|
||||
#endif
|
||||
static MenuEntry_t *MEL_COLCORR[] = {
|
||||
|
@ -1099,19 +1016,21 @@ static MenuEntry_t ME_SAVE_NEW = MAKE_MENUENTRY( s_NewSaveGame, &MF_Minifont, &M
|
|||
static MenuEntry_t *ME_SAVE;
|
||||
static MenuEntry_t **MEL_SAVE;
|
||||
|
||||
static int32_t soundrate, soundvoices, musicdevice;
|
||||
static MenuOption_t MEO_SOUND = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &snd_enabled.Value );
|
||||
CVAR_UNAMED(Int, soundrate)
|
||||
CVAR_UNAMED(Int, soundvoices)
|
||||
CVAR_UNAMED(Int, musicdevice)
|
||||
static MenuOption_t MEO_SOUND = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &snd_enabled );
|
||||
static MenuEntry_t ME_SOUND = MAKE_MENUENTRY( "Sound:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SOUND, Option );
|
||||
|
||||
static MenuOption_t MEO_SOUND_MUSIC = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &mus_enabled.Value );
|
||||
static MenuOption_t MEO_SOUND_MUSIC = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &mus_enabled );
|
||||
static MenuEntry_t ME_SOUND_MUSIC = MAKE_MENUENTRY( "Music:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SOUND_MUSIC, Option );
|
||||
|
||||
static char const s_Volume[] = "Volume:";
|
||||
|
||||
static MenuRangeInt32_t MEO_SOUND_VOLUME_FX = MAKE_MENURANGE( &snd_fxvolume.Value, &MF_Redfont, 0, 255, 0, 33, 2 );
|
||||
static MenuRangeInt32_t MEO_SOUND_VOLUME_FX = MAKE_MENURANGE( &snd_fxvolume, &MF_Redfont, 0, 255, 0, 33, 2 );
|
||||
static MenuEntry_t ME_SOUND_VOLUME_FX = MAKE_MENUENTRY( s_Volume, &MF_Redfont, &MEF_BigOptions_Apply, &MEO_SOUND_VOLUME_FX, RangeInt32 );
|
||||
|
||||
static MenuRangeInt32_t MEO_SOUND_VOLUME_MUSIC = MAKE_MENURANGE( &mus_volume.Value, &MF_Redfont, 0, 255, 0, 33, 2 );
|
||||
static MenuRangeInt32_t MEO_SOUND_VOLUME_MUSIC = MAKE_MENURANGE( &mus_volume, &MF_Redfont, 0, 255, 0, 33, 2 );
|
||||
static MenuEntry_t ME_SOUND_VOLUME_MUSIC = MAKE_MENUENTRY( s_Volume, &MF_Redfont, &MEF_BigOptions_Apply, &MEO_SOUND_VOLUME_MUSIC, RangeInt32 );
|
||||
|
||||
#ifndef EDUKE32_STANDALONE
|
||||
|
@ -1180,12 +1099,12 @@ static MenuEntry_t *MEL_ADVSOUND[] = {
|
|||
};
|
||||
|
||||
|
||||
static MenuOption_t MEO_SAVESETUP_AUTOSAVE = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &cl_autosave.Value );
|
||||
static MenuOption_t MEO_SAVESETUP_AUTOSAVE = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &cl_autosave );
|
||||
static MenuEntry_t ME_SAVESETUP_AUTOSAVE = MAKE_MENUENTRY( "Checkpoints:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SAVESETUP_AUTOSAVE, Option );
|
||||
|
||||
static MenuOption_t MEO_SAVESETUP_AUTOSAVEDELETION = MAKE_MENUOPTION( &MF_Redfont, &MEOS_NoYes, &cl_autosavedeletion.Value );
|
||||
static MenuOption_t MEO_SAVESETUP_AUTOSAVEDELETION = MAKE_MENUOPTION( &MF_Redfont, &MEOS_NoYes, &cl_autosavedeletion );
|
||||
static MenuEntry_t ME_SAVESETUP_AUTOSAVEDELETION = MAKE_MENUENTRY( "Auto-Delete:", &MF_Redfont, &MEF_BigOptions_Apply, &MEO_SAVESETUP_AUTOSAVEDELETION, Option );
|
||||
static MenuRangeInt32_t MEO_SAVESETUP_MAXAUTOSAVES = MAKE_MENURANGE( &cl_maxautosaves.Value, &MF_Redfont, 1, 10, 0, 10, 1 );
|
||||
static MenuRangeInt32_t MEO_SAVESETUP_MAXAUTOSAVES = MAKE_MENURANGE( &cl_maxautosaves, &MF_Redfont, 1, 10, 0, 10, 1 );
|
||||
static MenuEntry_t ME_SAVESETUP_MAXAUTOSAVES = MAKE_MENUENTRY( "Limit:", &MF_Redfont, &MEF_BigOptions_Apply, &MEO_SAVESETUP_MAXAUTOSAVES, RangeInt32 );
|
||||
|
||||
static MenuEntry_t ME_SAVESETUP_CLEANUP = MAKE_MENUENTRY( "Clean Up Saves", &MF_Redfont, &MEF_BigOptionsRt, &MEO_NULL, Link );
|
||||
|
@ -1213,11 +1132,11 @@ static MenuEntry_t *MEL_NETWORK[] = {
|
|||
static char const *MEOSN_PLAYER_COLOR[] = { "Auto", "Blue", "Red", "Green", "Gray", "Dark gray", "Dark green", "Brown", "Dark blue", "Bright red", "Yellow", };
|
||||
static int32_t MEOSV_PLAYER_COLOR[] = { 0, 9, 10, 11, 12, 13, 14, 15, 16, 21, 23, };
|
||||
static MenuOptionSet_t MEOS_PLAYER_COLOR = MAKE_MENUOPTIONSET( MEOSN_PLAYER_COLOR, MEOSV_PLAYER_COLOR, 0x2 );
|
||||
static MenuOption_t MEO_PLAYER_COLOR = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_PLAYER_COLOR, &ud.color );
|
||||
static MenuOption_t MEO_PLAYER_COLOR = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_PLAYER_COLOR, &playercolor );
|
||||
static MenuEntry_t ME_PLAYER_COLOR = MAKE_MENUENTRY( "Color", &MF_Bluefont, &MEF_PlayerNarrow, &MEO_PLAYER_COLOR, Option );
|
||||
static char const *MEOSN_PLAYER_TEAM[] = { "Blue", "Red", "Green", "Gray", };
|
||||
static MenuOptionSet_t MEOS_PLAYER_TEAM = MAKE_MENUOPTIONSET( MEOSN_PLAYER_TEAM, NULL, 0x2 );
|
||||
static MenuOption_t MEO_PLAYER_TEAM = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_PLAYER_TEAM, &ud.team );
|
||||
static MenuOption_t MEO_PLAYER_TEAM = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_PLAYER_TEAM, &playerteam );
|
||||
static MenuEntry_t ME_PLAYER_TEAM = MAKE_MENUENTRY( "Team", &MF_Bluefont, &MEF_PlayerNarrow, &MEO_PLAYER_TEAM, Option );
|
||||
#ifndef EDUKE32_SIMPLE_MENU
|
||||
static MenuLink_t MEO_PLAYER_MACROS = { MENU_MACROS, MA_Advance, };
|
||||
|
@ -1266,26 +1185,26 @@ static MenuEntry_t *MEL_NETHOST[] = {
|
|||
};
|
||||
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_GAMETYPE = MAKE_MENUOPTIONSET( MEOSN_NetGametypes, NULL, 0x0 );
|
||||
static MenuOption_t MEO_NETOPTIONS_GAMETYPE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NETOPTIONS_GAMETYPE, &ud.m_coop );
|
||||
static MenuOption_t MEO_NETOPTIONS_GAMETYPE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NETOPTIONS_GAMETYPE, &m_coop );
|
||||
static MenuEntry_t ME_NETOPTIONS_GAMETYPE = MAKE_MENUENTRY( "Game Type", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_GAMETYPE, Option );
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_EPISODE = MAKE_MENUOPTIONSET( MEOSN_NetEpisodes, MEOSV_NetEpisodes, 0x0 );
|
||||
static int32_t NetEpisode;
|
||||
CVAR_UNAMED(Int, NetEpisode);
|
||||
static MenuOption_t MEO_NETOPTIONS_EPISODE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NETOPTIONS_EPISODE, &NetEpisode );
|
||||
static MenuEntry_t ME_NETOPTIONS_EPISODE = MAKE_MENUENTRY( "Episode", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_EPISODE, Option );
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_LEVEL_TEMPLATE = MAKE_MENUOPTIONSETNULL;
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_LEVEL[MAXVOLUMES];
|
||||
static MenuOption_t MEO_NETOPTIONS_LEVEL = MAKE_MENUOPTION( &MF_Bluefont, NULL, &ud.m_level_number );
|
||||
static MenuOption_t MEO_NETOPTIONS_LEVEL = MAKE_MENUOPTION( &MF_Bluefont, NULL, &m_level_number );
|
||||
static MenuEntry_t ME_NETOPTIONS_LEVEL = MAKE_MENUENTRY( "Level", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_LEVEL, Option );
|
||||
static MenuLink_t MEO_NETOPTIONS_USERMAP = { MENU_NETUSERMAP, MA_Advance, };
|
||||
static MenuEntry_t ME_NETOPTIONS_USERMAP = MAKE_MENUENTRY( "User Map", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_USERMAP, Link );
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_MONSTERS = MAKE_MENUOPTIONSET( MEOSN_NetSkills, NULL, 0x0 );
|
||||
static MenuOption_t MEO_NETOPTIONS_MONSTERS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NETOPTIONS_MONSTERS, NULL );
|
||||
static MenuEntry_t ME_NETOPTIONS_MONSTERS = MAKE_MENUENTRY( "Monsters", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_MONSTERS, Option );
|
||||
static MenuOption_t MEO_NETOPTIONS_MARKERS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &ud.m_marker );
|
||||
static MenuOption_t MEO_NETOPTIONS_MARKERS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &m_marker );
|
||||
static MenuEntry_t ME_NETOPTIONS_MARKERS = MAKE_MENUENTRY( "Markers", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_MARKERS, Option );
|
||||
static MenuOption_t MEO_NETOPTIONS_MAPEXITS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OnOff, &ud.m_noexits );
|
||||
static MenuOption_t MEO_NETOPTIONS_MAPEXITS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OnOff, &m_noexits );
|
||||
static MenuEntry_t ME_NETOPTIONS_MAPEXITS = MAKE_MENUENTRY( "Map Exits", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_MAPEXITS, Option );
|
||||
static MenuOption_t MEO_NETOPTIONS_FRFIRE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &ud.m_ffire );
|
||||
static MenuOption_t MEO_NETOPTIONS_FRFIRE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &m_ffire );
|
||||
static MenuEntry_t ME_NETOPTIONS_FRFIRE = MAKE_MENUENTRY( "Fr. Fire", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_FRFIRE, Option );
|
||||
static MenuEntry_t ME_NETOPTIONS_ACCEPT = MAKE_MENUENTRY( "Accept", &MF_Redfont, &MEF_NetSetup_Confirm, &MEO_NETWORK_HOSTGAME, Link );
|
||||
|
||||
|
@ -1341,10 +1260,8 @@ static MenuMenu_t M_TOUCHSENS = MAKE_MENUMENU( "Sensitivity", &MMF_BigOptions, M
|
|||
static MenuPanel_t M_TOUCHBUTTONS = { "Button Setup", MENU_TOUCHSETUP, MA_Return, MENU_TOUCHSETUP, MA_Advance, };
|
||||
#endif
|
||||
static MenuMenu_t M_JOYSTICKSETUP = MAKE_MENUMENU( "Gamepad Setup", &MMF_BigOptions, MEL_JOYSTICKSETUP );
|
||||
static MenuMenu_t M_JOYSTICKBTNS = MAKE_MENUMENU( "Gamepad Buttons", &MMF_MouseJoySetupBtns, MEL_JOYSTICKBTNS );
|
||||
static MenuMenu_t M_JOYSTICKAXES = MAKE_MENUMENU( "Gamepad Axes", &MMF_BigSliders, MEL_JOYSTICKAXES );
|
||||
static MenuMenu_t M_KEYBOARDKEYS = MAKE_MENUMENU( "Key Configuration", &MMF_KeyboardSetupFuncs, MEL_KEYBOARDSETUPFUNCS );
|
||||
static MenuMenu_t M_MOUSEBTNS = MAKE_MENUMENU( "Mouse Buttons", &MMF_MouseJoySetupBtns, MEL_MOUSESETUPBTNS );
|
||||
static MenuMenu_t M_MOUSEADVANCED = MAKE_MENUMENU( "Advanced Mouse", &MMF_BigSliders, MEL_MOUSEADVANCED );
|
||||
static MenuMenu_t M_JOYSTICKAXIS = MAKE_MENUMENU( NULL, &MMF_BigSliders, MEL_JOYSTICKAXIS );
|
||||
#ifdef USE_OPENGL
|
||||
|
@ -1432,17 +1349,10 @@ static Menu_t Menus[] = {
|
|||
{ &M_KEYBOARDSETUP, MENU_KEYBOARDSETUP, MENU_CONTROLS, MA_Return, Menu },
|
||||
{ &M_MOUSESETUP, MENU_MOUSESETUP, MENU_CONTROLS, MA_Return, Menu },
|
||||
{ &M_JOYSTICKSETUP, MENU_JOYSTICKSETUP, MENU_CONTROLS, MA_Return, Menu },
|
||||
{ &M_JOYSTICKBTNS, MENU_JOYSTICKBTNS, MENU_JOYSTICKSETUP, MA_Return, Menu },
|
||||
{ &M_JOYSTICKAXES, MENU_JOYSTICKAXES, MENU_JOYSTICKSETUP, MA_Return, Menu },
|
||||
{ &M_KEYBOARDKEYS, MENU_KEYBOARDKEYS, MENU_KEYBOARDSETUP, MA_Return, Menu },
|
||||
{ &M_MOUSEBTNS, MENU_MOUSEBTNS, MENU_MOUSESETUP, MA_Return, Menu },
|
||||
{ &M_MOUSEADVANCED, MENU_MOUSEADVANCED, MENU_MOUSESETUP, MA_Return, Menu },
|
||||
{ &M_JOYSTICKAXIS, MENU_JOYSTICKAXIS, MENU_JOYSTICKAXES, MA_Return, Menu },
|
||||
#ifdef EDUKE32_ANDROID_MENU
|
||||
{ &M_TOUCHSETUP, MENU_TOUCHSETUP, MENU_OPTIONS, MA_Return, Menu },
|
||||
{ &M_TOUCHSENS, MENU_TOUCHSENS, MENU_TOUCHSETUP, MA_Return, Menu },
|
||||
{ &M_TOUCHBUTTONS, MENU_TOUCHBUTTONS, MENU_TOUCHSETUP, MA_Return, Panel },
|
||||
#endif
|
||||
{ &M_CONTROLS, MENU_CONTROLS, MENU_OPTIONS, MA_Return, Menu },
|
||||
#ifdef USE_OPENGL
|
||||
{ &M_RENDERERSETUP_POLYMOST, MENU_POLYMOST, MENU_DISPLAYSETUP, MA_Return, Menu },
|
||||
|
@ -1829,16 +1739,6 @@ void Menu_Init(void)
|
|||
MEO_KEYBOARDSETUPFUNCS[i] = MEO_KEYBOARDSETUPFUNCS_TEMPLATE;
|
||||
}
|
||||
M_KEYBOARDKEYS.numEntries = NUMGAMEFUNCTIONS;
|
||||
for (i = 0; i < MENUMOUSEFUNCTIONS; ++i)
|
||||
{
|
||||
MEL_MOUSESETUPBTNS[i] = &ME_MOUSESETUPBTNS[i];
|
||||
ME_MOUSESETUPBTNS[i] = ME_MOUSEJOYSETUPBTNS_TEMPLATE;
|
||||
ME_MOUSESETUPBTNS[i].name = MenuMouseNames[i];
|
||||
ME_MOUSESETUPBTNS[i].entry = &MEO_MOUSESETUPBTNS[i];
|
||||
MEO_MOUSESETUPBTNS[i] = MEO_MOUSEJOYSETUPBTNS_TEMPLATE;
|
||||
static int32_t sink;
|
||||
MEO_MOUSESETUPBTNS[i].data = &sink;
|
||||
}
|
||||
for (i = 0; i < 2*joystick.numButtons + 8*joystick.numHats; ++i)
|
||||
{
|
||||
if (i < 2*joystick.numButtons)
|
||||
|
@ -1852,15 +1752,7 @@ void Menu_Init(void)
|
|||
{
|
||||
Bsnprintf(MenuJoystickNames[i], MAXJOYBUTTONSTRINGLENGTH, (i & 1) ? "Double Hat %d %s" : "Hat %d %s", ((i - 2*joystick.numButtons)>>3), MenuJoystickHatDirections[((i - 2*joystick.numButtons)>>1) % 4]);
|
||||
}
|
||||
|
||||
MEL_JOYSTICKBTNS[i] = &ME_JOYSTICKBTNS[i];
|
||||
ME_JOYSTICKBTNS[i] = ME_MOUSEJOYSETUPBTNS_TEMPLATE;
|
||||
ME_JOYSTICKBTNS[i].name = MenuJoystickNames[i];
|
||||
ME_JOYSTICKBTNS[i].entry = &MEO_JOYSTICKBTNS[i];
|
||||
MEO_JOYSTICKBTNS[i] = MEO_MOUSEJOYSETUPBTNS_TEMPLATE;
|
||||
MEO_JOYSTICKBTNS[i].data = &JoystickFunctions[i>>1][i&1];
|
||||
}
|
||||
M_JOYSTICKBTNS.numEntries = 2*joystick.numButtons + 8*joystick.numHats;
|
||||
for (i = 0; i < joystick.numAxes; ++i)
|
||||
{
|
||||
ME_JOYSTICKAXES[i] = ME_JOYSTICKAXES_TEMPLATE;
|
||||
|
@ -1967,7 +1859,7 @@ static void Menu_Pre(MenuID_t cm)
|
|||
|
||||
case MENU_GAMESETUP:
|
||||
MEO_GAMESETUP_DEMOREC.options = (ps->gm&MODE_GAME) ? &MEOS_DemoRec : &MEOS_OffOn;
|
||||
MenuEntry_DisableOnCondition(&ME_GAMESETUP_DEMOREC, (ps->gm&MODE_GAME) && ud.m_recstat != 1);
|
||||
MenuEntry_DisableOnCondition(&ME_GAMESETUP_DEMOREC, (ps->gm&MODE_GAME) && m_recstat != 1);
|
||||
break;
|
||||
|
||||
case MENU_DISPLAYSETUP:
|
||||
|
@ -1975,10 +1867,6 @@ static void Menu_Pre(MenuID_t cm)
|
|||
#ifdef USE_OPENGL
|
||||
if (videoGetRenderMode() == REND_CLASSIC)
|
||||
MenuMenu_ChangeEntryList(M_DISPLAYSETUP, MEL_DISPLAYSETUP);
|
||||
#ifdef POLYMER
|
||||
else if (videoGetRenderMode() == REND_POLYMER)
|
||||
MenuMenu_ChangeEntryList(M_DISPLAYSETUP, MEL_DISPLAYSETUP_GL_POLYMER);
|
||||
#endif
|
||||
else
|
||||
MenuMenu_ChangeEntryList(M_DISPLAYSETUP, MEL_DISPLAYSETUP_GL);
|
||||
|
||||
|
@ -2001,37 +1889,13 @@ static void Menu_Pre(MenuID_t cm)
|
|||
}
|
||||
MenuEntry_HideOnCondition(&ME_SCREENSETUP_SCREENSIZE, (MEO_SCREENSETUP_SCREENSIZE.steps < 2));
|
||||
|
||||
vpsize = -1;
|
||||
|
||||
#ifndef EDUKE32_STANDALONE
|
||||
#ifdef TEXFILTER_MENU_OPTIONS
|
||||
if (videoGetRenderMode() != REND_CLASSIC)
|
||||
{
|
||||
//POGOTODO: allow setting anisotropy again while hw_useindexedcolortextures is set when support is added down the line
|
||||
// don't allow setting anisotropy while in POLYMOST and hw_useindexedcolortextures is enabled
|
||||
MenuEntry_DisableOnCondition(&ME_DISPLAYSETUP_ANISOTROPY, videoGetRenderMode() == REND_POLYMOST && hw_useindexedcolortextures);
|
||||
|
||||
for (i = (int32_t) ARRAY_SIZE(MEOSV_DISPLAYSETUP_ANISOTROPY) - 1; i >= 0; --i)
|
||||
{
|
||||
if (MEOSV_DISPLAYSETUP_ANISOTROPY[i] <= GLInterface.glinfo.maxanisotropy)
|
||||
{
|
||||
MEOS_DISPLAYSETUP_ANISOTROPY.numOptions = i + 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
break;
|
||||
|
||||
case MENU_POLYMER:
|
||||
case MENU_POLYMOST:
|
||||
MenuEntry_DisableOnCondition(&ME_RENDERERSETUP_TEXQUALITY, !hw_hightile);
|
||||
MenuEntry_DisableOnCondition(&ME_RENDERERSETUP_PRECACHE, !hw_hightile);
|
||||
# ifdef USE_GLEXT
|
||||
MenuEntry_DisableOnCondition(&ME_RENDERERSETUP_DETAILTEX, !hw_hightile);
|
||||
MenuEntry_DisableOnCondition(&ME_RENDERERSETUP_GLOWTEX, !hw_hightile);
|
||||
# endif
|
||||
#endif
|
||||
break;
|
||||
|
||||
|
@ -2123,7 +1987,7 @@ static void Menu_Pre(MenuID_t cm)
|
|||
MEL_NETOPTIONS[2] = &ME_NETOPTIONS_LEVEL;
|
||||
MEO_NETOPTIONS_LEVEL.options = &MEOS_NETOPTIONS_LEVEL[MEOSV_NetEpisodes[MEO_NETOPTIONS_EPISODE.currentOption]];
|
||||
}
|
||||
if (!(g_gametypeFlags[ud.m_coop] & GAMETYPE_MARKEROPTION))
|
||||
if (!(g_gametypeFlags[m_coop] & GAMETYPE_MARKEROPTION))
|
||||
{
|
||||
ME_NETOPTIONS_MARKERS.type = Dummy;
|
||||
ME_NETOPTIONS_MARKERS.flags |= MEF_Disabled;
|
||||
|
@ -2133,7 +1997,7 @@ static void Menu_Pre(MenuID_t cm)
|
|||
ME_NETOPTIONS_MARKERS.type = Option;
|
||||
ME_NETOPTIONS_MARKERS.flags &= ~MEF_Disabled;
|
||||
}
|
||||
MEL_NETOPTIONS[5] = (g_gametypeFlags[ud.m_coop] & (GAMETYPE_PLAYERSFRIENDLY|GAMETYPE_TDM)) ? &ME_NETOPTIONS_FRFIRE : &ME_NETOPTIONS_MAPEXITS;
|
||||
MEL_NETOPTIONS[5] = (g_gametypeFlags[m_coop] & (GAMETYPE_PLAYERSFRIENDLY|GAMETYPE_TDM)) ? &ME_NETOPTIONS_FRFIRE : &ME_NETOPTIONS_MAPEXITS;
|
||||
break;
|
||||
|
||||
case MENU_OPTIONS:
|
||||
|
@ -2281,7 +2145,7 @@ static void Menu_PreDraw(MenuID_t cm, MenuEntry_t *entry, const vec2_t origin)
|
|||
break;
|
||||
|
||||
case MENU_PLAYER:
|
||||
rotatesprite_fs(origin.x + (260<<16), origin.y + ((24+(tilesiz[APLAYER].y>>1))<<16), 49152L,0,1441-((((4-((int32_t) totalclock>>4)))&3)*5),0,entry == &ME_PLAYER_TEAM ? G_GetTeamPalette(ud.team) : ud.color,10);
|
||||
rotatesprite_fs(origin.x + (260<<16), origin.y + ((24+(tilesiz[APLAYER].y>>1))<<16), 49152L,0,1441-((((4-((int32_t) totalclock>>4)))&3)*5),0,entry == &ME_PLAYER_TEAM ? G_GetTeamPalette(playerteam) : playercolor,10);
|
||||
break;
|
||||
|
||||
case MENU_MACROS:
|
||||
|
@ -2307,27 +2171,27 @@ static void Menu_PreDraw(MenuID_t cm, MenuEntry_t *entry, const vec2_t origin)
|
|||
mminitext(origin.x + (90<<16), origin.y + ((90+8)<<16), "Episode", MF_Minifont.pal_deselected);
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8)<<16), "Level", MF_Minifont.pal_deselected);
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8+8)<<16), ME_NETOPTIONS_MONSTERS.name, MF_Minifont.pal_deselected);
|
||||
if (ud.m_coop == 0)
|
||||
if (m_coop == 0)
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8+8+8)<<16), "Markers", MF_Minifont.pal_deselected);
|
||||
else if (ud.m_coop == 1)
|
||||
else if (m_coop == 1)
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8+8+8)<<16), "Friendly Fire", MF_Minifont.pal_deselected);
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8+8+8+8)<<16), "User Map", MF_Minifont.pal_deselected);
|
||||
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + (90<<16), g_gametypeNames[ud.m_coop], MF_Minifont.pal_deselected_right);
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + (90<<16), g_gametypeNames[m_coop], MF_Minifont.pal_deselected_right);
|
||||
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8)<<16), g_volumeNames[ud.m_volume_number], MF_Minifont.pal_deselected_right);
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8)<<16), g_mapInfo[MAXLEVELS*ud.m_volume_number+ud.m_level_number].name, MF_Minifont.pal_deselected_right);
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8)<<16), g_mapInfo[MAXLEVELS*ud.m_volume_number+m_level_number].name, MF_Minifont.pal_deselected_right);
|
||||
if (ud.m_monsters_off == 0 || ud.m_player_skill > 0)
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8)<<16), g_skillNames[ud.m_player_skill], MF_Minifont.pal_deselected_right);
|
||||
else mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8)<<16), "None", MF_Minifont.pal_deselected_right);
|
||||
if (ud.m_coop == 0)
|
||||
if (m_coop == 0)
|
||||
{
|
||||
if (ud.m_marker) mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "On", MF_Minifont.pal_deselected_right);
|
||||
if (m_marker) mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "On", MF_Minifont.pal_deselected_right);
|
||||
else mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "Off", MF_Minifont.pal_deselected_right);
|
||||
}
|
||||
else if (ud.m_coop == 1)
|
||||
else if (m_coop == 1)
|
||||
{
|
||||
if (ud.m_ffire) mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "On", MF_Minifont.pal_deselected_right);
|
||||
if (m_ffire) mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "On", MF_Minifont.pal_deselected_right);
|
||||
else mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "Off", MF_Minifont.pal_deselected_right);
|
||||
}
|
||||
break;
|
||||
|
@ -3055,7 +2919,7 @@ static void Menu_EntryLinkActivate(MenuEntry_t *entry)
|
|||
if (entry != &ME_EPISODE_USERMAP)
|
||||
{
|
||||
ud.m_volume_number = M_EPISODE.currentEntry;
|
||||
ud.m_level_number = 0;
|
||||
m_level_number = 0;
|
||||
|
||||
if (g_skillCnt == 0)
|
||||
Menu_StartGameWithoutSkill();
|
||||
|
@ -3113,13 +2977,13 @@ static void Menu_EntryLinkActivate(MenuEntry_t *entry)
|
|||
|
||||
case MENU_JOYSTICKAXES:
|
||||
M_JOYSTICKAXIS.title = joyGetName(0, M_JOYSTICKAXES.currentEntry);
|
||||
#if 0
|
||||
MEO_JOYSTICKAXIS_ANALOG.data = &JoystickAnalogueAxes[M_JOYSTICKAXES.currentEntry];
|
||||
MEO_JOYSTICKAXIS_SCALE.variable = &JoystickAnalogueScale[M_JOYSTICKAXES.currentEntry];
|
||||
MEO_JOYSTICKAXIS_INVERT.data = &JoystickAnalogueInvert[M_JOYSTICKAXES.currentEntry];
|
||||
MEO_JOYSTICKAXIS_DEAD.variable = &JoystickAnalogueDead[M_JOYSTICKAXES.currentEntry];
|
||||
MEO_JOYSTICKAXIS_SATU.variable = &JoystickAnalogueSaturate[M_JOYSTICKAXES.currentEntry];
|
||||
MEO_JOYSTICKAXIS_DIGITALNEGATIVE.data = &JoystickDigitalFunctions[M_JOYSTICKAXES.currentEntry][0];
|
||||
MEO_JOYSTICKAXIS_DIGITALPOSITIVE.data = &JoystickDigitalFunctions[M_JOYSTICKAXES.currentEntry][1];
|
||||
#endif
|
||||
break;
|
||||
|
||||
case MENU_CHEATS:
|
||||
|
@ -3349,26 +3213,7 @@ static void Menu_EntryOptionDidModify(MenuEntry_t *entry)
|
|||
entry == &ME_PLAYER_COLOR ||
|
||||
entry == &ME_PLAYER_TEAM)
|
||||
G_UpdatePlayerFromMenu();
|
||||
else if (entry == &ME_DISPLAYSETUP_UPSCALING)
|
||||
{
|
||||
if (in3dmode())
|
||||
{
|
||||
videoSetGameMode(fullscreen, xres, yres, bpp, ud.detail);
|
||||
}
|
||||
}
|
||||
#ifdef USE_OPENGL
|
||||
#ifndef EDUKE32_STANDALONE
|
||||
#ifdef TEXFILTER_MENU_OPTIONS
|
||||
else if (entry == &ME_DISPLAYSETUP_ANISOTROPY || entry == &ME_DISPLAYSETUP_TEXFILTER)
|
||||
gltexapplyprops();
|
||||
#endif
|
||||
#endif
|
||||
else if (entry == &ME_RENDERERSETUP_TEXQUALITY)
|
||||
{
|
||||
r_downsizevar = r_downsize;
|
||||
domodechange = 1;
|
||||
}
|
||||
|
||||
if (domodechange)
|
||||
{
|
||||
videoResetMode();
|
||||
|
@ -3397,16 +3242,12 @@ static int32_t Menu_EntryRangeInt32Modify(MenuEntry_t *entry, int32_t newValue)
|
|||
FX_SetVolume(newValue);
|
||||
else if (entry == &ME_SOUND_VOLUME_MUSIC)
|
||||
S_MusicVolume(newValue);
|
||||
else if (entry == &ME_MOUSEADVANCED_SCALEX)
|
||||
CONTROL_SetAnalogAxisScale(0, newValue, controldevice_mouse);
|
||||
else if (entry == &ME_MOUSEADVANCED_SCALEY)
|
||||
CONTROL_SetAnalogAxisScale(1, newValue, controldevice_mouse);
|
||||
else if (entry == &ME_JOYSTICKAXIS_SCALE)
|
||||
CONTROL_SetAnalogAxisScale(M_JOYSTICKAXES.currentEntry, newValue, controldevice_joystick);
|
||||
else if (entry == &ME_JOYSTICKAXIS_DEAD)
|
||||
joySetDeadZone(M_JOYSTICKAXES.currentEntry, newValue, *MEO_JOYSTICKAXIS_SATU.variable);
|
||||
joySetDeadZone(M_JOYSTICKAXES.currentEntry, newValue, *MEO_JOYSTICKAXIS_SATU.cVar);
|
||||
else if (entry == &ME_JOYSTICKAXIS_SATU)
|
||||
joySetDeadZone(M_JOYSTICKAXES.currentEntry, *MEO_JOYSTICKAXIS_DEAD.variable, newValue);
|
||||
joySetDeadZone(M_JOYSTICKAXES.currentEntry, *MEO_JOYSTICKAXIS_DEAD.cVar, newValue);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -3634,9 +3475,9 @@ static void Menu_Verify(int32_t input)
|
|||
case MENU_COLCORRRESETVERIFY:
|
||||
if (input)
|
||||
{
|
||||
g_videoGamma = DEFAULT_GAMMA;
|
||||
g_videoContrast = DEFAULT_CONTRAST;
|
||||
g_videoBrightness = DEFAULT_BRIGHTNESS;
|
||||
vid_gamma = 1.f;
|
||||
vid_contrast = 1.f;
|
||||
vid_brightness = 0.f;
|
||||
r_ambientlight = 1.f;
|
||||
videoSetPalette(0,g_player[myconnectindex].ps->palette,0);
|
||||
}
|
||||
|
@ -3861,7 +3702,7 @@ static void Menu_FileSelect(int32_t input)
|
|||
if (input)
|
||||
{
|
||||
ud.m_volume_number = 0;
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
|
||||
if (g_skillCnt > 0)
|
||||
Menu_AnimateChange(MENU_SKILL, MA_Advance);
|
||||
|
@ -3943,8 +3784,8 @@ void Menu_AnimateChange(int32_t cm, MenuAnimationType_t animtype)
|
|||
{
|
||||
if (cm == MENU_OPTIONS)
|
||||
{
|
||||
GUICapture |= 2;
|
||||
return;
|
||||
//GUICapture |= 2;
|
||||
//return;
|
||||
}
|
||||
|
||||
if (FURY)
|
||||
|
@ -4841,7 +4682,7 @@ static int32_t M_RunMenu_Menu(Menu_t *cm, MenuMenu_t *menu, MenuEntry_t *current
|
|||
case Option:
|
||||
{
|
||||
auto object = (MenuOption_t*)entry->entry;
|
||||
int32_t currentOption = Menu_FindOptionBinarySearch(object, object->data == NULL ? Menu_EntryOptionSource(entry, object->currentOption) : *object->data, 0, object->options->numOptions);
|
||||
int32_t currentOption = Menu_FindOptionBinarySearch(object, object->cVar == NULL ? Menu_EntryOptionSource(entry, object->currentOption) : object->cVar->ToInt(), 0, object->options->numOptions);
|
||||
|
||||
if (currentOption >= 0)
|
||||
object->currentOption = currentOption;
|
||||
|
@ -4993,7 +4834,7 @@ static int32_t M_RunMenu_Menu(Menu_t *cm, MenuMenu_t *menu, MenuEntry_t *current
|
|||
rotatesprite_ybounds(slidebarx, slidebary, mulscale16(ud.menu_slidebarz, z), 0, SLIDEBAR, s, p, 2|8|16|ROTATESPRITE_FULL16, ydim_upper, ydim_lower);
|
||||
|
||||
const int32_t slideregionwidth = mulscale16((tilesiz[SLIDEBAR].x * ud.menu_slidebarz) - (ud.menu_slidebarmargin<<1) - (tilesiz[SLIDEBAR+1].x * ud.menu_slidecursorz), z);
|
||||
const int32_t slidepointx = slidebarx + mulscale16(ud.menu_slidebarmargin, z) + scale(slideregionwidth, *object->variable - object->min, object->max - object->min);
|
||||
const int32_t slidepointx = slidebarx + mulscale16(ud.menu_slidebarmargin, z) + scale(slideregionwidth, *object->cVar - object->min, object->max - object->min);
|
||||
const int32_t slidepointy = slidebary + mulscale16((((tilesiz[SLIDEBAR].y>>1) * ud.menu_slidebarz) - ((tilesiz[SLIDEBAR+1].y>>1) * ud.menu_slidecursorz)), z);
|
||||
|
||||
rotatesprite_ybounds(slidepointx, slidepointy, mulscale16(ud.menu_slidecursorz, z), 0, SLIDEBAR+1, s, p, 2|8|16|ROTATESPRITE_FULL16, ydim_upper, ydim_lower);
|
||||
|
@ -5009,13 +4850,13 @@ static int32_t M_RunMenu_Menu(Menu_t *cm, MenuMenu_t *menu, MenuEntry_t *current
|
|||
switch (object->flags & DisplayTypeMask)
|
||||
{
|
||||
case DisplayTypeInteger:
|
||||
Bsprintf(tempbuf, "%d", *object->variable);
|
||||
Bsprintf(tempbuf, "%d", **object->cVar);
|
||||
break;
|
||||
case DisplayTypePercent:
|
||||
Bsprintf(tempbuf, "%d%%", roundscale(*object->variable, 100, onehundredpercent));
|
||||
Bsprintf(tempbuf, "%d%%", roundscale(*object->cVar, 100, onehundredpercent));
|
||||
break;
|
||||
case DisplayTypeNormalizedDecimal:
|
||||
Bsprintf(tempbuf, "%.2f", (double) *object->variable / (double) onehundredpercent);
|
||||
Bsprintf(tempbuf, "%.2f", (double) *object->cVar / (double) onehundredpercent);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -5092,7 +4933,7 @@ static int32_t M_RunMenu_Menu(Menu_t *cm, MenuMenu_t *menu, MenuEntry_t *current
|
|||
rotatesprite_ybounds(slidebarx, slidebary, mulscale16(ud.menu_slidebarz, z), 0, SLIDEBAR, s, p, 2|8|16|ROTATESPRITE_FULL16, ydim_upper, ydim_lower);
|
||||
|
||||
const int32_t slideregionwidth = mulscale16((tilesiz[SLIDEBAR].x * ud.menu_slidebarz) - (ud.menu_slidebarmargin<<1) - (tilesiz[SLIDEBAR+1].x * ud.menu_slidecursorz), z);
|
||||
const int32_t slidepointx = slidebarx + mulscale16(ud.menu_slidebarmargin, z) + Blrintf((float) slideregionwidth * (*object->variable - object->min) / (object->max - object->min));
|
||||
const int32_t slidepointx = slidebarx + mulscale16(ud.menu_slidebarmargin, z) + Blrintf((float) slideregionwidth * (*object->cVar - object->min) / (object->max - object->min));
|
||||
const int32_t slidepointy = slidebary + mulscale16(((tilesiz[SLIDEBAR].y>>1) * ud.menu_slidebarz) - ((tilesiz[SLIDEBAR+1].y>>1) * ud.menu_slidecursorz), z);
|
||||
|
||||
rotatesprite_ybounds(slidepointx, slidepointy, mulscale16(ud.menu_slidecursorz, z), 0, SLIDEBAR+1, s, p, 2|8|16|ROTATESPRITE_FULL16, ydim_upper, ydim_lower);
|
||||
|
@ -5108,13 +4949,13 @@ static int32_t M_RunMenu_Menu(Menu_t *cm, MenuMenu_t *menu, MenuEntry_t *current
|
|||
switch (object->flags & DisplayTypeMask)
|
||||
{
|
||||
case DisplayTypeInteger:
|
||||
Bsprintf(tempbuf, "%.2f", *object->variable);
|
||||
Bsprintf(tempbuf, "%.2f", **object->cVar);
|
||||
break;
|
||||
case DisplayTypePercent:
|
||||
Bsprintf(tempbuf, "%ld%%", lrintf(*object->variable * 100.f / onehundredpercent));
|
||||
Bsprintf(tempbuf, "%ld%%", lrintf(*object->cVar * 100.f / onehundredpercent));
|
||||
break;
|
||||
case DisplayTypeNormalizedDecimal:
|
||||
Bsprintf(tempbuf, "%.2f", *object->variable / onehundredpercent);
|
||||
Bsprintf(tempbuf, "%.2f", *object->cVar / onehundredpercent);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -5937,9 +5778,12 @@ static int32_t Menu_RunInput_EntryOption_Modify(MenuEntry_t *entry, MenuOption_t
|
|||
{
|
||||
object->currentOption = newValueIndex;
|
||||
|
||||
if ((int32_t*)object->data != NULL) // NULL implies the functions will handle it
|
||||
*((int32_t*)object->data) = newValue;
|
||||
|
||||
if (object->cVar != NULL) // NULL implies the functions will handle it
|
||||
{
|
||||
UCVarValue v;
|
||||
v.Int = newValue;
|
||||
object->cVar->ForceSet(v, CVAR_Int, false);
|
||||
}
|
||||
Menu_EntryOptionDidModify(entry);
|
||||
|
||||
return 0;
|
||||
|
@ -6016,7 +5860,7 @@ static void Menu_RunInput_EntryCustom2Col_Activate(MenuEntry_t *entry)
|
|||
static void Menu_RunInput_EntryRangeInt32_MovementVerify(MenuEntry_t *entry, MenuRangeInt32_t *object, int32_t newValue)
|
||||
{
|
||||
if (!Menu_EntryRangeInt32Modify(entry, newValue))
|
||||
*object->variable = newValue;
|
||||
*object->cVar = newValue;
|
||||
}
|
||||
|
||||
static void Menu_RunInput_EntryRangeInt32_MovementArbitrary(MenuEntry_t *entry, MenuRangeInt32_t *object, int32_t newValue)
|
||||
|
@ -6034,7 +5878,7 @@ static void Menu_RunInput_EntryRangeInt32_MovementArbitrary(MenuEntry_t *entry,
|
|||
|
||||
static void Menu_RunInput_EntryRangeInt32_Movement(MenuEntry_t *entry, MenuRangeInt32_t *object, MenuMovement_t direction)
|
||||
{
|
||||
int32_t const oldValue = *object->variable;
|
||||
int32_t const oldValue = *object->cVar;
|
||||
int32_t const range = object->max - object->min;
|
||||
int32_t const maxInterval = object->steps - 1;
|
||||
int32_t const oldValueIndex = roundscale(oldValue - object->min, maxInterval, range);
|
||||
|
@ -6075,7 +5919,7 @@ static void Menu_RunInput_EntryRangeFloat_MovementVerify(MenuEntry_t *entry, Men
|
|||
{
|
||||
if (!Menu_EntryRangeFloatModify(entry, newValue))
|
||||
{
|
||||
*object->variable = newValue;
|
||||
*object->cVar = newValue;
|
||||
Menu_EntryRangeFloatDidModify(entry);
|
||||
}
|
||||
}
|
||||
|
@ -6095,7 +5939,7 @@ static void Menu_RunInput_EntryRangeFloat_MovementArbitrary(MenuEntry_t *entry,
|
|||
|
||||
static void Menu_RunInput_EntryRangeFloat_Movement(MenuEntry_t *entry, MenuRangeFloat_t *object, MenuMovement_t direction)
|
||||
{
|
||||
float const oldValue = *object->variable;
|
||||
float const oldValue = *object->cVar;
|
||||
float const range = object->max - object->min;
|
||||
float const maxInterval = (float)(object->steps - 1);
|
||||
float const oldValueIndexUnrounded = (oldValue - object->min) * maxInterval / range;
|
||||
|
@ -6910,17 +6754,6 @@ static void Menu_RunInput(Menu_t *cm)
|
|||
}
|
||||
}
|
||||
|
||||
END_DUKE_NS
|
||||
|
||||
namespace ImGui
|
||||
{
|
||||
void ShowAboutWindow(bool*);
|
||||
void ShowDemoWindow(bool*);
|
||||
void ShowUserGuide();
|
||||
}
|
||||
|
||||
BEGIN_DUKE_NS
|
||||
|
||||
void M_DisplayMenus(void)
|
||||
{
|
||||
vec2_t origin = { 0, 0 }, previousOrigin = { 0, 0 };
|
||||
|
@ -7070,8 +6903,13 @@ void M_DisplayMenus(void)
|
|||
{
|
||||
ImGui_Begin_Frame();
|
||||
bool b = true;
|
||||
videoFadeToBlack(1);
|
||||
#if 0
|
||||
ImGui::ShowDemoWindow(&b);
|
||||
if (!b)
|
||||
#else
|
||||
if (!ShowOptionMenu())
|
||||
#endif
|
||||
{
|
||||
GUICapture &= ~2;
|
||||
GUICapture |= 4;
|
||||
|
|
|
@ -207,7 +207,7 @@ typedef struct MenuOption_t
|
|||
MenuOptionSet_t *options; // so that common sets such as Yes/No, On/Off can be reused
|
||||
|
||||
// effect
|
||||
int32_t *data;
|
||||
FBaseCVar *cVar;
|
||||
|
||||
// state
|
||||
int32_t currentOption;
|
||||
|
@ -241,7 +241,7 @@ enum MenuRangeFlags_t
|
|||
typedef struct MenuRangeInt32_t
|
||||
{
|
||||
// effect
|
||||
int32_t *variable;
|
||||
FIntCVar *cVar;
|
||||
|
||||
// appearance
|
||||
MenuFont_t *font;
|
||||
|
@ -257,7 +257,7 @@ typedef struct MenuRangeInt32_t
|
|||
typedef struct MenuRangeFloat_t
|
||||
{
|
||||
// effect
|
||||
float *variable;
|
||||
FFloatCVar *cVar;
|
||||
|
||||
// appearance
|
||||
MenuFont_t *font;
|
||||
|
|
|
@ -1993,22 +1993,22 @@ static void Net_ReceiveUserMapName(uint8_t *pbuf, int32_t packbufleng)
|
|||
}
|
||||
}
|
||||
|
||||
if (ud.m_level_number == 7 && ud.m_volume_number == 0 && boardfilename[0] == 0)
|
||||
ud.m_level_number = 0;
|
||||
if (m_level_number == 7 && ud.m_volume_number == 0 && boardfilename[0] == 0)
|
||||
m_level_number = 0;
|
||||
}
|
||||
|
||||
static void Net_ExtractNewGame(newgame_t *newgame, int32_t menuonly)
|
||||
{
|
||||
ud.m_level_number = newgame->level_number;
|
||||
m_level_number = newgame->level_number;
|
||||
ud.m_volume_number = newgame->volume_number;
|
||||
ud.m_player_skill = newgame->player_skill;
|
||||
ud.m_monsters_off = newgame->monsters_off;
|
||||
ud.m_respawn_monsters = newgame->respawn_monsters;
|
||||
ud.m_respawn_items = newgame->respawn_items;
|
||||
ud.m_respawn_inventory = newgame->respawn_inventory;
|
||||
ud.m_ffire = newgame->ffire;
|
||||
ud.m_noexits = newgame->noexits;
|
||||
ud.m_coop = newgame->coop;
|
||||
m_ffire = newgame->ffire;
|
||||
m_noexits = newgame->noexits;
|
||||
m_coop = newgame->coop;
|
||||
|
||||
if (!menuonly)
|
||||
{
|
||||
|
@ -4536,16 +4536,16 @@ void Net_FillNewGame(newgame_t *newgame, int32_t frommenu)
|
|||
{
|
||||
if (frommenu)
|
||||
{
|
||||
newgame->level_number = ud.m_level_number;
|
||||
newgame->level_number = m_level_number;
|
||||
newgame->volume_number = ud.m_volume_number;
|
||||
newgame->player_skill = ud.m_player_skill;
|
||||
newgame->monsters_off = ud.m_monsters_off;
|
||||
newgame->respawn_monsters = ud.m_respawn_monsters;
|
||||
newgame->respawn_items = ud.m_respawn_items;
|
||||
newgame->respawn_inventory = ud.m_respawn_inventory;
|
||||
newgame->ffire = ud.m_ffire;
|
||||
newgame->noexits = ud.m_noexits;
|
||||
newgame->coop = ud.m_coop;
|
||||
newgame->ffire = m_ffire;
|
||||
newgame->noexits = m_noexits;
|
||||
newgame->coop = m_coop;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -4802,9 +4802,9 @@ void Net_SendClientInfo(void)
|
|||
tempnetbuf[l++] = g_player[myconnectindex].ps->aim_mode = in_aimmode;
|
||||
tempnetbuf[l++] = g_player[myconnectindex].ps->auto_aim = cl_autoaim;
|
||||
tempnetbuf[l++] = g_player[myconnectindex].ps->weaponswitch = cl_weaponswitch;
|
||||
tempnetbuf[l++] = g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor = ud.color;
|
||||
tempnetbuf[l++] = g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor = playercolor;
|
||||
|
||||
tempnetbuf[l++] = g_player[myconnectindex].pteam = ud.team;
|
||||
tempnetbuf[l++] = g_player[myconnectindex].pteam = playerteam;
|
||||
|
||||
for (i = 0; i < 10; i++)
|
||||
{
|
||||
|
@ -5176,7 +5176,7 @@ void Net_StartNewGame()
|
|||
|
||||
Net_ExtractNewGame(&pendingnewgame, 0);
|
||||
G_NewGame(ud.volume_number, ud.level_number, ud.player_skill);
|
||||
ud.coop = ud.m_coop;
|
||||
ud.coop = m_coop;
|
||||
|
||||
if (G_EnterLevel(MODE_GAME))
|
||||
{
|
||||
|
|
|
@ -85,7 +85,7 @@ static int osdcmd_changelevel(osdcmdptr_t parm)
|
|||
else if (voting == -1)
|
||||
{
|
||||
ud.m_volume_number = volume;
|
||||
ud.m_level_number = level;
|
||||
m_level_number = level;
|
||||
|
||||
if (g_player[myconnectindex].ps->i)
|
||||
{
|
||||
|
@ -104,12 +104,12 @@ static int osdcmd_changelevel(osdcmdptr_t parm)
|
|||
tempbuf[0] = PACKET_MAP_VOTE_INITIATE;
|
||||
tempbuf[1] = myconnectindex;
|
||||
tempbuf[2] = ud.m_volume_number;
|
||||
tempbuf[3] = ud.m_level_number;
|
||||
tempbuf[3] = m_level_number;
|
||||
|
||||
enet_peer_send(g_netClientPeer, CHAN_GAMESTATE, enet_packet_create(tempbuf, 4, ENET_PACKET_FLAG_RELIABLE));
|
||||
}
|
||||
if ((g_gametypeFlags[ud.m_coop] & GAMETYPE_PLAYERSFRIENDLY) && !(g_gametypeFlags[ud.m_coop] & GAMETYPE_TDM))
|
||||
ud.m_noexits = 0;
|
||||
if ((g_gametypeFlags[m_coop] & GAMETYPE_PLAYERSFRIENDLY) && !(g_gametypeFlags[m_coop] & GAMETYPE_TDM))
|
||||
m_noexits = 0;
|
||||
|
||||
M_OpenMenu(myconnectindex);
|
||||
Menu_Change(MENU_NETWAITVOTES);
|
||||
|
@ -130,7 +130,7 @@ static int osdcmd_changelevel(osdcmdptr_t parm)
|
|||
osdcmd_cheatsinfo_stat.cheatnum = -1;
|
||||
|
||||
ud.m_volume_number = volume;
|
||||
ud.m_level_number = level;
|
||||
m_level_number = level;
|
||||
|
||||
ud.m_monsters_off = 0;
|
||||
ud.monsters_off = 0;
|
||||
|
@ -177,15 +177,15 @@ static int osdcmd_map(osdcmdptr_t parm)
|
|||
{
|
||||
Net_SendUserMapName();
|
||||
ud.m_volume_number = 0;
|
||||
ud.m_level_number = 7;
|
||||
Net_NewGame(ud.m_volume_number, ud.m_level_number);
|
||||
m_level_number = 7;
|
||||
Net_NewGame(ud.m_volume_number, m_level_number);
|
||||
}
|
||||
else if (voting == -1)
|
||||
{
|
||||
Net_SendUserMapName();
|
||||
|
||||
ud.m_volume_number = 0;
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
|
||||
if (g_player[myconnectindex].ps->i)
|
||||
{
|
||||
|
@ -203,12 +203,12 @@ static int osdcmd_map(osdcmdptr_t parm)
|
|||
tempbuf[0] = PACKET_MAP_VOTE_INITIATE;
|
||||
tempbuf[1] = myconnectindex;
|
||||
tempbuf[2] = ud.m_volume_number;
|
||||
tempbuf[3] = ud.m_level_number;
|
||||
tempbuf[3] = m_level_number;
|
||||
|
||||
enet_peer_send(g_netClientPeer, CHAN_GAMESTATE, enet_packet_create(tempbuf, 4, ENET_PACKET_FLAG_RELIABLE));
|
||||
}
|
||||
if ((g_gametypeFlags[ud.m_coop] & GAMETYPE_PLAYERSFRIENDLY) && !(g_gametypeFlags[ud.m_coop] & GAMETYPE_TDM))
|
||||
ud.m_noexits = 0;
|
||||
if ((g_gametypeFlags[m_coop] & GAMETYPE_PLAYERSFRIENDLY) && !(g_gametypeFlags[m_coop] & GAMETYPE_TDM))
|
||||
m_noexits = 0;
|
||||
|
||||
M_OpenMenu(myconnectindex);
|
||||
Menu_Change(MENU_NETWAITVOTES);
|
||||
|
@ -219,7 +219,7 @@ static int osdcmd_map(osdcmdptr_t parm)
|
|||
|
||||
osdcmd_cheatsinfo_stat.cheatnum = -1;
|
||||
ud.m_volume_number = 0;
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
|
||||
ud.m_monsters_off = ud.monsters_off = 0;
|
||||
|
||||
|
@ -230,7 +230,7 @@ static int osdcmd_map(osdcmdptr_t parm)
|
|||
|
||||
if (g_player[myconnectindex].ps->gm & MODE_GAME)
|
||||
{
|
||||
G_NewGame(ud.m_volume_number, ud.m_level_number, ud.m_player_skill);
|
||||
G_NewGame(ud.m_volume_number, m_level_number, ud.m_player_skill);
|
||||
g_player[myconnectindex].ps->gm = MODE_RESTART;
|
||||
}
|
||||
else G_NewGame_EnterLevel();
|
||||
|
|
|
@ -4374,13 +4374,13 @@ void P_EndLevel(void)
|
|||
if (ud.from_bonus)
|
||||
{
|
||||
ud.level_number = ud.from_bonus;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
ud.from_bonus = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
ud.level_number = (++ud.level_number < MAXLEVELS) ? ud.level_number : 0;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4413,7 +4413,7 @@ static int P_DoFist(DukePlayer_t *pPlayer)
|
|||
if ((unsigned)ud.secretlevel <= MAXLEVELS)
|
||||
ud.level_number = ud.secretlevel - 1;
|
||||
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
}
|
||||
else
|
||||
P_EndLevel();
|
||||
|
|
|
@ -1324,7 +1324,7 @@ void G_NewGame(int volumeNum, int levelNum, int skillNum)
|
|||
|
||||
ready2send = 0;
|
||||
|
||||
if (ud.m_recstat != 2 && ud.last_level != -1 && !VM_OnEventWithReturn(EVENT_EXITGAMESCREEN, g_player[myconnectindex].ps->i, myconnectindex, 0)
|
||||
if (m_recstat != 2 && ud.last_level != -1 && !VM_OnEventWithReturn(EVENT_EXITGAMESCREEN, g_player[myconnectindex].ps->i, myconnectindex, 0)
|
||||
&& (g_netServer || ud.multimode > 1) && (ud.coop & GAMETYPE_SCORESHEET))
|
||||
G_BonusScreen(1);
|
||||
|
||||
|
@ -1368,7 +1368,7 @@ void G_NewGame(int volumeNum, int levelNum, int skillNum)
|
|||
for (int i=0; i < (MAXVOLUMES*MAXLEVELS); i++)
|
||||
G_FreeMapState(i);
|
||||
|
||||
if (ud.m_coop != 1)
|
||||
if (m_coop != 1)
|
||||
{
|
||||
for (int weaponNum = 0; weaponNum < MAX_WEAPONS; weaponNum++)
|
||||
{
|
||||
|
@ -1775,13 +1775,13 @@ int G_EnterLevel(int gameMode)
|
|||
ud.respawn_items = ud.m_respawn_items;
|
||||
ud.respawn_inventory = ud.m_respawn_inventory;
|
||||
ud.monsters_off = ud.m_monsters_off;
|
||||
ud.coop = ud.m_coop;
|
||||
ud.marker = ud.m_marker;
|
||||
ud.ffire = ud.m_ffire;
|
||||
ud.noexits = ud.m_noexits;
|
||||
ud.coop = m_coop;
|
||||
ud.marker = m_marker;
|
||||
ud.ffire = m_ffire;
|
||||
ud.noexits = m_noexits;
|
||||
|
||||
if ((gameMode & MODE_DEMO) != MODE_DEMO)
|
||||
ud.recstat = ud.m_recstat;
|
||||
ud.recstat = m_recstat;
|
||||
if ((gameMode & MODE_DEMO) == 0 && ud.recstat == 2)
|
||||
ud.recstat = 0;
|
||||
|
||||
|
@ -1807,7 +1807,7 @@ int G_EnterLevel(int gameMode)
|
|||
levelNum &= MAXLEVELS-1;
|
||||
volumeNum = (volumeNum - levelNum) / MAXLEVELS;
|
||||
|
||||
ud.level_number = ud.m_level_number = levelNum;
|
||||
ud.level_number = m_level_number = levelNum;
|
||||
ud.volume_number = ud.m_volume_number = volumeNum;
|
||||
|
||||
boardfilename[0] = 0;
|
||||
|
|
|
@ -437,7 +437,7 @@ int32_t G_LoadPlayer(savebrief_t & sv)
|
|||
S_ClearSoundLocks();
|
||||
|
||||
ud.m_volume_number = volume;
|
||||
ud.m_level_number = level;
|
||||
m_level_number = level;
|
||||
ud.m_player_skill = skill;
|
||||
|
||||
boardfilename[0] = '\0';
|
||||
|
@ -501,7 +501,7 @@ int32_t G_LoadPlayer(savebrief_t & sv)
|
|||
for (int i=0; i < (MAXVOLUMES*MAXLEVELS); i++)
|
||||
G_FreeMapState(i);
|
||||
|
||||
if (ud.m_coop != 1)
|
||||
if (m_coop != 1)
|
||||
p0.last_weapon = -1;
|
||||
|
||||
display_mirror = 0;
|
||||
|
@ -634,7 +634,7 @@ int32_t G_LoadPlayer(savebrief_t & sv)
|
|||
|
||||
// non-"m_" fields will be loaded from svgm_udnetw
|
||||
ud.m_volume_number = h.volnum;
|
||||
ud.m_level_number = h.levnum;
|
||||
m_level_number = h.levnum;
|
||||
ud.m_player_skill = h.skill;
|
||||
|
||||
// NOTE: Bmemcpy needed for SAVEGAME_MUSIC.
|
||||
|
@ -1945,17 +1945,17 @@ static void sv_postudload()
|
|||
{
|
||||
// Bmemcpy(&boardfilename[0], ¤tboardfilename[0], BMAX_PATH); // DON'T do this in demos!
|
||||
#if 1
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
ud.m_volume_number = ud.volume_number;
|
||||
ud.m_player_skill = ud.player_skill;
|
||||
ud.m_respawn_monsters = ud.respawn_monsters;
|
||||
ud.m_respawn_items = ud.respawn_items;
|
||||
ud.m_respawn_inventory = ud.respawn_inventory;
|
||||
ud.m_monsters_off = ud.monsters_off;
|
||||
ud.m_coop = ud.coop;
|
||||
ud.m_marker = ud.marker;
|
||||
ud.m_ffire = ud.ffire;
|
||||
ud.m_noexits = ud.noexits;
|
||||
m_coop = ud.coop;
|
||||
m_marker = ud.marker;
|
||||
m_ffire = ud.ffire;
|
||||
m_noexits = ud.noexits;
|
||||
#endif
|
||||
}
|
||||
//static int32_t lockclock_dummy;
|
||||
|
|
|
@ -1133,7 +1133,7 @@ void P_DoQuote(int32_t q, DukePlayer_t *p)
|
|||
{
|
||||
int32_t cq = 0;
|
||||
|
||||
if (ud.fta_on == 0 || q < 0 || !(p->gm & MODE_GAME))
|
||||
if (hud_messages == 0 || q < 0 || !(p->gm & MODE_GAME))
|
||||
return;
|
||||
|
||||
if (q & MAXQUOTES)
|
||||
|
|
|
@ -162,7 +162,7 @@ int CONTROL_FlagActive( int which );
|
|||
void CONTROL_ClearAssignments( void );
|
||||
// void CONTROL_GetFunctionInput( void );
|
||||
void CONTROL_GetInput( ControlInfo *info );
|
||||
extern float CONTROL_MouseSensitivity;
|
||||
|
||||
bool CONTROL_Startup(controltype which, int32_t ( *TimeFunction )( void ), int32_t ticspersecond);
|
||||
void CONTROL_Shutdown( void );
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include "keyboard.h"
|
||||
#include "mouse.h"
|
||||
#include "osd.h"
|
||||
#include "gamecvars.h"
|
||||
#include "pragmas.h"
|
||||
|
||||
bool CONTROL_Started = false;
|
||||
|
@ -24,15 +25,12 @@ bool CONTROL_JoystickEnabled = false;
|
|||
|
||||
LastSeenInput CONTROL_LastSeenInput;
|
||||
|
||||
float CONTROL_MouseSensitivity = DEFAULTMOUSESENSITIVITY;
|
||||
static int32_t CONTROL_NumMouseButtons = 0;
|
||||
static int32_t CONTROL_NumJoyButtons = 0;
|
||||
static int32_t CONTROL_NumJoyAxes = 0;
|
||||
|
||||
// static controlkeymaptype CONTROL_KeyMapping[CONTROL_NUM_FLAGS];
|
||||
|
||||
static int32_t CONTROL_MouseAxesScale[2];
|
||||
|
||||
static controlaxismaptype CONTROL_JoyAxesMap[MAXJOYAXES];
|
||||
static controlaxistype CONTROL_JoyAxes[MAXJOYAXES];
|
||||
static controlaxistype CONTROL_LastJoyAxes[MAXJOYAXES];
|
||||
|
@ -89,8 +87,8 @@ static void CONTROL_GetMouseDelta(ControlInfo * info)
|
|||
last = input;
|
||||
}
|
||||
|
||||
info->mousex = mulscale16(Blrintf(finput.x * 4.f * CONTROL_MouseSensitivity), CONTROL_MouseAxesScale[0]);
|
||||
info->mousey = mulscale16(Blrintf(finput.y * 4.f * CONTROL_MouseSensitivity), CONTROL_MouseAxesScale[1]);
|
||||
info->mousex = mulscale16(Blrintf(finput.x * 4.f * in_mousesensitivity), in_mousescalex);
|
||||
info->mousey = mulscale16(Blrintf(finput.y * 4.f * in_mousesensitivity), in_mousescaley);
|
||||
}
|
||||
|
||||
static int32_t CONTROL_GetTime(void)
|
||||
|
@ -167,17 +165,6 @@ void CONTROL_SetAnalogAxisScale(int32_t whichaxis, int32_t axisscale, controldev
|
|||
|
||||
switch (device)
|
||||
{
|
||||
case controldevice_mouse:
|
||||
if ((unsigned) whichaxis >= ARRAY_SIZE(CONTROL_MouseAxesScale))
|
||||
{
|
||||
//Error("CONTROL_SetAnalogAxisScale: axis %d out of valid range for %d mouse axes.",
|
||||
// whichaxis, MAXMOUSEAXES);
|
||||
return;
|
||||
}
|
||||
|
||||
set = CONTROL_MouseAxesScale;
|
||||
break;
|
||||
|
||||
case controldevice_joystick:
|
||||
if ((unsigned) whichaxis >= (unsigned) MAXJOYAXES)
|
||||
{
|
||||
|
@ -270,12 +257,6 @@ void CONTROL_ClearAssignments(void)
|
|||
// memset(CONTROL_KeyMapping, KEYUNDEFINED, sizeof(CONTROL_KeyMapping));
|
||||
memset(CONTROL_LastJoyAxes, 0, sizeof(CONTROL_LastJoyAxes));
|
||||
memset(CONTROL_MouseButtonMapping, BUTTONUNDEFINED, sizeof(CONTROL_MouseButtonMapping));
|
||||
|
||||
for (int & i : CONTROL_MouseAxesScale)
|
||||
i = NORMALAXISSCALE;
|
||||
|
||||
for (int & i : CONTROL_JoyAxesScale)
|
||||
i = NORMALAXISSCALE;
|
||||
}
|
||||
|
||||
static int DoGetDeviceButtons(
|
||||
|
|
|
@ -3986,7 +3986,7 @@ ACTOR_STATIC void G_MoveActors(void)
|
|||
ud.level_number++;
|
||||
if (ud.level_number > 6)
|
||||
ud.level_number = 0;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -361,13 +361,13 @@ void G_DoCheats(void)
|
|||
levnume--;
|
||||
|
||||
ud.m_volume_number = volnume;
|
||||
ud.m_level_number = levnume;
|
||||
m_level_number = levnume;
|
||||
}
|
||||
else
|
||||
{
|
||||
// JBF 20030914
|
||||
ud.m_volume_number = osdcmd_cheatsinfo_stat.volume;
|
||||
ud.m_level_number = osdcmd_cheatsinfo_stat.level;
|
||||
m_level_number = osdcmd_cheatsinfo_stat.level;
|
||||
}
|
||||
}
|
||||
else if (cheatNum == CHEAT_SKILL)
|
||||
|
@ -554,7 +554,7 @@ void G_DoCheats(void)
|
|||
{
|
||||
if (RR)
|
||||
g_lastLevel = 0;
|
||||
int32_t const volnume = ud.m_volume_number, levnume = ud.m_level_number;
|
||||
int32_t const volnume = ud.m_volume_number, levnume = m_level_number;
|
||||
|
||||
if ((!VOLUMEONE || volnume == 0) && (unsigned)volnume < (unsigned)g_volumeCnt &&
|
||||
(unsigned)levnume < MAXLEVELS && g_mapInfo[volnume*MAXLEVELS + levnume].filename != NULL)
|
||||
|
@ -581,7 +581,7 @@ void G_DoCheats(void)
|
|||
|
||||
#if 0
|
||||
if (numplayers > 1 && g_netServer)
|
||||
Net_NewGame(ud.m_volume_number, ud.m_level_number);
|
||||
Net_NewGame(ud.m_volume_number, m_level_number);
|
||||
else
|
||||
#endif
|
||||
pPlayer->gm |= MODE_RESTART;
|
||||
|
|
|
@ -68,10 +68,6 @@ void CONFIG_SetDefaults(void)
|
|||
|
||||
ud.camera_time = 0;//4;
|
||||
|
||||
ud.color = 0;
|
||||
ud.detail = 0;
|
||||
ud.m_ffire = 1;
|
||||
ud.m_marker = 1;
|
||||
ud.menu_slidebarz = 65536;
|
||||
ud.menu_slidebarmargin = RR ? 6 * 65536 : 65536;
|
||||
ud.menu_slidecursorz = RR ? 32768 : 65536;
|
||||
|
@ -81,7 +77,7 @@ void CONFIG_SetDefaults(void)
|
|||
ud.statusbarflags = STATUSBAR_NOSHRINK;
|
||||
ud.statusbarmode = 1;
|
||||
ud.statusbarscale = 100;
|
||||
ud.team = 0;
|
||||
playerteam = 0;
|
||||
ud.angleinterpolation = 0;
|
||||
|
||||
ScreenMode = 1;
|
||||
|
|
|
@ -145,7 +145,7 @@ void G_OpenDemoWrite(void)
|
|||
{
|
||||
Bstrcpy(apStrings[QUOTE_RESERVED4], "CANNOT START DEMO RECORDING WHEN DEAD!");
|
||||
P_DoQuote(QUOTE_RESERVED4, g_player[myconnectindex].ps);
|
||||
ud.recstat = ud.m_recstat = 0;
|
||||
ud.recstat = m_recstat = 0;
|
||||
return;
|
||||
}
|
||||
do
|
||||
|
@ -182,7 +182,7 @@ void G_OpenDemoWrite(void)
|
|||
error_wopen_demo:
|
||||
Bstrcpy(apStrings[QUOTE_RESERVED4], "FAILED STARTING DEMO RECORDING. SEE CONSOLE FOR DETAILS.");
|
||||
P_DoQuote(QUOTE_RESERVED4, g_player[myconnectindex].ps);
|
||||
ud.recstat = ud.m_recstat = 0;
|
||||
ud.recstat = m_recstat = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -194,7 +194,7 @@ error_wopen_demo:
|
|||
P_DoQuote(QUOTE_RESERVED4, g_player[myconnectindex].ps);
|
||||
|
||||
ud.reccnt = 0;
|
||||
ud.recstat = ud.m_recstat = 1; //
|
||||
ud.recstat = m_recstat = 1; //
|
||||
|
||||
# if KRANDDEBUG
|
||||
krd_enable(1);
|
||||
|
@ -279,7 +279,7 @@ void G_CloseDemoWrite(void)
|
|||
// lastly, we need to write the number of written recsyncs to the demo file
|
||||
g_demo_filePtr->Write(&g_demo_cnt, sizeof(g_demo_cnt));
|
||||
|
||||
ud.recstat = ud.m_recstat = 0;
|
||||
ud.recstat = m_recstat = 0;
|
||||
delete g_demo_filePtr;
|
||||
g_demo_filePtr = nullptr;
|
||||
|
||||
|
|
|
@ -170,10 +170,10 @@ void G_HandleSpecialKeys(void)
|
|||
|
||||
if (/*g_networkMode != NET_DEDICATED_SERVER && */ALT_IS_PRESSED && inputState.GetKeyStatus(sc_Enter))
|
||||
{
|
||||
if (videoSetGameMode(!ScreenMode,ScreenWidth,ScreenHeight,ScreenBPP,ud.detail))
|
||||
if (videoSetGameMode(!ScreenMode,ScreenWidth,ScreenHeight,ScreenBPP,1))
|
||||
{
|
||||
OSD_Printf(OSD_ERROR "Failed setting fullscreen video mode.\n");
|
||||
if (videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, ud.detail))
|
||||
if (videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, 1))
|
||||
G_GameExit("Failed to recover from failure to set fullscreen video mode.\n");
|
||||
}
|
||||
else ScreenMode = !ScreenMode;
|
||||
|
@ -374,7 +374,7 @@ void G_GameExit(const char *msg)
|
|||
if (g_mostConcurrentPlayers > 1 && g_player[myconnectindex].ps->gm&MODE_GAME && GTFLAGS(GAMETYPE_SCORESHEET) && *msg == ' ')
|
||||
{
|
||||
G_BonusScreen(1);
|
||||
videoSetGameMode(ScreenMode,ScreenWidth,ScreenHeight,ScreenBPP,ud.detail);
|
||||
videoSetGameMode(ScreenMode,ScreenWidth,ScreenHeight,ScreenBPP,1);
|
||||
}
|
||||
|
||||
// shareware and TEN screens
|
||||
|
@ -6014,7 +6014,7 @@ void GameInterface::set_hud_layout(int layout)
|
|||
|
||||
void GameInterface::set_hud_scale(int scale)
|
||||
{
|
||||
G_UpdateScreenArea();
|
||||
G_SetStatusBarScale(scale);
|
||||
}
|
||||
|
||||
void G_HandleLocalKeys(void)
|
||||
|
@ -6408,10 +6408,10 @@ FAKE_F3:
|
|||
{
|
||||
inputState.ClearKeyStatus(sc_F8);
|
||||
|
||||
int const fta = !ud.fta_on;
|
||||
ud.fta_on = 1;
|
||||
int const fta = !hud_messages;
|
||||
hud_messages = 1;
|
||||
P_DoQuote(fta ? QUOTE_MESSAGES_ON : QUOTE_MESSAGES_OFF, g_player[myconnectindex].ps);
|
||||
ud.fta_on = fta;
|
||||
hud_messages = fta;
|
||||
}
|
||||
|
||||
if ((buttonMap.ButtonDown(gamefunc_Quick_Load) || g_doQuickSave == 2) && (!RRRA || ud.player_skill != 4) && (!RR || RRRA || ud.player_skill != 5) && (g_player[myconnectindex].ps->gm&MODE_GAME))
|
||||
|
@ -7119,9 +7119,9 @@ static void G_CompileScripts(void)
|
|||
|
||||
static inline void G_CheckGametype(void)
|
||||
{
|
||||
ud.m_coop = clamp(ud.m_coop, 0, g_gametypeCnt-1);
|
||||
initprintf("%s\n",g_gametypeNames[ud.m_coop]);
|
||||
if (g_gametypeFlags[ud.m_coop] & GAMETYPE_ITEMRESPAWN)
|
||||
m_coop = clamp(*m_coop, 0, g_gametypeCnt-1);
|
||||
initprintf("%s\n",g_gametypeNames[m_coop]);
|
||||
if (g_gametypeFlags[m_coop] & GAMETYPE_ITEMRESPAWN)
|
||||
ud.m_respawn_items = ud.m_respawn_inventory = 1;
|
||||
}
|
||||
|
||||
|
@ -7413,9 +7413,9 @@ void G_UpdatePlayerFromMenu(void)
|
|||
/*int32_t j = g_player[myconnectindex].ps->team;*/
|
||||
|
||||
P_SetupMiscInputSettings();
|
||||
g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor = ud.color;
|
||||
g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor = playercolor;
|
||||
|
||||
g_player[myconnectindex].pteam = ud.team;
|
||||
g_player[myconnectindex].pteam = playerteam;
|
||||
|
||||
if (sprite[g_player[myconnectindex].ps->i].picnum == APLAYER && sprite[g_player[myconnectindex].ps->i].pal != 1)
|
||||
sprite[g_player[myconnectindex].ps->i].pal = g_player[myconnectindex].pcolor;
|
||||
|
@ -7478,7 +7478,7 @@ static int G_EndOfLevel(void)
|
|||
}
|
||||
else
|
||||
{
|
||||
ud.m_level_number = 0;
|
||||
m_level_number = 0;
|
||||
ud.level_number = 0;
|
||||
}
|
||||
}
|
||||
|
@ -7650,7 +7650,7 @@ int GameInterface::app_main()
|
|||
|
||||
if (numplayers == 1 && boardfilename[0] != 0)
|
||||
{
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
ud.m_volume_number = 0;
|
||||
ud.warp_on = 1;
|
||||
}
|
||||
|
@ -7689,7 +7689,7 @@ int GameInterface::app_main()
|
|||
|
||||
//if (g_networkMode != NET_DEDICATED_SERVER)
|
||||
{
|
||||
if (videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, ud.detail) < 0)
|
||||
if (videoSetGameMode(ScreenMode, ScreenWidth, ScreenHeight, ScreenBPP, 1) < 0)
|
||||
{
|
||||
initprintf("Failure setting video mode %dx%dx%d %s! Trying next mode...\n", *ScreenWidth, *ScreenHeight,
|
||||
*ScreenBPP, *ScreenMode ? "fullscreen" : "windowed");
|
||||
|
@ -7708,7 +7708,7 @@ int GameInterface::app_main()
|
|||
int const savedIdx = resIdx;
|
||||
int bpp = ScreenBPP;
|
||||
|
||||
while (videoSetGameMode(0, validmode[resIdx].xdim, validmode[resIdx].ydim, bpp, ud.detail) < 0)
|
||||
while (videoSetGameMode(0, validmode[resIdx].xdim, validmode[resIdx].ydim, bpp, 1) < 0)
|
||||
{
|
||||
initprintf("Failure setting video mode %dx%dx%d windowed! Trying next mode...\n",
|
||||
validmode[resIdx].xdim, validmode[resIdx].ydim, bpp);
|
||||
|
@ -7784,7 +7784,7 @@ MAIN_LOOP_RESTART:
|
|||
{
|
||||
if ((g_netServer || ud.multimode > 1) && boardfilename[0] != 0)
|
||||
{
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
ud.m_volume_number = 0;
|
||||
|
||||
if (ud.m_player_skill == 4)
|
||||
|
@ -7820,13 +7820,13 @@ MAIN_LOOP_RESTART:
|
|||
|
||||
ud.showweapons = ud.config.ShowOpponentWeapons;
|
||||
P_SetupMiscInputSettings();
|
||||
g_player[myconnectindex].pteam = ud.team;
|
||||
g_player[myconnectindex].pteam = playerteam;
|
||||
|
||||
if (g_gametypeFlags[ud.coop] & GAMETYPE_TDM)
|
||||
g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor = G_GetTeamPalette(g_player[myconnectindex].pteam);
|
||||
else
|
||||
{
|
||||
if (ud.color) g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor = ud.color;
|
||||
if (playercolor) g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor = playercolor;
|
||||
else g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor;
|
||||
}
|
||||
|
||||
|
|
|
@ -144,21 +144,21 @@ typedef struct {
|
|||
int32_t reccnt;
|
||||
|
||||
int32_t runkey_mode,statusbarscale,weaponswitch; // JBF 20031125
|
||||
int32_t color,statusbarmode;
|
||||
int32_t m_noexits,noexits,automsg;
|
||||
int32_t team, althud;
|
||||
int32_t statusbarmode;
|
||||
int32_t noexits,automsg;
|
||||
int32_t althud;
|
||||
int32_t statusbarflags, statusbarrange;
|
||||
int32_t menu_slidebarz, menu_slidebarmargin, menu_slidecursorz;
|
||||
int32_t menu_scrollbartilenum, menu_scrollbarz, menu_scrollcursorz;
|
||||
|
||||
int32_t entered_name,screen_tilting,fta_on;
|
||||
int32_t m_coop,coop,screen_size,lockout,crosshair;
|
||||
int32_t entered_name,screen_tilting;
|
||||
int32_t coop,screen_size,lockout,crosshair;
|
||||
int32_t playerai,angleinterpolation;
|
||||
|
||||
int32_t respawn_monsters,respawn_items,respawn_inventory,recstat,monsters_off,brightness;
|
||||
int32_t m_respawn_items,m_respawn_monsters,m_respawn_inventory,m_recstat,m_monsters_off,detail;
|
||||
int32_t m_ffire,ffire,m_player_skill,m_level_number,m_volume_number,multimode;
|
||||
int32_t player_skill,level_number,volume_number,m_marker,marker;
|
||||
int32_t m_respawn_items,m_respawn_monsters,m_respawn_inventory,m_recstat,m_monsters_off;
|
||||
int32_t ffire,m_player_skill,m_level_number,m_volume_number,multimode;
|
||||
int32_t player_skill,level_number,volume_number,marker;
|
||||
int32_t music_episode, music_level;
|
||||
|
||||
int32_t playerbest;
|
||||
|
@ -209,7 +209,7 @@ static inline int G_HaveUserMap(void)
|
|||
|
||||
static inline int Menu_HaveUserMap(void)
|
||||
{
|
||||
return (boardfilename[0] != 0 && ud.m_level_number == 7 && ud.m_volume_number == 0);
|
||||
return (boardfilename[0] != 0 && m_level_number == 7 && ud.m_volume_number == 0);
|
||||
}
|
||||
|
||||
extern const char *defaultrtsfilename[GAMECOUNT];
|
||||
|
@ -437,7 +437,7 @@ enum
|
|||
|
||||
static inline void G_NewGame_EnterLevel(void)
|
||||
{
|
||||
G_NewGame(ud.m_volume_number, ud.m_level_number, ud.m_player_skill);
|
||||
G_NewGame(ud.m_volume_number, m_level_number, ud.m_player_skill);
|
||||
|
||||
if (G_EnterLevel(MODE_GAME))
|
||||
G_BackToMenu();
|
||||
|
|
|
@ -1632,7 +1632,7 @@ GAMEEXEC_STATIC void VM_Execute(native_t loop)
|
|||
g_player[playerNum].ps->gm = MODE_EOL;
|
||||
if (++ud.level_number > 6)
|
||||
ud.level_number = 0;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
}
|
||||
continue;
|
||||
|
||||
|
|
|
@ -375,7 +375,7 @@ static MenuEntry_t ME_GAMESETUP_WEAPSWITCH_PICKUP = MAKE_MENUENTRY( "Equip picku
|
|||
|
||||
static char const *MEOSN_DemoRec[] = { "Off", "Running", };
|
||||
static MenuOptionSet_t MEOS_DemoRec = MAKE_MENUOPTIONSET( MEOSN_DemoRec, NULL, 0x3 );
|
||||
static MenuOption_t MEO_GAMESETUP_DEMOREC = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &ud.m_recstat );
|
||||
static MenuOption_t MEO_GAMESETUP_DEMOREC = MAKE_MENUOPTION( &MF_Redfont, &MEOS_OffOn, &m_recstat.Value );
|
||||
static MenuEntry_t ME_GAMESETUP_DEMOREC = MAKE_MENUENTRY( "Record demo:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_GAMESETUP_DEMOREC, Option );
|
||||
|
||||
static MenuOption_t MEO_ADULTMODE = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &adult_lockout.Value);
|
||||
|
@ -479,15 +479,8 @@ static MenuLink_t MEO_DISPLAYSETUP_COLORCORR = { MENU_COLCORR, MA_Advance, };
|
|||
static MenuEntry_t ME_DISPLAYSETUP_COLORCORR = MAKE_MENUENTRY( "Color Correction", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_COLORCORR, Link );
|
||||
|
||||
|
||||
static char const *MEOSN_DISPLAYSETUP_UPSCALING[] = { "None", "2x", "4x" };
|
||||
static int32_t MEOSV_DISPLAYSETUP_UPSCALING[] = { 1, 2, 4 };
|
||||
static MenuOptionSet_t MEOS_DISPLAYSETUP_UPSCALING = MAKE_MENUOPTIONSET( MEOSN_DISPLAYSETUP_UPSCALING, MEOSV_DISPLAYSETUP_UPSCALING, 0x0 );
|
||||
static MenuOption_t MEO_DISPLAYSETUP_UPSCALING = MAKE_MENUOPTION( &MF_Redfont, &MEOS_DISPLAYSETUP_UPSCALING, &ud.detail );
|
||||
static MenuEntry_t ME_DISPLAYSETUP_UPSCALING = MAKE_MENUENTRY( "Upscaling:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_UPSCALING, Option );
|
||||
|
||||
|
||||
#ifndef EDUKE32_ANDROID_MENU
|
||||
static MenuOption_t MEO_DISPLAYSETUP_ASPECTRATIO = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &r_usenewaspect);
|
||||
static MenuOption_t MEO_DISPLAYSETUP_ASPECTRATIO = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &r_usenewaspect.Value);
|
||||
static MenuEntry_t ME_DISPLAYSETUP_ASPECTRATIO = MAKE_MENUENTRY( "Widescreen:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_DISPLAYSETUP_ASPECTRATIO, Option );
|
||||
#endif
|
||||
|
||||
|
@ -537,7 +530,7 @@ static MenuOption_t MEO_SCREENSETUP_LEVELSTATS = MAKE_MENUOPTION(&MF_Redfont, &M
|
|||
static MenuEntry_t ME_SCREENSETUP_LEVELSTATS = MAKE_MENUENTRY( "Level stats:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SCREENSETUP_LEVELSTATS, Option );
|
||||
|
||||
|
||||
static MenuOption_t MEO_SCREENSETUP_SHOWPICKUPMESSAGES = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &ud.fta_on);
|
||||
static MenuOption_t MEO_SCREENSETUP_SHOWPICKUPMESSAGES = MAKE_MENUOPTION(&MF_Redfont, &MEOS_OffOn, &hud_messages.Value);
|
||||
static MenuEntry_t ME_SCREENSETUP_SHOWPICKUPMESSAGES = MAKE_MENUENTRY( "Game messages:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_SCREENSETUP_SHOWPICKUPMESSAGES, Option );
|
||||
|
||||
|
||||
|
@ -660,7 +653,6 @@ static MenuEntry_t *MEL_DISPLAYSETUP[] = {
|
|||
&ME_DISPLAYSETUP_ASPECTRATIO,
|
||||
&ME_DISPLAYSETUP_FOV,
|
||||
#endif
|
||||
&ME_DISPLAYSETUP_UPSCALING,
|
||||
};
|
||||
|
||||
#ifdef USE_OPENGL
|
||||
|
@ -773,7 +765,7 @@ static MenuEntry_t *MEL_MOUSESETUPBTNS[MENUMOUSEFUNCTIONS];
|
|||
|
||||
static MenuLink_t MEO_MOUSESETUP_BTNS = { MENU_MOUSEBTNS, MA_Advance, };
|
||||
static MenuEntry_t ME_MOUSESETUP_BTNS = MAKE_MENUENTRY( "Button assignment", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_BTNS, Link );
|
||||
static MenuRangeFloat_t MEO_MOUSESETUP_SENSITIVITY = MAKE_MENURANGE( &CONTROL_MouseSensitivity, &MF_Redfont, .5f, 16.f, 0.f, 32, 1 );
|
||||
static MenuRangeFloat_t MEO_MOUSESETUP_SENSITIVITY = MAKE_MENURANGE( &in_mousesensitivity.Value, &MF_Redfont, .5f, 16.f, 0.f, 32, 1 );
|
||||
static MenuEntry_t ME_MOUSESETUP_SENSITIVITY = MAKE_MENUENTRY( "Sensitivity:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_SENSITIVITY, RangeFloat );
|
||||
|
||||
#ifndef EDUKE32_SIMPLE_MENU
|
||||
|
@ -792,9 +784,9 @@ static MenuEntry_t ME_MOUSESETUP_SMOOTH = MAKE_MENUENTRY( "Filter input:", &MF_R
|
|||
static MenuLink_t MEO_MOUSESETUP_ADVANCED = { MENU_MOUSEADVANCED, MA_Advance, };
|
||||
static MenuEntry_t ME_MOUSESETUP_ADVANCED = MAKE_MENUENTRY( "Advanced setup", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSESETUP_ADVANCED, Link );
|
||||
#endif
|
||||
static MenuRangeInt32_t MEO_MOUSEADVANCED_SCALEX = MAKE_MENURANGE(&MouseAnalogueScale[0], &MF_Redfont, -262144, 262144, 65536, 161, 3);
|
||||
static MenuRangeInt32_t MEO_MOUSEADVANCED_SCALEX = MAKE_MENURANGE(&in_mousescalex.Value, &MF_Redfont, -262144, 262144, 65536, 161, 3);
|
||||
static MenuEntry_t ME_MOUSEADVANCED_SCALEX = MAKE_MENUENTRY("X-Scale:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSEADVANCED_SCALEX, RangeInt32);
|
||||
static MenuRangeInt32_t MEO_MOUSEADVANCED_SCALEY = MAKE_MENURANGE(&MouseAnalogueScale[1], &MF_Redfont, -262144, 262144, 65536, 161, 3);
|
||||
static MenuRangeInt32_t MEO_MOUSEADVANCED_SCALEY = MAKE_MENURANGE(&in_mousescaley.Value, &MF_Redfont, -262144, 262144, 65536, 161, 3);
|
||||
static MenuEntry_t ME_MOUSEADVANCED_SCALEY = MAKE_MENUENTRY("Y-Scale:", &MF_Redfont, &MEF_BigOptionsRt, &MEO_MOUSEADVANCED_SCALEY, RangeInt32);
|
||||
|
||||
static MenuEntry_t *MEL_MOUSESETUP[] = {
|
||||
|
@ -938,12 +930,6 @@ static MenuEntry_t *MEL_INTERNAL_JOYSTICKAXIS_DIGITAL[] = {
|
|||
static MenuOption_t MEO_RENDERERSETUP_HIGHTILE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NoYes, &hw_hightile.Value );
|
||||
static MenuEntry_t ME_RENDERERSETUP_HIGHTILE = MAKE_MENUENTRY( "True color textures:", &MF_Bluefont, &MEF_SmallOptions, &MEO_RENDERERSETUP_HIGHTILE, Option );
|
||||
|
||||
static char const *MEOSN_RENDERERSETUP_TEXQUALITY [] = { "Full", "Half", "Barf", };
|
||||
static MenuOptionSet_t MEOS_RENDERERSETUP_TEXQUALITY = MAKE_MENUOPTIONSET(MEOSN_RENDERERSETUP_TEXQUALITY, NULL, 0x2);
|
||||
static MenuOption_t MEO_RENDERERSETUP_TEXQUALITY = MAKE_MENUOPTION(&MF_Bluefont, &MEOS_RENDERERSETUP_TEXQUALITY, &r_downsize);
|
||||
static MenuEntry_t ME_RENDERERSETUP_TEXQUALITY = MAKE_MENUENTRY("GL texture quality:", &MF_Bluefont, &MEF_SmallOptions, &MEO_RENDERERSETUP_TEXQUALITY, Option);
|
||||
|
||||
|
||||
static MenuOption_t MEO_RENDERERSETUP_PRECACHE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &r_precache.Value );
|
||||
static MenuEntry_t ME_RENDERERSETUP_PRECACHE = MAKE_MENUENTRY( "Pre-load map textures:", &MF_Bluefont, &MEF_SmallOptions, &MEO_RENDERERSETUP_PRECACHE, Option );
|
||||
# ifndef EDUKE32_GLES
|
||||
|
@ -964,7 +950,6 @@ static MenuEntry_t ME_RENDERERSETUP_MODELS = MAKE_MENUENTRY( "3D models:", &MF_B
|
|||
#ifdef USE_OPENGL
|
||||
static MenuEntry_t *MEL_RENDERERSETUP_POLYMOST[] = {
|
||||
&ME_RENDERERSETUP_HIGHTILE,
|
||||
&ME_RENDERERSETUP_TEXQUALITY,
|
||||
&ME_RENDERERSETUP_PRECACHE,
|
||||
# ifdef USE_GLEXT
|
||||
&ME_RENDERERSETUP_DETAILTEX,
|
||||
|
@ -977,14 +962,14 @@ static MenuEntry_t *MEL_RENDERERSETUP_POLYMOST[] = {
|
|||
#endif
|
||||
|
||||
#ifdef EDUKE32_ANDROID_MENU
|
||||
static MenuRangeFloat_t MEO_COLCORR_GAMMA = MAKE_MENURANGE( &g_videoGamma, &MF_Bluefont, 1.f, 2.5f, 0.f, 39, 1 );
|
||||
static MenuRangeFloat_t MEO_COLCORR_GAMMA = MAKE_MENURANGE( &vid_gamma, &MF_Bluefont, 1.f, 2.5f, 0.f, 39, 1 );
|
||||
#else
|
||||
static MenuRangeFloat_t MEO_COLCORR_GAMMA = MAKE_MENURANGE( &g_videoGamma, &MF_Bluefont, 0.3f, 4.f, 0.f, 38, 1 );
|
||||
static MenuRangeFloat_t MEO_COLCORR_GAMMA = MAKE_MENURANGE( &vid_gamma.Value, &MF_Bluefont, 0.3f, 4.f, 0.f, 38, 1 );
|
||||
#endif
|
||||
static MenuEntry_t ME_COLCORR_GAMMA = MAKE_MENUENTRY( "Gamma:", &MF_Redfont, &MEF_ColorCorrect, &MEO_COLCORR_GAMMA, RangeFloat );
|
||||
static MenuRangeFloat_t MEO_COLCORR_CONTRAST = MAKE_MENURANGE( &g_videoContrast, &MF_Bluefont, 0.1f, 2.7f, 0.f, 53, 1 );
|
||||
static MenuRangeFloat_t MEO_COLCORR_CONTRAST = MAKE_MENURANGE( &vid_contrast.Value, &MF_Bluefont, 0.1f, 2.7f, 0.f, 53, 1 );
|
||||
static MenuEntry_t ME_COLCORR_CONTRAST = MAKE_MENUENTRY( "Contrast:", &MF_Redfont, &MEF_ColorCorrect, &MEO_COLCORR_CONTRAST, RangeFloat );
|
||||
static MenuRangeFloat_t MEO_COLCORR_BRIGHTNESS = MAKE_MENURANGE( &g_videoBrightness, &MF_Bluefont, -0.8f, 0.8f, 0.f, 33, 1 );
|
||||
static MenuRangeFloat_t MEO_COLCORR_BRIGHTNESS = MAKE_MENURANGE( &vid_brightness.Value, &MF_Bluefont, -0.8f, 0.8f, 0.f, 33, 1 );
|
||||
static MenuEntry_t ME_COLCORR_BRIGHTNESS = MAKE_MENUENTRY( "Brightness:", &MF_Redfont, &MEF_ColorCorrect, &MEO_COLCORR_BRIGHTNESS, RangeFloat );
|
||||
static MenuEntry_t ME_COLCORR_RESET = MAKE_MENUENTRY( "Reset To Defaults", &MF_Redfont, &MEF_ColorCorrect, &MEO_NULL, Link );
|
||||
#ifdef EDUKE32_ANDROID_MENU
|
||||
|
@ -1146,11 +1131,11 @@ static MenuEntry_t *MEL_NETWORK[] = {
|
|||
static char const *MEOSN_PLAYER_COLOR[] = { "Auto", "Blue", "Red", "Green", "Gray", "Dark gray", "Dark green", "Brown", "Dark blue", "Bright red", "Yellow", };
|
||||
static int32_t MEOSV_PLAYER_COLOR[] = { 0, 9, 10, 11, 12, 13, 14, 15, 16, 21, 23, };
|
||||
static MenuOptionSet_t MEOS_PLAYER_COLOR = MAKE_MENUOPTIONSET( MEOSN_PLAYER_COLOR, MEOSV_PLAYER_COLOR, 0x2 );
|
||||
static MenuOption_t MEO_PLAYER_COLOR = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_PLAYER_COLOR, &ud.color );
|
||||
static MenuOption_t MEO_PLAYER_COLOR = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_PLAYER_COLOR, &playercolor.Value );
|
||||
static MenuEntry_t ME_PLAYER_COLOR = MAKE_MENUENTRY( "Color", &MF_Bluefont, &MEF_PlayerNarrow, &MEO_PLAYER_COLOR, Option );
|
||||
static char const *MEOSN_PLAYER_TEAM[] = { "Blue", "Red", "Green", "Gray", };
|
||||
static MenuOptionSet_t MEOS_PLAYER_TEAM = MAKE_MENUOPTIONSET( MEOSN_PLAYER_TEAM, NULL, 0x2 );
|
||||
static MenuOption_t MEO_PLAYER_TEAM = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_PLAYER_TEAM, &ud.team );
|
||||
static MenuOption_t MEO_PLAYER_TEAM = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_PLAYER_TEAM, &playerteam.Value );
|
||||
static MenuEntry_t ME_PLAYER_TEAM = MAKE_MENUENTRY( "Team", &MF_Bluefont, &MEF_PlayerNarrow, &MEO_PLAYER_TEAM, Option );
|
||||
#ifndef EDUKE32_SIMPLE_MENU
|
||||
static MenuLink_t MEO_PLAYER_MACROS = { MENU_MACROS, MA_Advance, };
|
||||
|
@ -1199,7 +1184,7 @@ static MenuEntry_t *MEL_NETHOST[] = {
|
|||
};
|
||||
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_GAMETYPE = MAKE_MENUOPTIONSET( MEOSN_NetGametypes, NULL, 0x0 );
|
||||
static MenuOption_t MEO_NETOPTIONS_GAMETYPE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NETOPTIONS_GAMETYPE, &ud.m_coop );
|
||||
static MenuOption_t MEO_NETOPTIONS_GAMETYPE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NETOPTIONS_GAMETYPE, &m_coop.Value );
|
||||
static MenuEntry_t ME_NETOPTIONS_GAMETYPE = MAKE_MENUENTRY( "Game Type", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_GAMETYPE, Option );
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_EPISODE = MAKE_MENUOPTIONSET( MEOSN_NetEpisodes, MEOSV_NetEpisodes, 0x0 );
|
||||
static int32_t NetEpisode;
|
||||
|
@ -1207,18 +1192,18 @@ static MenuOption_t MEO_NETOPTIONS_EPISODE = MAKE_MENUOPTION( &MF_Bluefont, &MEO
|
|||
static MenuEntry_t ME_NETOPTIONS_EPISODE = MAKE_MENUENTRY( "Episode", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_EPISODE, Option );
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_LEVEL_TEMPLATE = MAKE_MENUOPTIONSETNULL;
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_LEVEL[MAXVOLUMES];
|
||||
static MenuOption_t MEO_NETOPTIONS_LEVEL = MAKE_MENUOPTION( &MF_Bluefont, NULL, &ud.m_level_number );
|
||||
static MenuOption_t MEO_NETOPTIONS_LEVEL = MAKE_MENUOPTION( &MF_Bluefont, NULL, &m_level_number.Value );
|
||||
static MenuEntry_t ME_NETOPTIONS_LEVEL = MAKE_MENUENTRY( "Level", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_LEVEL, Option );
|
||||
static MenuLink_t MEO_NETOPTIONS_USERMAP = { MENU_NETUSERMAP, MA_Advance, };
|
||||
static MenuEntry_t ME_NETOPTIONS_USERMAP = MAKE_MENUENTRY( "User Map", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_USERMAP, Link );
|
||||
static MenuOptionSet_t MEOS_NETOPTIONS_MONSTERS = MAKE_MENUOPTIONSET( MEOSN_NetSkills, NULL, 0x0 );
|
||||
static MenuOption_t MEO_NETOPTIONS_MONSTERS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_NETOPTIONS_MONSTERS, NULL );
|
||||
static MenuEntry_t ME_NETOPTIONS_MONSTERS = MAKE_MENUENTRY( "Monsters", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_MONSTERS, Option );
|
||||
static MenuOption_t MEO_NETOPTIONS_MARKERS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &ud.m_marker );
|
||||
static MenuOption_t MEO_NETOPTIONS_MARKERS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &m_marker.Value);
|
||||
static MenuEntry_t ME_NETOPTIONS_MARKERS = MAKE_MENUENTRY( "Markers", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_MARKERS, Option );
|
||||
static MenuOption_t MEO_NETOPTIONS_MAPEXITS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OnOff, &ud.m_noexits );
|
||||
static MenuOption_t MEO_NETOPTIONS_MAPEXITS = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OnOff, &m_noexits.Value);
|
||||
static MenuEntry_t ME_NETOPTIONS_MAPEXITS = MAKE_MENUENTRY( "Map Exits", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_MAPEXITS, Option );
|
||||
static MenuOption_t MEO_NETOPTIONS_FRFIRE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &ud.m_ffire );
|
||||
static MenuOption_t MEO_NETOPTIONS_FRFIRE = MAKE_MENUOPTION( &MF_Bluefont, &MEOS_OffOn, &m_ffire.Value);
|
||||
static MenuEntry_t ME_NETOPTIONS_FRFIRE = MAKE_MENUENTRY( "Fr. Fire", &MF_Redfont, &MEF_NetSetup, &MEO_NETOPTIONS_FRFIRE, Option );
|
||||
static MenuEntry_t ME_NETOPTIONS_ACCEPT = MAKE_MENUENTRY( "Accept", &MF_Redfont, &MEF_NetSetup_Confirm, &MEO_NETWORK_HOSTGAME, Link );
|
||||
|
||||
|
@ -1917,7 +1902,7 @@ static void Menu_Pre(MenuID_t cm)
|
|||
|
||||
case MENU_GAMESETUP:
|
||||
MEO_GAMESETUP_DEMOREC.options = (ps->gm&MODE_GAME) ? &MEOS_DemoRec : &MEOS_OffOn;
|
||||
MenuEntry_DisableOnCondition(&ME_GAMESETUP_DEMOREC, (ps->gm&MODE_GAME) && ud.m_recstat != 1);
|
||||
MenuEntry_DisableOnCondition(&ME_GAMESETUP_DEMOREC, (ps->gm&MODE_GAME) && m_recstat != 1);
|
||||
break;
|
||||
|
||||
#ifdef USE_OPENGL
|
||||
|
@ -1964,7 +1949,6 @@ static void Menu_Pre(MenuID_t cm)
|
|||
|
||||
case MENU_POLYMER:
|
||||
case MENU_POLYMOST:
|
||||
MenuEntry_DisableOnCondition(&ME_RENDERERSETUP_TEXQUALITY, !hw_hightile);
|
||||
MenuEntry_DisableOnCondition(&ME_RENDERERSETUP_PRECACHE, !hw_hightile);
|
||||
# ifdef USE_GLEXT
|
||||
MenuEntry_DisableOnCondition(&ME_RENDERERSETUP_DETAILTEX, !hw_hightile);
|
||||
|
@ -2021,7 +2005,7 @@ static void Menu_Pre(MenuID_t cm)
|
|||
MEL_NETOPTIONS[2] = &ME_NETOPTIONS_LEVEL;
|
||||
MEO_NETOPTIONS_LEVEL.options = &MEOS_NETOPTIONS_LEVEL[MEOSV_NetEpisodes[MEO_NETOPTIONS_EPISODE.currentOption]];
|
||||
}
|
||||
if (!(g_gametypeFlags[ud.m_coop] & GAMETYPE_MARKEROPTION))
|
||||
if (!(g_gametypeFlags[m_coop] & GAMETYPE_MARKEROPTION))
|
||||
{
|
||||
ME_NETOPTIONS_MARKERS.type = Dummy;
|
||||
ME_NETOPTIONS_MARKERS.flags |= MEF_Disabled;
|
||||
|
@ -2031,7 +2015,7 @@ static void Menu_Pre(MenuID_t cm)
|
|||
ME_NETOPTIONS_MARKERS.type = Option;
|
||||
ME_NETOPTIONS_MARKERS.flags &= ~MEF_Disabled;
|
||||
}
|
||||
MEL_NETOPTIONS[5] = (g_gametypeFlags[ud.m_coop] & (GAMETYPE_PLAYERSFRIENDLY|GAMETYPE_TDM)) ? &ME_NETOPTIONS_FRFIRE : &ME_NETOPTIONS_MAPEXITS;
|
||||
MEL_NETOPTIONS[5] = (g_gametypeFlags[m_coop] & (GAMETYPE_PLAYERSFRIENDLY|GAMETYPE_TDM)) ? &ME_NETOPTIONS_FRFIRE : &ME_NETOPTIONS_MAPEXITS;
|
||||
break;
|
||||
|
||||
case MENU_OPTIONS:
|
||||
|
@ -2200,9 +2184,9 @@ static void Menu_PreDraw(MenuID_t cm, MenuEntry_t *entry, const vec2_t origin)
|
|||
|
||||
case MENU_PLAYER:
|
||||
if (RR)
|
||||
rotatesprite_fs(origin.x + (260<<16), origin.y + ((24+(tilesiz[APLAYER].y>>2))<<16), 24576L,0,3845+36-((((8-((int32_t) totalclock>>4)))&7)*5),0,entry == &ME_PLAYER_TEAM ? G_GetTeamPalette(ud.team) : ud.color,10);
|
||||
rotatesprite_fs(origin.x + (260<<16), origin.y + ((24+(tilesiz[APLAYER].y>>2))<<16), 24576L,0,3845+36-((((8-((int32_t) totalclock>>4)))&7)*5),0,entry == &ME_PLAYER_TEAM ? G_GetTeamPalette(playerteam) : playercolor,10);
|
||||
else
|
||||
rotatesprite_fs(origin.x + (260<<16), origin.y + ((24+(tilesiz[APLAYER].y>>1))<<16), 49152L,0,1441-((((4-((int32_t) totalclock>>4)))&3)*5),0,entry == &ME_PLAYER_TEAM ? G_GetTeamPalette(ud.team) : ud.color,10);
|
||||
rotatesprite_fs(origin.x + (260<<16), origin.y + ((24+(tilesiz[APLAYER].y>>1))<<16), 49152L,0,1441-((((4-((int32_t) totalclock>>4)))&3)*5),0,entry == &ME_PLAYER_TEAM ? G_GetTeamPalette(playerteam) : playercolor,10);
|
||||
break;
|
||||
|
||||
case MENU_MACROS:
|
||||
|
@ -2229,27 +2213,27 @@ static void Menu_PreDraw(MenuID_t cm, MenuEntry_t *entry, const vec2_t origin)
|
|||
mminitext(origin.x + (90<<16), origin.y + ((90+8)<<16), "Episode", MF_Minifont.pal_deselected);
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8)<<16), "Level", MF_Minifont.pal_deselected);
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8+8)<<16), ME_NETOPTIONS_MONSTERS.name, MF_Minifont.pal_deselected);
|
||||
if (ud.m_coop == 0)
|
||||
if (m_coop == 0)
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8+8+8)<<16), "Markers", MF_Minifont.pal_deselected);
|
||||
else if (ud.m_coop == 1)
|
||||
else if (m_coop == 1)
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8+8+8)<<16), "Friendly Fire", MF_Minifont.pal_deselected);
|
||||
mminitext(origin.x + (90<<16), origin.y + ((90+8+8+8+8+8)<<16), "User Map", MF_Minifont.pal_deselected);
|
||||
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + (90<<16), g_gametypeNames[ud.m_coop], MF_Minifont.pal_deselected_right);
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + (90<<16), g_gametypeNames[m_coop], MF_Minifont.pal_deselected_right);
|
||||
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8)<<16), g_volumeNames[ud.m_volume_number], MF_Minifont.pal_deselected_right);
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8)<<16), g_mapInfo[MAXLEVELS*ud.m_volume_number+ud.m_level_number].name, MF_Minifont.pal_deselected_right);
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8)<<16), g_mapInfo[MAXLEVELS*ud.m_volume_number+m_level_number].name, MF_Minifont.pal_deselected_right);
|
||||
if (ud.m_monsters_off == 0 || ud.m_player_skill > 0)
|
||||
mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8)<<16), g_skillNames[ud.m_player_skill], MF_Minifont.pal_deselected_right);
|
||||
else mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8)<<16), "None", MF_Minifont.pal_deselected_right);
|
||||
if (ud.m_coop == 0)
|
||||
if (m_coop == 0)
|
||||
{
|
||||
if (ud.m_marker) mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "On", MF_Minifont.pal_deselected_right);
|
||||
if (m_marker) mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "On", MF_Minifont.pal_deselected_right);
|
||||
else mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "Off", MF_Minifont.pal_deselected_right);
|
||||
}
|
||||
else if (ud.m_coop == 1)
|
||||
else if (m_coop == 1)
|
||||
{
|
||||
if (ud.m_ffire) mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "On", MF_Minifont.pal_deselected_right);
|
||||
if (m_ffire) mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "On", MF_Minifont.pal_deselected_right);
|
||||
else mminitext(origin.x + ((90+60)<<16), origin.y + ((90+8+8+8+8)<<16), "Off", MF_Minifont.pal_deselected_right);
|
||||
}
|
||||
break;
|
||||
|
@ -3418,7 +3402,7 @@ static void Menu_EntryLinkActivate(MenuEntry_t *entry)
|
|||
if (entry != &ME_EPISODE_USERMAP)
|
||||
{
|
||||
ud.m_volume_number = M_EPISODE.currentEntry;
|
||||
ud.m_level_number = 0;
|
||||
m_level_number = 0;
|
||||
|
||||
if (g_skillCnt == 0)
|
||||
Menu_StartGameWithoutSkill();
|
||||
|
@ -3573,9 +3557,9 @@ static void Menu_EntryLinkActivate(MenuEntry_t *entry)
|
|||
}
|
||||
else if (entry == &ME_COLCORR_RESET)
|
||||
{
|
||||
g_videoGamma = DEFAULT_GAMMA;
|
||||
g_videoContrast = DEFAULT_CONTRAST;
|
||||
g_videoBrightness = DEFAULT_BRIGHTNESS;
|
||||
vid_gamma = 1.f;
|
||||
vid_contrast = 1.f;
|
||||
vid_brightness = 0.f;
|
||||
r_ambientlight = 1.f;
|
||||
videoSetPalette(0,g_player[myconnectindex].ps->palette,0);
|
||||
}
|
||||
|
@ -3722,21 +3706,9 @@ static void Menu_EntryOptionDidModify(MenuEntry_t *entry)
|
|||
entry == &ME_PLAYER_COLOR ||
|
||||
entry == &ME_PLAYER_TEAM)
|
||||
G_UpdatePlayerFromMenu();
|
||||
else if (entry == &ME_DISPLAYSETUP_UPSCALING)
|
||||
{
|
||||
if (in3dmode())
|
||||
{
|
||||
videoSetGameMode(fullscreen, xres, yres, bpp, ud.detail);
|
||||
}
|
||||
}
|
||||
#ifdef USE_OPENGL
|
||||
else if (entry == &ME_DISPLAYSETUP_ANISOTROPY || entry == &ME_DISPLAYSETUP_TEXFILTER)
|
||||
gltexapplyprops();
|
||||
else if (entry == &ME_RENDERERSETUP_TEXQUALITY)
|
||||
{
|
||||
r_downsizevar = r_downsize;
|
||||
domodechange = 1;
|
||||
}
|
||||
|
||||
if (domodechange)
|
||||
{
|
||||
|
@ -3766,10 +3738,6 @@ static int32_t Menu_EntryRangeInt32Modify(MenuEntry_t *entry, int32_t newValue)
|
|||
FX_SetVolume(newValue);
|
||||
else if (entry == &ME_SOUND_VOLUME_MUSIC)
|
||||
S_MusicVolume(newValue);
|
||||
else if (entry == &ME_MOUSEADVANCED_SCALEX)
|
||||
CONTROL_SetAnalogAxisScale(0, newValue, controldevice_mouse);
|
||||
else if (entry == &ME_MOUSEADVANCED_SCALEY)
|
||||
CONTROL_SetAnalogAxisScale(1, newValue, controldevice_mouse);
|
||||
else if (entry == &ME_JOYSTICKAXIS_SCALE)
|
||||
CONTROL_SetAnalogAxisScale(M_JOYSTICKAXES.currentEntry, newValue, controldevice_joystick);
|
||||
else if (entry == &ME_JOYSTICKAXIS_DEAD)
|
||||
|
@ -4186,7 +4154,7 @@ static void Menu_FileSelect(int32_t input)
|
|||
if (input)
|
||||
{
|
||||
ud.m_volume_number = 0;
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
|
||||
if (g_skillCnt > 0)
|
||||
Menu_AnimateChange(MENU_SKILL, MA_Advance);
|
||||
|
|
|
@ -2403,7 +2403,7 @@ void Net_ParsePacket(uint8_t *packbuf, int packbufleng)
|
|||
if (vote_map != -1 || vote_episode != -1 || voting != -1)
|
||||
G_AddUserQuote("VOTE SUCCEEDED");
|
||||
|
||||
ud.m_level_number = ud.level_number = packbuf[1];
|
||||
m_level_number = ud.level_number = packbuf[1];
|
||||
ud.m_volume_number = ud.volume_number = packbuf[2];
|
||||
ud.m_player_skill = ud.player_skill = packbuf[3];
|
||||
|
||||
|
@ -2412,10 +2412,10 @@ void Net_ParsePacket(uint8_t *packbuf, int packbufleng)
|
|||
ud.m_respawn_monsters = packbuf[5];
|
||||
ud.m_respawn_items = packbuf[6];
|
||||
ud.m_respawn_inventory = packbuf[7];
|
||||
ud.m_coop = packbuf[8];
|
||||
ud.m_marker = packbuf[9];
|
||||
ud.m_ffire = packbuf[10];
|
||||
ud.m_noexits = packbuf[11];
|
||||
m_coop = packbuf[8];
|
||||
m_marker = packbuf[9];
|
||||
m_ffire = packbuf[10];
|
||||
m_noexits = packbuf[11];
|
||||
//ud.m_weaponstay = packbuf[12];
|
||||
|
||||
for (int TRAVERSE_CONNECT(i))
|
||||
|
@ -2437,7 +2437,7 @@ void Net_ParsePacket(uint8_t *packbuf, int packbufleng)
|
|||
for (i = connectpoint2[connecthead]; i >= 0; i = connectpoint2[i])
|
||||
if (i != other) Net_SendPacket(i, packbuf, packbufleng);
|
||||
|
||||
ud.m_level_number = ud.level_number = packbuf[1];
|
||||
m_level_number = ud.level_number = packbuf[1];
|
||||
ud.m_volume_number = ud.volume_number = packbuf[2];
|
||||
ud.m_player_skill = ud.player_skill = packbuf[3];
|
||||
|
||||
|
@ -2446,10 +2446,10 @@ void Net_ParsePacket(uint8_t *packbuf, int packbufleng)
|
|||
ud.m_respawn_monsters = packbuf[5];
|
||||
ud.m_respawn_items = packbuf[6];
|
||||
ud.m_respawn_inventory = packbuf[7];
|
||||
ud.m_coop = packbuf[8];
|
||||
ud.m_marker = packbuf[9];
|
||||
ud.m_ffire = packbuf[10];
|
||||
ud.m_noexits = packbuf[11];
|
||||
m_coop = packbuf[8];
|
||||
m_marker = packbuf[9];
|
||||
m_ffire = packbuf[10];
|
||||
m_noexits = packbuf[11];
|
||||
//ud.m_weaponstay = packbuf[12];
|
||||
break;
|
||||
|
||||
|
@ -2518,7 +2518,7 @@ void Net_ParsePacket(uint8_t *packbuf, int packbufleng)
|
|||
g_player[i].ps->gm = MODE_EOL;
|
||||
|
||||
ud.level_number = packbuf[1];
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
ud.from_bonus = packbuf[2];
|
||||
break;
|
||||
|
||||
|
@ -2601,8 +2601,8 @@ void Net_ParsePacket(uint8_t *packbuf, int packbufleng)
|
|||
}
|
||||
}
|
||||
|
||||
if (ud.m_level_number == 7 && ud.m_volume_number == 0 && boardfilename[0] == 0)
|
||||
ud.m_level_number = 0;
|
||||
if (m_level_number == 7 && ud.m_volume_number == 0 && boardfilename[0] == 0)
|
||||
m_level_number = 0;
|
||||
|
||||
break;
|
||||
|
||||
|
@ -3430,9 +3430,9 @@ void Net_SendClientInfo(void)
|
|||
tempbuf[l++] = g_player[myconnectindex].ps->aim_mode = in_aimmode;
|
||||
tempbuf[l++] = g_player[myconnectindex].ps->auto_aim = cl_autoaim;
|
||||
tempbuf[l++] = g_player[myconnectindex].ps->weaponswitch = cl_weaponswitch;
|
||||
tempbuf[l++] = g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor = ud.color;
|
||||
tempbuf[l++] = g_player[myconnectindex].ps->palookup = g_player[myconnectindex].pcolor = playercolor;
|
||||
|
||||
tempbuf[l++] = g_player[myconnectindex].pteam = ud.team;
|
||||
tempbuf[l++] = g_player[myconnectindex].pteam = playerteam;
|
||||
|
||||
for (i=0; i<10; i++)
|
||||
{
|
||||
|
@ -3527,8 +3527,8 @@ void Net_ReceiveUserMapName(uint8_t *pbuf, int32_t packbufleng)
|
|||
}
|
||||
}
|
||||
|
||||
if (ud.m_level_number == 7 && ud.m_volume_number == 0 && boardfilename[0] == 0)
|
||||
ud.m_level_number = 0;
|
||||
if (m_level_number == 7 && ud.m_volume_number == 0 && boardfilename[0] == 0)
|
||||
m_level_number = 0;
|
||||
}
|
||||
|
||||
void Net_SendMessage(void)
|
||||
|
@ -3707,7 +3707,7 @@ void Net_StartNewGame()
|
|||
|
||||
Net_ExtractNewGame(&pendingnewgame, 0);
|
||||
G_NewGame(ud.volume_number,ud.level_number,ud.player_skill);
|
||||
ud.coop = ud.m_coop;
|
||||
ud.coop = m_coop;
|
||||
|
||||
//g_netMapRevision = 0;
|
||||
|
||||
|
@ -3762,16 +3762,16 @@ void Net_FillNewGame(newgame_t *newgame, int32_t frommenu)
|
|||
{
|
||||
if (frommenu)
|
||||
{
|
||||
newgame->level_number = ud.m_level_number;
|
||||
newgame->level_number = m_level_number;
|
||||
newgame->volume_number = ud.m_volume_number;
|
||||
newgame->player_skill = ud.m_player_skill;
|
||||
newgame->monsters_off = ud.m_monsters_off;
|
||||
newgame->respawn_monsters = ud.m_respawn_monsters;
|
||||
newgame->respawn_items = ud.m_respawn_items;
|
||||
newgame->respawn_inventory = ud.m_respawn_inventory;
|
||||
newgame->ffire = ud.m_ffire;
|
||||
newgame->noexits = ud.m_noexits;
|
||||
newgame->coop = ud.m_coop;
|
||||
newgame->ffire = m_ffire;
|
||||
newgame->noexits = m_noexits;
|
||||
newgame->coop = m_coop;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -3790,16 +3790,16 @@ void Net_FillNewGame(newgame_t *newgame, int32_t frommenu)
|
|||
|
||||
void Net_ExtractNewGame(newgame_t *newgame, int32_t menuonly)
|
||||
{
|
||||
ud.m_level_number = newgame->level_number;
|
||||
m_level_number = newgame->level_number;
|
||||
ud.m_volume_number = newgame->volume_number;
|
||||
ud.m_player_skill = newgame->player_skill;
|
||||
ud.m_monsters_off = newgame->monsters_off;
|
||||
ud.m_respawn_monsters = newgame->respawn_monsters;
|
||||
ud.m_respawn_items = newgame->respawn_items;
|
||||
ud.m_respawn_inventory = newgame->respawn_inventory;
|
||||
ud.m_ffire = newgame->ffire;
|
||||
ud.m_noexits = newgame->noexits;
|
||||
ud.m_coop = newgame->coop;
|
||||
m_ffire = newgame->ffire;
|
||||
m_noexits = newgame->noexits;
|
||||
m_coop = newgame->coop;
|
||||
|
||||
if (!menuonly)
|
||||
{
|
||||
|
|
|
@ -82,7 +82,7 @@ static int osdcmd_changelevel(osdcmdptr_t parm)
|
|||
else if (voting == -1)
|
||||
{
|
||||
ud.m_volume_number = volume;
|
||||
ud.m_level_number = level;
|
||||
m_level_number = level;
|
||||
|
||||
if (g_player[myconnectindex].ps->i)
|
||||
{
|
||||
|
@ -101,12 +101,12 @@ static int osdcmd_changelevel(osdcmdptr_t parm)
|
|||
tempbuf[0] = PACKET_MAP_VOTE_INITIATE;
|
||||
tempbuf[1] = myconnectindex;
|
||||
tempbuf[2] = ud.m_volume_number;
|
||||
tempbuf[3] = ud.m_level_number;
|
||||
tempbuf[3] = m_level_number;
|
||||
|
||||
enet_peer_send(g_netClientPeer, CHAN_GAMESTATE, enet_packet_create(tempbuf, 4, ENET_PACKET_FLAG_RELIABLE));
|
||||
}
|
||||
if ((g_gametypeFlags[ud.m_coop] & GAMETYPE_PLAYERSFRIENDLY) && !(g_gametypeFlags[ud.m_coop] & GAMETYPE_TDM))
|
||||
ud.m_noexits = 0;
|
||||
if ((g_gametypeFlags[m_coop] & GAMETYPE_PLAYERSFRIENDLY) && !(g_gametypeFlags[m_coop] & GAMETYPE_TDM))
|
||||
m_noexits = 0;
|
||||
|
||||
M_OpenMenu(myconnectindex);
|
||||
Menu_Change(MENU_NETWAITVOTES);
|
||||
|
@ -127,7 +127,7 @@ static int osdcmd_changelevel(osdcmdptr_t parm)
|
|||
osdcmd_cheatsinfo_stat.cheatnum = -1;
|
||||
|
||||
ud.m_volume_number = volume;
|
||||
ud.m_level_number = level;
|
||||
m_level_number = level;
|
||||
|
||||
ud.m_monsters_off = 0;
|
||||
ud.monsters_off = 0;
|
||||
|
@ -174,15 +174,15 @@ static int osdcmd_map(osdcmdptr_t parm)
|
|||
{
|
||||
Net_SendUserMapName();
|
||||
ud.m_volume_number = 0;
|
||||
ud.m_level_number = 7;
|
||||
Net_NewGame(ud.m_volume_number, ud.m_level_number);
|
||||
m_level_number = 7;
|
||||
Net_NewGame(ud.m_volume_number, m_level_number);
|
||||
}
|
||||
else if (voting == -1)
|
||||
{
|
||||
Net_SendUserMapName();
|
||||
|
||||
ud.m_volume_number = 0;
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
|
||||
if (g_player[myconnectindex].ps->i)
|
||||
{
|
||||
|
@ -200,12 +200,12 @@ static int osdcmd_map(osdcmdptr_t parm)
|
|||
tempbuf[0] = PACKET_MAP_VOTE_INITIATE;
|
||||
tempbuf[1] = myconnectindex;
|
||||
tempbuf[2] = ud.m_volume_number;
|
||||
tempbuf[3] = ud.m_level_number;
|
||||
tempbuf[3] = m_level_number;
|
||||
|
||||
enet_peer_send(g_netClientPeer, CHAN_GAMESTATE, enet_packet_create(tempbuf, 4, ENET_PACKET_FLAG_RELIABLE));
|
||||
}
|
||||
if ((g_gametypeFlags[ud.m_coop] & GAMETYPE_PLAYERSFRIENDLY) && !(g_gametypeFlags[ud.m_coop] & GAMETYPE_TDM))
|
||||
ud.m_noexits = 0;
|
||||
if ((g_gametypeFlags[m_coop] & GAMETYPE_PLAYERSFRIENDLY) && !(g_gametypeFlags[m_coop] & GAMETYPE_TDM))
|
||||
m_noexits = 0;
|
||||
|
||||
M_OpenMenu(myconnectindex);
|
||||
Menu_Change(MENU_NETWAITVOTES);
|
||||
|
@ -216,7 +216,7 @@ static int osdcmd_map(osdcmdptr_t parm)
|
|||
|
||||
osdcmd_cheatsinfo_stat.cheatnum = -1;
|
||||
ud.m_volume_number = 0;
|
||||
ud.m_level_number = 7;
|
||||
m_level_number = 7;
|
||||
|
||||
ud.m_monsters_off = ud.monsters_off = 0;
|
||||
|
||||
|
@ -227,7 +227,7 @@ static int osdcmd_map(osdcmdptr_t parm)
|
|||
|
||||
if (g_player[myconnectindex].ps->gm & MODE_GAME)
|
||||
{
|
||||
G_NewGame(ud.m_volume_number, ud.m_level_number, ud.m_player_skill);
|
||||
G_NewGame(ud.m_volume_number, m_level_number, ud.m_player_skill);
|
||||
g_player[myconnectindex].ps->gm = MODE_RESTART;
|
||||
}
|
||||
else G_NewGame_EnterLevel();
|
||||
|
|
|
@ -5874,13 +5874,13 @@ void P_EndLevel(void)
|
|||
if (ud.from_bonus)
|
||||
{
|
||||
ud.level_number = ud.from_bonus;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
ud.from_bonus = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
ud.level_number = (++ud.level_number < MAXLEVELS) ? ud.level_number : 0;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -5909,7 +5909,7 @@ static int P_DoFist(DukePlayer_t *pPlayer)
|
|||
if ((unsigned)ud.secretlevel <= MAXLEVELS)
|
||||
ud.level_number = ud.secretlevel - 1;
|
||||
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
}
|
||||
else
|
||||
P_EndLevel();
|
||||
|
@ -6935,13 +6935,13 @@ check_enemy_sprite:
|
|||
if (!RR && ud.from_bonus)
|
||||
{
|
||||
ud.level_number = ud.from_bonus;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
ud.from_bonus = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
ud.level_number = (++ud.level_number < MAXLEVELS) ? ud.level_number : 0;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -1880,7 +1880,7 @@ void G_NewGame(int volumeNum, int levelNum, int skillNum)
|
|||
|
||||
ready2send = 0;
|
||||
|
||||
if (ud.m_recstat != 2 && ud.last_level >= 0 &&
|
||||
if (m_recstat != 2 && ud.last_level >= 0 &&
|
||||
(g_netServer || ud.multimode > 1) && (ud.coop&GAMETYPE_SCORESHEET))
|
||||
{
|
||||
if (!RRRA || g_mostConcurrentPlayers > 1 || g_netServer || numplayers > 1)
|
||||
|
@ -1952,7 +1952,7 @@ end_vol4a:
|
|||
for (bssize_t i=0; i<(MAXVOLUMES*MAXLEVELS); i++)
|
||||
G_FreeMapState(i);
|
||||
|
||||
if (ud.m_coop != 1)
|
||||
if (m_coop != 1)
|
||||
{
|
||||
for (bssize_t weaponNum = 0; weaponNum < MAX_WEAPONS; weaponNum++)
|
||||
{
|
||||
|
@ -2304,13 +2304,13 @@ int G_EnterLevel(int gameMode)
|
|||
ud.respawn_items = ud.m_respawn_items;
|
||||
ud.respawn_inventory = ud.m_respawn_inventory;
|
||||
ud.monsters_off = ud.m_monsters_off;
|
||||
ud.coop = ud.m_coop;
|
||||
ud.marker = ud.m_marker;
|
||||
ud.ffire = ud.m_ffire;
|
||||
ud.noexits = ud.m_noexits;
|
||||
ud.coop = m_coop;
|
||||
ud.marker = m_marker;
|
||||
ud.ffire = m_ffire;
|
||||
ud.noexits = m_noexits;
|
||||
|
||||
if ((gameMode & MODE_DEMO) != MODE_DEMO)
|
||||
ud.recstat = ud.m_recstat;
|
||||
ud.recstat = m_recstat;
|
||||
if ((gameMode & MODE_DEMO) == 0 && ud.recstat == 2)
|
||||
ud.recstat = 0;
|
||||
|
||||
|
@ -2336,7 +2336,7 @@ int G_EnterLevel(int gameMode)
|
|||
levelNum &= MAXLEVELS-1;
|
||||
volumeNum = (volumeNum - levelNum) / MAXLEVELS;
|
||||
|
||||
ud.level_number = ud.m_level_number = levelNum;
|
||||
ud.level_number = m_level_number = levelNum;
|
||||
ud.volume_number = ud.m_volume_number = volumeNum;
|
||||
|
||||
boardfilename[0] = 0;
|
||||
|
@ -2388,7 +2388,7 @@ int G_EnterLevel(int gameMode)
|
|||
}
|
||||
|
||||
G_LoadMapHack(levelName, "endgame.map");
|
||||
G_SetupFilenameBasedMusic(levelName, "endgame.map", ud.m_level_number);
|
||||
G_SetupFilenameBasedMusic(levelName, "endgame.map", m_level_number);
|
||||
}
|
||||
else if (!VOLUMEONE && Menu_HaveUserMap())
|
||||
{
|
||||
|
@ -2399,7 +2399,7 @@ int G_EnterLevel(int gameMode)
|
|||
}
|
||||
|
||||
G_LoadMapHack(levelName, boardfilename);
|
||||
G_SetupFilenameBasedMusic(levelName, boardfilename, ud.m_level_number);
|
||||
G_SetupFilenameBasedMusic(levelName, boardfilename, m_level_number);
|
||||
}
|
||||
else if (engineLoadBoard(g_mapInfo[mii].filename, VOLUMEONE, &pPlayer->pos, &lbang, &pPlayer->cursectnum) < 0)
|
||||
{
|
||||
|
|
|
@ -382,7 +382,7 @@ int32_t G_LoadPlayer(savebrief_t & sv)
|
|||
|
||||
// non-"m_" fields will be loaded from svgm_udnetw
|
||||
ud.m_volume_number = h.volnum;
|
||||
ud.m_level_number = h.levnum;
|
||||
m_level_number = h.levnum;
|
||||
ud.m_player_skill = h.skill;
|
||||
|
||||
// NOTE: Bmemcpy needed for SAVEGAME_MUSIC.
|
||||
|
@ -1620,17 +1620,17 @@ static void sv_postudload()
|
|||
{
|
||||
// Bmemcpy(&boardfilename[0], ¤tboardfilename[0], BMAX_PATH); // DON'T do this in demos!
|
||||
#if 1
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
ud.m_volume_number = ud.volume_number;
|
||||
ud.m_player_skill = ud.player_skill;
|
||||
ud.m_respawn_monsters = ud.respawn_monsters;
|
||||
ud.m_respawn_items = ud.respawn_items;
|
||||
ud.m_respawn_inventory = ud.respawn_inventory;
|
||||
ud.m_monsters_off = ud.monsters_off;
|
||||
ud.m_coop = ud.coop;
|
||||
ud.m_marker = ud.marker;
|
||||
ud.m_ffire = ud.ffire;
|
||||
ud.m_noexits = ud.noexits;
|
||||
m_coop = ud.coop;
|
||||
m_marker = ud.marker;
|
||||
m_ffire = ud.ffire;
|
||||
m_noexits = ud.noexits;
|
||||
#endif
|
||||
}
|
||||
//static int32_t lockclock_dummy;
|
||||
|
|
|
@ -3083,7 +3083,7 @@ void G_BonusScreenRRRA(int32_t bonusonly)
|
|||
{
|
||||
g_RAendEpisode = 0;
|
||||
ud.m_volume_number = ud.volume_number = 1;
|
||||
ud.m_level_number = ud.level_number = 0;
|
||||
m_level_number = ud.level_number = 0;
|
||||
ud.eog = 0;
|
||||
}
|
||||
if (g_turdLevel)
|
||||
|
|
|
@ -1135,7 +1135,7 @@ void P_DoQuote(int32_t q, DukePlayer_t *p)
|
|||
{
|
||||
int32_t cq = 0;
|
||||
|
||||
if (ud.fta_on == 0 || q < 0 || !(p->gm & MODE_GAME))
|
||||
if (hud_messages == 0 || q < 0 || !(p->gm & MODE_GAME))
|
||||
return;
|
||||
|
||||
if (q & MAXQUOTES)
|
||||
|
|
|
@ -4297,7 +4297,7 @@ void P_CheckSectors(int playerNum)
|
|||
if (ud.from_bonus)
|
||||
{
|
||||
ud.level_number = ud.from_bonus;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
ud.from_bonus = 0;
|
||||
}
|
||||
else
|
||||
|
@ -4305,7 +4305,7 @@ void P_CheckSectors(int playerNum)
|
|||
if (RRRA && ud.level_number == 6 && ud.volume_number == 0)
|
||||
g_RAendEpisode = 1;
|
||||
ud.level_number = (++ud.level_number < MAXLEVELS) ? ud.level_number : 0;
|
||||
ud.m_level_number = ud.level_number;
|
||||
m_level_number = ud.level_number;
|
||||
}
|
||||
g_RAendLevel = 1;
|
||||
}
|
||||
|
|
|
@ -3765,8 +3765,8 @@ MNU_DoSlider(short dir, MenuItem_p item, SWBOOL draw)
|
|||
if (slidersettings[item->slider] != offset)
|
||||
{
|
||||
slidersettings[item->slider] = offset;
|
||||
//MouseAnalogScale[item->slider - sldr_mousescalex] = offset<<13;
|
||||
CONTROL_SetAnalogAxisScale(item->slider - sldr_mousescalex, offset<<13, controldevice_mouse);
|
||||
if (item->slider == sldr_mousescalex) in_mousescalex = offset<<13;
|
||||
else in_mousescaley = offset<13;
|
||||
}
|
||||
|
||||
sprintf(tmp_text, "%.2f", (float)(slidersettings[item->slider]<<13) / 65535.f);
|
||||
|
|
4
source/thirdparty/imgui/imgui_demo.cpp
vendored
4
source/thirdparty/imgui/imgui_demo.cpp
vendored
|
@ -262,8 +262,8 @@ void ImGui::ShowDemoWindow(bool* p_open)
|
|||
if (no_close) p_open = NULL; // Don't pass our bool* to Begin
|
||||
|
||||
// We specify a default position/size in case there's no data in the .ini file. Typically this isn't required! We only do it to make the Demo applications a little more welcoming.
|
||||
ImGui::SetNextWindowPos(ImVec2(650, 20), ImGuiCond_FirstUseEver);
|
||||
ImGui::SetNextWindowSize(ImVec2(550, 680), ImGuiCond_FirstUseEver);
|
||||
ImGui::SetNextWindowPos(ImVec2(650, 20), ImGuiCond_Always);
|
||||
ImGui::SetNextWindowSize(ImVec2(550, 680), ImGuiCond_Always);
|
||||
|
||||
// Main body of the Demo window starts here.
|
||||
if (!ImGui::Begin("Dear ImGui Demo", p_open, window_flags))
|
||||
|
|
Loading…
Reference in a new issue