- menu_width = bound(1, width, vid_conwidth.integer);
- menu_height = bound(1, height, vid_conheight.integer);
+ menu_width = bound(1.0f, (float)width, vid_conwidth.value);
+ menu_height = bound(1.0f, (float)height, vid_conheight.value);
menu_x = (vid_conwidth.integer - menu_width) * 0.5;
menu_y = (vid_conheight.integer - menu_height) * 0.5;
//DrawQ_Fill(menu_x, menu_y, menu_width, menu_height, 0, 0, 0, 0.5, 0);
menu_x = (vid_conwidth.integer - menu_width) * 0.5;
menu_y = (vid_conheight.integer - menu_height) * 0.5;
//DrawQ_Fill(menu_x, menu_y, menu_width, menu_height, 0, 0, 0, 0.5, 0);
- DrawQ_String_Font(menu_x + cx, menu_y + cy, temp, 1, 8, 8, 1, 1, 1, 1, 0, NULL, true, FONT_MENU);
+ DrawQ_String(menu_x + cx, menu_y + cy, temp, 1, 8, 8, 1, 1, 1, 1, 0, NULL, true, FONT_MENU);
- DrawQ_String_Font(menu_x + cx, menu_y + cy, str, 0, 8, 8, 1, 1, 1, 1, 0, NULL, false, FONT_MENU);
+ DrawQ_String(menu_x + cx, menu_y + cy, str, 0, 8, 8, 1, 1, 1, 1, 0, NULL, false, FONT_MENU);
- DrawQ_String_Font(menu_x + cx, menu_y + cy, str, 0, 8, 8, 1, 1, 1, 1, 0, NULL, true, FONT_MENU);
+ DrawQ_String(menu_x + cx, menu_y + cy, str, 0, 8, 8, 1, 1, 1, 1, 0, NULL, true, FONT_MENU);
- DrawQ_String_Font(menu_x + cx, menu_y + cy, str, 0, 8, 8, 1, 0, 0, 1, 0, NULL, true, FONT_MENU);
+ DrawQ_String(menu_x + cx, menu_y + cy, str, 0, 8, 8, 1, 0, 0, 1, 0, NULL, true, FONT_MENU);
}
static void M_ItemPrint(float cx, float cy, const char *str, int unghosted)
{
if (unghosted)
}
static void M_ItemPrint(float cx, float cy, const char *str, int unghosted)
{
if (unghosted)
- DrawQ_String_Font(menu_x + cx, menu_y + cy, str, 0, 8, 8, 1, 1, 1, 1, 0, NULL, true, FONT_MENU);
+ DrawQ_String(menu_x + cx, menu_y + cy, str, 0, 8, 8, 1, 1, 1, 1, 0, NULL, true, FONT_MENU);
- DrawQ_String_Font(menu_x + cx, menu_y + cy, str, 0, 8, 8, 0.4, 0.4, 0.4, 1, 0, NULL, true, FONT_MENU);
+ DrawQ_String(menu_x + cx, menu_y + cy, str, 0, 8, 8, 0.4, 0.4, 0.4, 1, 0, NULL, true, FONT_MENU);
static char m_filenames[MAX_SAVEGAMES][SAVEGAME_COMMENT_LENGTH+1];
static int loadable[MAX_SAVEGAMES];
static void M_ScanSaves (void)
{
static char m_filenames[MAX_SAVEGAMES][SAVEGAME_COMMENT_LENGTH+1];
static int loadable[MAX_SAVEGAMES];
static void M_ScanSaves (void)
{
continue;
// read enough to get the comment
len = FS_Read(f, buf, sizeof(buf) - 1);
continue;
// read enough to get the comment
len = FS_Read(f, buf, sizeof(buf) - 1);
// description
COM_ParseToken_Simple(&t, false, false);
strlcpy (m_filenames[i], com_token, sizeof (m_filenames[i]));
// description
COM_ParseToken_Simple(&t, false, false);
strlcpy (m_filenames[i], com_token, sizeof (m_filenames[i]));
{
{"", "Movement"}, // Movement commands
{"+forward", "walk forward"},
{
{"", "Movement"}, // Movement commands
{"+forward", "walk forward"},
{
{"impulse 69", "Power 1"},
{"impulse 70", "Power 2"},
{
{"impulse 69", "Power 1"},
{"impulse 70", "Power 2"},
-void M_FindKeysForCommand (const char *command, int *keys)
-{
- int count;
- int j;
- char *b;
-
- for (j = 0;j < NUMKEYS;j++)
- keys[j] = -1;
-
- count = 0;
-
- for (j = 0; j < (int)sizeof (keybindings[0]) / (int)sizeof (keybindings[0][0]); j++)
- {
- b = keybindings[0][j];
- if (!b)
- continue;
- if (!strcmp (b, command) )
- {
- keys[count++] = j;
- if (count == NUMKEYS)
- break;
- }
- }
-}
-
-static void M_UnbindCommand (char *command)
+static void M_UnbindCommand (const char *command)
S_LocalSound ("sound/misc/menu2.wav");
if (keys[NUMKEYS - 1] != -1)
M_UnbindCommand (bindnames[keys_cursor][0]);
S_LocalSound ("sound/misc/menu2.wav");
if (keys[NUMKEYS - 1] != -1)
M_UnbindCommand (bindnames[keys_cursor][0]);
{
{"Standard 4x3" , 320, 240, 320, 240, 1 },
{"Standard 4x3" , 400, 300, 400, 300, 1 },
{
{"Standard 4x3" , 320, 240, 320, 240, 1 },
{"Standard 4x3" , 400, 300, 400, 300, 1 },
-video_resolution_t *menu_video_resolutions;
-int menu_video_resolutions_count;
-qboolean menu_video_resolutions_forfullscreen;
+static video_resolution_t *menu_video_resolutions;
+static int menu_video_resolutions_count;
+static qboolean menu_video_resolutions_forfullscreen;
for (i = 1;i < menu_video_resolutions_count;i++)
{
// if the new mode would be a worse match in width, skip it
for (i = 1;i < menu_video_resolutions_count;i++)
{
// if the new mode would be a worse match in width, skip it
continue;
// if it is equal in width, check height
if (menu_video_resolutions[i].width == w && menu_video_resolutions[menu_video_resolution].width == w)
{
// if the new mode would be a worse match in height, skip it
continue;
// if it is equal in width, check height
if (menu_video_resolutions[i].width == w && menu_video_resolutions[menu_video_resolution].width == w)
{
// if the new mode would be a worse match in height, skip it
continue;
// if it is equal in width and height, check pixel aspect
if (menu_video_resolutions[i].height == h && menu_video_resolutions[menu_video_resolution].height == h)
{
// if the new mode would be a worse match in pixel aspect, skip it
continue;
// if it is equal in width and height, check pixel aspect
if (menu_video_resolutions[i].height == h && menu_video_resolutions[menu_video_resolution].height == h)
{
// if the new mode would be a worse match in pixel aspect, skip it
continue;
// if it is equal in everything, skip it (prefer earlier modes)
if (menu_video_resolutions[i].pixelheight == a && menu_video_resolutions[menu_video_resolution].pixelheight == a)
continue;
// if it is equal in everything, skip it (prefer earlier modes)
if (menu_video_resolutions[i].pixelheight == a && menu_video_resolutions[menu_video_resolution].pixelheight == a)
// Current and Proposed Resolution
M_Print(16, video_cursor_table[t] - 12, " Current Resolution");
if (vid_supportrefreshrate && vid.userefreshrate && vid.fullscreen)
// Current and Proposed Resolution
M_Print(16, video_cursor_table[t] - 12, " Current Resolution");
if (vid_supportrefreshrate && vid.userefreshrate && vid.fullscreen)
- M_Print(220, video_cursor_table[t] - 12, va("%dx%d %dhz", vid.width, vid.height, vid.refreshrate));
+ M_Print(220, video_cursor_table[t] - 12, va("%dx%d %.2fhz", vid.width, vid.height, vid.refreshrate));
else
M_Print(220, video_cursor_table[t] - 12, va("%dx%d", vid.width, vid.height));
M_Print(16, video_cursor_table[t], " New Resolution");
else
M_Print(220, video_cursor_table[t] - 12, va("%dx%d", vid.width, vid.height));
M_Print(16, video_cursor_table[t], " New Resolution");
// Refresh Rate
M_ItemPrint(16, video_cursor_table[t], " Refresh Rate", vid_supportrefreshrate && vid_userefreshrate.integer);
// Refresh Rate
M_ItemPrint(16, video_cursor_table[t], " Refresh Rate", vid_supportrefreshrate && vid_userefreshrate.integer);
- M_DrawSlider(220, video_cursor_table[t], vid_refreshrate.integer, 60, 150);
+ M_DrawSlider(220, video_cursor_table[t], vid_refreshrate.value, 50, 150);
- M_ItemPrint(16, video_cursor_table[t], " Vertical Sync", gl_videosyncavailable);
+ M_ItemPrint(16, video_cursor_table[t], " Vertical Sync", true);
- M_ItemPrint(16, video_cursor_table[t], " Anisotropic Filter", gl_support_anisotropy);
- M_DrawSlider(220, video_cursor_table[t], gl_texture_anisotropy.integer, 1, gl_max_anisotropy);
+ M_ItemPrint(16, video_cursor_table[t], " Anisotropic Filter", vid.support.ext_texture_filter_anisotropic);
+ M_DrawSlider(220, video_cursor_table[t], gl_texture_anisotropy.integer, 1, vid.max_anisotropy);
t++;
M_ItemPrint(16, video_cursor_table[t], " Texture Quality", true);
M_DrawSlider(220, video_cursor_table[t], gl_picmip.value, 3, 0);
t++;
t++;
M_ItemPrint(16, video_cursor_table[t], " Texture Quality", true);
M_DrawSlider(220, video_cursor_table[t], gl_picmip.value, 3, 0);
t++;
- M_ItemPrint(16, video_cursor_table[t], " Texture Compression", gl_support_texture_compression);
+ M_ItemPrint(16, video_cursor_table[t], " Texture Compression", vid.support.arb_texture_compression);
else if (video_cursor == t++)
Cvar_SetValueQuick (&vid_userefreshrate, !vid_userefreshrate.integer);
else if (video_cursor == t++)
else if (video_cursor == t++)
Cvar_SetValueQuick (&vid_userefreshrate, !vid_userefreshrate.integer);
else if (video_cursor == t++)
- Cvar_SetValueQuick (&vid_refreshrate, bound(60, vid_refreshrate.integer + dir, 150));
+ Cvar_SetValueQuick (&vid_refreshrate, bound(50, vid_refreshrate.value + dir, 150));
else if (video_cursor == t++)
Cvar_SetValueQuick (&vid_fullscreen, !vid_fullscreen.integer);
else if (video_cursor == t++)
Cvar_SetValueQuick (&vid_vsync, !vid_vsync.integer);
else if (video_cursor == t++)
else if (video_cursor == t++)
Cvar_SetValueQuick (&vid_fullscreen, !vid_fullscreen.integer);
else if (video_cursor == t++)
Cvar_SetValueQuick (&vid_vsync, !vid_vsync.integer);
else if (video_cursor == t++)
- Cvar_SetValueQuick (&gl_texture_anisotropy, bound(1, gl_texture_anisotropy.value * (dir < 0 ? 0.5 : 2.0), gl_max_anisotropy));
+ Cvar_SetValueQuick (&gl_texture_anisotropy, bound(1, gl_texture_anisotropy.value * (dir < 0 ? 0.5 : 2.0), vid.max_anisotropy));
else if (video_cursor == t++)
Cvar_SetValueQuick (&gl_picmip, bound(0, gl_picmip.value - dir, 3));
else if (video_cursor == t++)
else if (video_cursor == t++)
Cvar_SetValueQuick (&gl_picmip, bound(0, gl_picmip.value - dir, 3));
else if (video_cursor == t++)
-static int M_QuitMessage(char *line1, char *line2, char *line3, char *line4, char *line5, char *line6, char *line7, char *line8)
+static int M_QuitMessage(const char *line1, const char *line2, const char *line3, const char *line4, const char *line5, const char *line6, const char *line7, const char *line8)
M_Print(0, 72, " Teamplay");
if (gamemode == GAME_ROGUE)
{
M_Print(0, 72, " Teamplay");
if (gamemode == GAME_ROGUE)
{
DrawQ_Fill(menu_x, menu_y + y, 640, 16, n == slist_cursor ? (0.5 + 0.2 * sin(realtime * M_PI)) : 0, 0, 0, 0.5, 0);
DrawQ_Fill(menu_x, menu_y + y, 640, 16, n == slist_cursor ? (0.5 + 0.2 * sin(realtime * M_PI)) : 0, 0, 0, 0.5, 0);
- M_PrintColored(0, y, serverlist_viewlist[n]->line1);y += 8;
- M_PrintColored(0, y, serverlist_viewlist[n]->line2);y += 8;
+ M_PrintColored(0, y, entry->line1);y += 8;
+ M_PrintColored(0, y, entry->line2);y += 8;
static void M_KeyEvent(int key, int ascii, qboolean downevent);
static void M_Draw(void);
static void M_KeyEvent(int key, int ascii, qboolean downevent);
static void M_Draw(void);
prog->init_cmd = VM_M_Cmd_Init;
prog->reset_cmd = VM_M_Cmd_Reset;
prog->error_cmd = MP_Error;
prog->init_cmd = VM_M_Cmd_Init;
prog->reset_cmd = VM_M_Cmd_Reset;
prog->error_cmd = MP_Error;
f1 = video_resolutions[i].conwidth > video_resolutions[i].width;
f2 = video_resolutions[i].conheight > video_resolutions[i].height;
if(f1 > f2)
f1 = video_resolutions[i].conwidth > video_resolutions[i].width;
f2 = video_resolutions[i].conheight > video_resolutions[i].height;
if(f1 > f2)