Mouse-over tooltips, mostly teamplay and network ones

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3883 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
Lance 2011-07-22 15:05:40 +00:00
parent f28726af74
commit d309c3338a
3 changed files with 132 additions and 119 deletions

View File

@ -1898,23 +1898,28 @@ void M_Menu_Main_f (void)
#ifndef CLIENTONLY
b = MC_AddConsoleCommand (mainm, 68, 13, "", "menu_single\n");
b->common.tooltip = "Singleplayer.";
mainm->selecteditem = (menuoption_t *)b;
b->common.width = 12*20;
b->common.height = 20;
#endif
b = MC_AddConsoleCommand (mainm, 68, 53, "", "menu_multi\n");
b->common.tooltip = "Multiplayer.";
#ifdef CLIENTONLY
mainm->selecteditem = (menuoption_t *)b;
#endif
b->common.width = 12*20;
b->common.height = 20;
b = MC_AddConsoleCommand (mainm, 68, 93, "", "menu_options\n");
b->common.tooltip = "Options.";
b->common.width = 12*20;
b->common.height = 20;
b = MC_AddConsoleCommand (mainm, 68, 133, "", "menu_video\n");
b->common.tooltip = "Video Options.";
b->common.width = 12*20;
b->common.height = 20;
b = MC_AddConsoleCommand (mainm, 68, 173, "", "menu_quit\n");
b->common.tooltip = "Quit to DOS.";
b->common.width = 12*20;
b->common.height = 20;
@ -2023,26 +2028,32 @@ void M_Menu_Main_f (void)
p = R2D_SafeCachePic("gfx/mainmenu.lmp");
b=MC_AddConsoleCommand (mainm, 72, 32, "", "menu_single\n");
b->common.tooltip = "Start singleplayer Quake game.";
mainm->selecteditem = (menuoption_t *)b;
b->common.width = p->width;
b->common.height = 20;
b=MC_AddConsoleCommand (mainm, 72, 52, "", "menu_multi\n");
b->common.tooltip = "Multiplayer menu.";
b->common.width = p->width;
b->common.height = 20;
b=MC_AddConsoleCommand (mainm, 72, 72, "", "menu_options\n");
b->common.tooltip = "Options menu.";
b->common.width = p->width;
b->common.height = 20;
if (m_helpismedia.value)
{
b=MC_AddConsoleCommand(mainm, 72, 92, "", "menu_media\n");
b->common.tooltip = "Media menu.";
}
else
{
b=MC_AddConsoleCommand(mainm, 72, 92, "", "help\n");
b->common.tooltip = "Help menu.";
}
b->common.width = p->width;
b->common.height = 20;
b=MC_AddConsoleCommand (mainm, 72, 112, "", "menu_quit\n");
b->common.tooltip = "Exit to DOS.";
b->common.width = p->width;
b->common.height = 20;
@ -2061,7 +2072,7 @@ int MC_AddBulk(struct menu_s *menu, menubulk_t *bulk, int xstart, int xtextend,
int x = xtextend;
int xleft;
int spacing = 8;
if (bulk->text)
x -= strlen(bulk->text) * 8;
xleft = x - xstart;

View File

@ -685,17 +685,17 @@ void M_Menu_Teamplay_f (void)
MB_REDTEXT("Teamplay Options", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_COMBOCVAR("Skins", noskins, noskinsoptions, noskinsvalues, "Enable or disable player skin usage. No download will use skins but will not download them from the server."),
MB_EDITCVAR("Enemy Skin", "cl_enemyskin"),
MB_EDITCVAR("Team Skin", "cl_teamskin"),
MB_EDITCVAR("Fake Name", "cl_fakename"),
MB_CHECKBOXCVAR("Parse Fun Chars", cl_parseFunChars, 0),
MB_CHECKBOXCVAR("Parse Macros", cl_parseSay, 0),
MB_CHECKBOXCVAR("Load Locs", tp_loadlocs, 0),
MB_CHECKBOXCVAR("No Blink", cl_noblink, 0),
MB_EDITCVAR("Sound Trigger", "tp_soundtrigger"),
MB_EDITCVAR("Weapon Order", "tp_weapon_order"),
MB_CHECKBOXCVAR("Teamplay Triggers", cl_triggers, 0),
MB_CHECKBOXCVAR("Force Triggers", tp_forceTriggers, 0),
MB_EDITCVARTIP("Enemy Skin", "cl_enemyskin", "Override enemy skin with this."),
MB_EDITCVARTIP("Team Skin", "cl_teamskin", "Override teammate skin with this."),
MB_EDITCVARTIP("Fake Name", "cl_fakename", "Name that appears in teamplay messages"),
MB_CHECKBOXCVARTIP("Parse Fun Chars", cl_parseFunChars, 0, "Whether to parse fun characters"),
MB_CHECKBOXCVARTIP("Parse Macros", cl_parseSay, 0, "Whether to parse teamplay macros like %l etc."),
MB_CHECKBOXCVARTIP("Load Locs", tp_loadlocs, 0, "Whether to load teamplay locations from .loc files"),
MB_CHECKBOXCVARTIP("No Blink", cl_noblink, 0, "No blinking characters"),
MB_EDITCVARTIP("Sound Trigger", "tp_soundtrigger", "Character that indicates the following text is a wav file.\nExample:\nsay_team ~location.wav$\me: I'm at %l #a"),
MB_EDITCVARTIP("Weapon Order", "tp_weapon_order","Weapon preference order:\n8 = Lightning Gun\n7 = Rocket Launcher\n6 = Grenade Launcher\n5 = Super Nailgun\n4 = Nailgun\n3 = Super Shotgun\n2 = Shotgun\n1 = Axe"),
MB_CHECKBOXCVARTIP("Teamplay Triggers", cl_triggers, 0, "Enable or disable teamplay triggers"),
MB_CHECKBOXCVARTIP("Force Triggers", tp_forceTriggers, 0, "Whether to force teamplay triggers in non-teamplay play like in a 1 on 1 situation"),
MB_SPACING(4),
MB_CONSOLECMD("Location Names", "menu_teamplay_locations\n", "Modify team play location settings."),
MB_CONSOLECMD("Item Needs", "menu_teamplay_needs\n", "Modify messages for item needs in team play macros."),
@ -714,23 +714,23 @@ void M_Menu_Teamplay_Locations_f (void)
{
MB_REDTEXT("Teamplay Location Names", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_EDITCVARSLIM("Separator", "loc_name_separator"),
MB_EDITCVARSLIM("Separator", "loc_name_separator", "Location name seperator character(s)"),
MB_SPACING(4),
MB_EDITCVARSLIM("Super Shotgun", "loc_name_ssg"),
MB_EDITCVARSLIM("Nailgun", "loc_name_ng"),
MB_EDITCVARSLIM("Super Nailgun", "loc_name_sng"),
MB_EDITCVARSLIM("Grenade Launcher", "loc_name_gl"),
MB_EDITCVARSLIM("Rocket Launcher", "loc_name_rl"),
MB_EDITCVARSLIM("Lightning Gun", "loc_name_lg"),
MB_EDITCVARSLIM("Super Shotgun", "loc_name_ssg", "Short name for Super Shotgun in teamplay location 'reports'"),
MB_EDITCVARSLIM("Nailgun", "loc_name_ng", "Short name for Nailgun in teamplay location 'reports'"),
MB_EDITCVARSLIM("Super Nailgun", "loc_name_sng", "Short name for Super Nailgun in teamplay location 'reports'"),
MB_EDITCVARSLIM("Grenade Launcher", "loc_name_gl", "Short name for Grenade Launcher in teamplay location 'reports'"),
MB_EDITCVARSLIM("Rocket Launcher", "loc_name_rl", "Short name for Rocket Launcher in teamplay location 'reports'"),
MB_EDITCVARSLIM("Lightning Gun", "loc_name_lg", "Short name for Lightning Gun in teamplay location 'reports'"),
MB_SPACING(4),
MB_EDITCVARSLIM("Quad Damage", "loc_name_quad"),
MB_EDITCVARSLIM("Pentagram", "loc_name_pent"),
MB_EDITCVARSLIM("Ring of Invis", "loc_name_ring"),
MB_EDITCVARSLIM("Suit", "loc_name_suit"),
MB_EDITCVARSLIM("Quad Damage", "loc_name_quad", "Short name for Quad Damage in teamplay location 'reports'"),
MB_EDITCVARSLIM("Pentagram", "loc_name_pent", "Short name for Pentagram of Protection in teamplay location 'reports'"),
MB_EDITCVARSLIM("Ring of Invis", "loc_name_ring", "Short name for Ring of Invisibility in teamplay location 'reports'"),
MB_EDITCVARSLIM("Suit", "loc_name_suit", "Short name for Environment Suit in teamplay location 'reports'"),
MB_SPACING(4),
MB_EDITCVARSLIM("Green Armor", "loc_name_ga"),
MB_EDITCVARSLIM("Yellow Armor", "loc_name_ya"),
MB_EDITCVARSLIM("Red Armor", "loc_name_ra"),
MB_EDITCVARSLIM("Green Armor", "loc_name_ga", "Short name for Green Armor in teamplay location 'reports'"),
MB_EDITCVARSLIM("Yellow Armor", "loc_name_ya", "Short name for Yellow Armor in teamplay location 'reports'" ),
MB_EDITCVARSLIM("Red Armor", "loc_name_ra", "Short name for Red Armor in teamplay location 'reports'"),
// TODO: we probably need an actual back button or some such
//MB_SPACING(4),
//MB_CONSOLECMD("\x7f Teamplay", "menu_teamplay\n", "Return to the teamplay menu."),
@ -748,18 +748,18 @@ void M_Menu_Teamplay_Needs_f (void)
{
MB_REDTEXT("Teamplay Needed Items", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_EDITCVARSLIM("Shells", "tp_need_shells"),
MB_EDITCVARSLIM("Nails", "tp_need_nails"),
MB_EDITCVARSLIM("Rockets", "tp_need_rockets"),
MB_EDITCVARSLIM("Cells", "tp_need_cells"),
MB_EDITCVARSLIM("Rocket Launcher", "tp_need_rl"),
MB_EDITCVARSLIM("Shells", "tp_need_shells", "Short name for Shotgun Shells in teamplay 'need' reports"),
MB_EDITCVARSLIM("Nails", "tp_need_nails", "Short name for Nails in teamplay 'need' reports"),
MB_EDITCVARSLIM("Rockets", "tp_need_rockets", "Short name for Rockets/Grenades in teamplay 'need' reports"),
MB_EDITCVARSLIM("Cells", "tp_need_cells", "Short name for Power Cells in teamplay 'need' reports"),
MB_EDITCVARSLIM("Rocket Launcher", "tp_need_rl", "Short name for Rocket Launcher in teamplay 'need' reports"),
MB_SPACING(4),
MB_EDITCVARSLIM("Green Armor", "tp_need_ga"),
MB_EDITCVARSLIM("Yellow Armor", "tp_need_ya"),
MB_EDITCVARSLIM("Red Armor", "tp_need_ra"),
MB_EDITCVARSLIM("Green Armor", "tp_need_ga", "Short name for Green Armor in teamplay 'need' reports"),
MB_EDITCVARSLIM("Yellow Armor", "tp_need_ya", "Short name for Yellow Armor in teamplay 'need' reports"),
MB_EDITCVARSLIM("Red Armor", "tp_need_ra", "Short name for Red Armor in teamplay 'need' reports"),
MB_SPACING(4),
MB_EDITCVARSLIM("Health", "tp_need_health"),
MB_EDITCVARSLIM("Weapon", "tp_need_weapon"),
MB_EDITCVARSLIM("Health", "tp_need_health", "Short name for Health in teamplay 'need' reports"),
MB_EDITCVARSLIM("Weapon", "tp_need_weapon", "Need weapon preference order:\n8 = Lightning Gun\n7 = Rocket Launcher\n6 = Grenade Launcher\n5 = Super Nailgun\n4 = Nailgun\n3 = Super Shotgun\n2 = Shotgun\n1 = Axe"),
MB_END()
};
menu = M_Options_Title(&y, 0);
@ -794,14 +794,14 @@ void M_Menu_Teamplay_Items_Armor_f (void)
{
MB_REDTEXT("Teamplay Armor Names", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_EDITCVARSLIM("Armor", "tp_name_armor"),
MB_EDITCVARSLIM("Green Type -", "tp_name_armortype_ga"),
MB_EDITCVARSLIM("Yellow Type -", "tp_name_armortype_ya"),
MB_EDITCVARSLIM("Red Type -", "tp_name_armortype_ra"),
MB_EDITCVARSLIM("Armor", "tp_name_armor", "Short name for Armor type"),
MB_EDITCVARSLIM("Green Type -", "tp_name_armortype_ga", "Short name for Green Armor type"),
MB_EDITCVARSLIM("Yellow Type -", "tp_name_armortype_ya", "Short name for Yellow Armor type"),
MB_EDITCVARSLIM("Red Type -", "tp_name_armortype_ra", "Short name for Red Armor type"),
MB_SPACING(4),
MB_EDITCVARSLIM("Green Armor", "tp_name_ga"),
MB_EDITCVARSLIM("Yellow Armor", "tp_name_ya"),
MB_EDITCVARSLIM("Red Armor", "tp_name_ra"),
MB_EDITCVARSLIM("Green Armor", "tp_name_ga", "Short name for Green Armor"),
MB_EDITCVARSLIM("Yellow Armor", "tp_name_ya", "Short name for Yellow Armor"),
MB_EDITCVARSLIM("Red Armor", "tp_name_ra", "Short name for Red Armor"),
MB_END()
};
menu = M_Options_Title(&y, 0);
@ -816,16 +816,16 @@ void M_Menu_Teamplay_Items_Weapons_f (void)
{
MB_REDTEXT("Teamplay Weapon Names", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_EDITCVARSLIM("Weapon", "tp_name_weapon"),
MB_EDITCVARSLIM("Weapon", "tp_name_weapon", "Short name for Weapon"),
MB_SPACING(4),
MB_EDITCVARSLIM("Axe", "tp_name_axe"),
MB_EDITCVARSLIM("Shotgun", "tp_name_sg"),
MB_EDITCVARSLIM("Super Shotgun", "tp_name_ssg"),
MB_EDITCVARSLIM("Nailgun", "tp_name_ng"),
MB_EDITCVARSLIM("Super Nailgun", "tp_name_sng"),
MB_EDITCVARSLIM("Grenade Launcher", "tp_name_gl"),
MB_EDITCVARSLIM("Rocket Launcher", "tp_name_rl"),
MB_EDITCVARSLIM("Lightning Gun", "tp_name_lg"),
MB_EDITCVARSLIM("Axe", "tp_name_axe", "Short name for Weapon"),
MB_EDITCVARSLIM("Shotgun", "tp_name_sg", "Short name for Shotgun"),
MB_EDITCVARSLIM("Super Shotgun", "tp_name_ssg", "Short name for Super Shotgun"),
MB_EDITCVARSLIM("Nailgun", "tp_name_ng", "Short name for Nailgun"),
MB_EDITCVARSLIM("Super Nailgun", "tp_name_sng", "Short name for Super Nailgun"),
MB_EDITCVARSLIM("Grenade Launcher", "tp_name_gl", "Short name for Grenade Launcher"),
MB_EDITCVARSLIM("Rocket Launcher", "tp_name_rl", "Short name for Rocket Launcher"),
MB_EDITCVARSLIM("Lightning Gun", "tp_name_lg", "Short name for Lightning Gun"),
MB_END()
};
menu = M_Options_Title(&y, 0);
@ -840,19 +840,19 @@ void M_Menu_Teamplay_Items_Powerups_f (void)
{
MB_REDTEXT("Teamplay Powerup Names", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_EDITCVARSLIM("Quad Damage", "tp_name_quad"),
MB_EDITCVARSLIM("Pentagram", "tp_name_pent"),
MB_EDITCVARSLIM("Ring of Invis", "tp_name_ring"),
MB_EDITCVARSLIM("Suit", "tp_name_suit"),
MB_EDITCVARSLIM("Quad Damage", "tp_name_quad", "Short name for Quad Damage"),
MB_EDITCVARSLIM("Pentagram", "tp_name_pent", "Short name for Pentgram of Protection"),
MB_EDITCVARSLIM("Ring of Invis", "tp_name_ring", "Short name for Ring Of Invisibilty"),
MB_EDITCVARSLIM("Suit", "tp_name_suit", "Short name for Environment Suit"),
MB_SPACING(4),
MB_EDITCVARSLIM("Quaded", "tp_name_quaded"),
MB_EDITCVARSLIM("Pented", "tp_name_pented"),
MB_EDITCVARSLIM("Eyes (Ringed)", "tp_name_eyes"),
MB_EDITCVARSLIM("Quaded", "tp_name_quaded", "Short name for reporting being 'Quaded'. Dying by another player who has Quad Damage"),
MB_EDITCVARSLIM("Pented", "tp_name_pented", "Short name for reporting being 'Pented'. Dying by another player who has the Pentagram"),
MB_EDITCVARSLIM("Eyes (Ringed)", "tp_name_eyes", "Short name for reporting being 'Ringed', Dying by another player who has Eyes (Invisibility)"),
MB_SPACING(4),
MB_EDITCVARSLIM("Resistance Rune", "tp_name_rune_1"),
MB_EDITCVARSLIM("Strength Rune", "tp_name_rune_2"),
MB_EDITCVARSLIM("Haste Rune", "tp_name_rune_3"),
MB_EDITCVARSLIM("Regen Rune", "tp_name_rune_4"),
MB_EDITCVARSLIM("Resistance Rune", "tp_name_rune_1", "Short name for Resistance Rune"),
MB_EDITCVARSLIM("Strength Rune", "tp_name_rune_2", "Short name for Strength Rune"),
MB_EDITCVARSLIM("Haste Rune", "tp_name_rune_3", "Short name for Haste Rune"),
MB_EDITCVARSLIM("Regen Rune", "tp_name_rune_4", "Short name for Regeneration Rune"),
MB_END()
};
menu = M_Options_Title(&y, 0);
@ -863,18 +863,18 @@ void M_Menu_Teamplay_Items_Ammo_Health_f (void)
{
menu_t *menu;
int y;
menubulk_t bulk[] =
menubulk_t bulk[] =
{
MB_REDTEXT("Teamplay Ammo/Health", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_EDITCVARSLIM("Shells", "tp_name_shells"),
MB_EDITCVARSLIM("Nails", "tp_name_nails"),
MB_EDITCVARSLIM("Rockets", "tp_name_rockets"),
MB_EDITCVARSLIM("Cells", "tp_name_cells"),
MB_EDITCVARSLIM("Shells", "tp_name_shells", "Short name for Shells"),
MB_EDITCVARSLIM("Nails", "tp_name_nails", "Short name for Nails"),
MB_EDITCVARSLIM("Rockets", "tp_name_rockets", "Short name for Rockets"),
MB_EDITCVARSLIM("Cells", "tp_name_cells", "Short name for Cells"),
MB_SPACING(4),
MB_EDITCVARSLIM("Backpack", "tp_name_backpack"),
MB_EDITCVARSLIM("Health", "tp_name_health"),
MB_EDITCVARSLIM("Mega Health", "tp_name_mh"),
MB_EDITCVARSLIM("Backpack", "tp_name_backpack", "Short name for Backpack"),
MB_EDITCVARSLIM("Health", "tp_name_health", "Short name for Health"),
MB_EDITCVARSLIM("Mega Health", "tp_name_mh", "Short name for Mega Health"),
MB_END()
};
menu = M_Options_Title(&y, 0);
@ -889,9 +889,9 @@ void M_Menu_Teamplay_Items_Team_Fortress_f (void)
{
MB_REDTEXT("Teamplay Team Fortress", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_EDITCVARSLIM("Sentry Gun", "tp_name_sentry"),
MB_EDITCVARSLIM("Dispenser", "tp_name_disp"),
MB_EDITCVARSLIM("Flag", "tp_name_flag"),
MB_EDITCVARSLIM("Sentry Gun", "tp_name_sentry", "Short name for the Engineer's Sentry Gun"),
MB_EDITCVARSLIM("Dispenser", "tp_name_disp", "Short name for the Engineer's Ammo Dispenser"),
MB_EDITCVARSLIM("Flag", "tp_name_flag", "Short name for Flag"),
MB_END()
};
menu = M_Options_Title(&y, 0);
@ -906,19 +906,19 @@ void M_Menu_Teamplay_Items_Status_Location_Misc_f (void)
{
MB_REDTEXT("Teamplay Misc", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_EDITCVARSLIM("Enemy", "tp_name_enemy"),
MB_EDITCVARSLIM("Teammate", "tp_name_teammate"),
MB_EDITCVARSLIM("Enemy", "tp_name_enemy", "Short for Enemy in teamplay 'status' & 'location' reports"),
MB_EDITCVARSLIM("Teammate", "tp_name_teammate", "Short for Enemy in teamplay 'status' & 'location' reports"),
MB_SPACING(4),
MB_EDITCVARSLIM("At (Location)", "tp_name_at"),
MB_EDITCVARSLIM("None", "tp_name_none"),
MB_EDITCVARSLIM("Nothing", "tp_name_nothing"),
MB_EDITCVARSLIM("Separator", "tp_name_separator"),
MB_EDITCVARSLIM("Some place", "tp_name_someplace"),
MB_EDITCVARSLIM("At (Location)", "tp_name_at", "Short for @ (Location) in teamplay 'status' & 'location' reports"),
MB_EDITCVARSLIM("None", "tp_name_none", "Short for None in teamplay 'status' & 'location' reports"),
MB_EDITCVARSLIM("Nothing", "tp_name_nothing", "Short for Nothing in teamplay 'status' & 'location' reports"),
MB_EDITCVARSLIM("Separator", "tp_name_separator", "Seperator character(s) in teamplay 'status' & 'location' reports"),
MB_EDITCVARSLIM("Some place", "tp_name_someplace", "Short for Someplace in teamplay 'status' & 'location' reports"),
MB_SPACING(4),
MB_EDITCVARSLIM("Red Status", "tp_name_status_red"),
MB_EDITCVARSLIM("Green Status", "tp_name_status_green"),
MB_EDITCVARSLIM("Blue Status", "tp_name_status_blue"),
MB_EDITCVARSLIM("Yellow Status", "tp_name_status_yellow"),
MB_EDITCVARSLIM("Red Status", "tp_name_status_red", "Macro for Status Red in teamplay 'status' & 'location' reports"),
MB_EDITCVARSLIM("Green Status", "tp_name_status_green", "Macro for Status Green in teamplay 'status' & 'location' reports"),
MB_EDITCVARSLIM("Blue Status", "tp_name_status_blue", "Macro for Status Blue in teamplay 'status' & 'location' reports"),
MB_EDITCVARSLIM("Yellow Status", "tp_name_status_yellow", "Macro for Status Yellow in teamplay 'status' & 'location' reports"),
MB_END()
};
menu = M_Options_Title(&y, 0);
@ -943,16 +943,16 @@ void M_Menu_Network_f (void)
{
MB_REDTEXT("Network Settings", false),
MB_TEXT("\x80\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x82", false),
MB_EDITCVARSLIM("Network FPS", "cl_netfps"),
MB_EDITCVARSLIM("Rate", "rate"),
MB_EDITCVARSLIM("Download Rate", "drate"),
MB_EDITCVARSLIM("Network FPS", "cl_netfps", "Sets ammount of FPS used to communicate with server (sent and received)"),
MB_EDITCVARSLIM("Rate", "rate", "Maximum bytes per second that the server should send to the client"),
MB_EDITCVARSLIM("Download Rate", "drate", "Maximum bytes per second that the server should send maps and demos to the client"),
MB_SPACING(4),
MB_CHECKBOXCVAR("Require Download", requiredownloads, 0),
MB_CHECKBOXCVAR("Redirect Download", allow_download_redirection, 0),
MB_CHECKBOXCVAR("Download CSQC", allow_download_redirection, 0),
MB_CHECKBOXCVARTIP("Require Download", requiredownloads, 0, "Ignore downloaded content sent to the client and connect immediatly"),
MB_CHECKBOXCVARTIP("Redirect Download", allow_download_redirection, 0, "Whether the client will ignore download redirection from servers"),
MB_CHECKBOXCVARTIP("Download CSQC", allow_download_csprogs, 0, "Whether to allow the client to download CSQC (client-side QuakeC) progs from servers"),
MB_SPACING(4),
MB_CHECKBOXCVAR("Predict Players", cl_predict_players, 0),
MB_CHECKBOXCVAR("Solid Players", cl_solid_players, 0),
MB_CHECKBOXCVARTIP("Predict Players", cl_predict_players, 0, "Toggle player prediction"),
MB_CHECKBOXCVARTIP("Solid Players", cl_solid_players, 0, "When running/clipping into other players, ON make it appear they are solid, OFF will make it appear like running into a marshmellon."),
MB_COMBOCVAR("Split-screen", cl_splitscreen, splitopts, splitvalues, "Enables split screen with a number of clients. This feature requires server support."),
MB_END()
};

View File

@ -8,7 +8,7 @@ of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
@ -40,7 +40,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//If you're creating your own quake menu, there should be little need to go in there.
//These are the item types:
//mt_childwindow -
//mt_childwindow -
//mt_button - Executes a console command or callback on enter. Uses conchars.
//mt_buttonbigfont - Used by hexen2's menus. Uses gfx/menu/bigfont.lmp as it's characters.
//mt_box - A 2d box. The same one as the quit dialog from q1, but resized.
@ -119,21 +119,21 @@ typedef enum {m_none, m_complex, m_help, m_slist, m_media, m_plugin, m_menu_dat}
extern m_state_t m_state;
typedef enum {
mt_childwindow,
mt_button,
mt_childwindow,
mt_button,
mt_qbuttonbigfont,
mt_hexen2buttonbigfont,
mt_box,
mt_colouredbox,
mt_line,
mt_edit,
mt_text,
mt_text,
mt_slider,
mt_combo,
mt_bind,
mt_combo,
mt_bind,
mt_checkbox,
mt_picture,
mt_picturesel,
mt_picture,
mt_picturesel,
mt_menudot,
mt_custom
} menutype_t;
@ -274,7 +274,7 @@ typedef struct menu_s {
menutooltip_t *tooltip;
double tooltiptime;
struct menu_s *child;
struct menu_s *parent;
@ -330,22 +330,24 @@ typedef struct menubulk_s {
int spacing; // spacing
} menubulk_t;
#define MB_CONSOLECMD(text, cmd, tip) {mt_button, 0, text, tip, cmd}
#define MB_CHECKBOXCVAR(text, cvar, flags) {mt_checkbox, 0, text, NULL, NULL, &cvar, flags}
#define MB_CHECKBOXCVARRETURN(text, cvar, flags, ret) {mt_checkbox, 0, text, NULL, NULL, &cvar, flags, NULL, 0, 0, 0, false, NULL, NULL, NULL, NULL, 0, (union menuoption_s **)&ret}
#define MB_CHECKBOXFUNC(text, func, flags, tip) {mt_checkbox, 0, text, tip, NULL, NULL, flags, func}
#define MB_SLIDER(text, cvar, min, max, delta, tip) {mt_slider, 0, text, tip, NULL, &cvar, 0, NULL, min, max, delta}
#define MB_TEXT(text, align) {mt_text, 0, text, NULL, NULL, NULL, 0, NULL, 0, 0, 0, align}
#define MB_REDTEXT(text, align) {mt_text, 1, text, NULL, NULL, NULL, 0, NULL, 0, 0, 0, align}
#define MB_CMD(text, cmdfunc, tip) {mt_button, 1, text, tip, NULL, NULL, 0, NULL, 0, 0, 0, false, cmdfunc}
#define MB_EDITCVAR(text, cvarname) {mt_edit, 0, text, NULL, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, cvarname}
#define MB_EDITCVARSLIM(text, cvarname) {mt_edit, 1, text, NULL, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, cvarname}
#define MB_EDITCVARSLIMRETURN(text, cvarname, ret) {mt_edit, 1, text, NULL, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, cvarname, NULL, NULL, 0, (union menuoption_s **)&ret}
#define MB_COMBOCVAR(text, cvar, options, values, tip) {mt_combo, 0, text, tip, NULL, &cvar, 0, NULL, 0, 0, 0, false, NULL, NULL, options, values}
#define MB_COMBORETURN(text, options, selected, ret, tip) {mt_combo, 1, text, tip, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, NULL, options, NULL, selected, (union menuoption_s **)&ret}
#define MB_COMBOCVARRETURN(text, cvar, options, values, ret, tip) {mt_combo, 0, text, tip, NULL, &cvar, 0, NULL, 0, 0, 0, false, NULL, NULL, options, values, 0, (union menuoption_s **)&ret}
#define MB_SPACING(space) {mt_text, 2, NULL, NULL, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, NULL, NULL, NULL, 0, NULL, space}
#define MB_END() {mt_text, -1}
#define MB_CONSOLECMD(text, cmd, tip) {mt_button, 0, text, tip, cmd}
#define MB_CHECKBOXCVAR(text, cvar, flags) {mt_checkbox, 0, text, NULL, NULL, &cvar, flags}
#define MB_CHECKBOXCVARTIP(text, cvar, flags, tip) {mt_checkbox, 0, text, tip, NULL, &cvar, flags}
#define MB_CHECKBOXCVARRETURN(text, cvar, flags, ret) {mt_checkbox, 0, text, NULL, NULL, &cvar, flags, NULL, 0, 0, 0, false, NULL, NULL, NULL, NULL, 0, (union menuoption_s **)&ret}
#define MB_CHECKBOXFUNC(text, func, flags, tip) {mt_checkbox, 0, text, tip, NULL, NULL, flags, func}
#define MB_SLIDER(text, cvar, min, max, delta, tip) {mt_slider, 0, text, tip, NULL, &cvar, 0, NULL, min, max, delta}
#define MB_TEXT(text, align) {mt_text, 0, text, NULL, NULL, NULL, 0, NULL, 0, 0, 0, align}
#define MB_REDTEXT(text, align) {mt_text, 1, text, NULL, NULL, NULL, 0, NULL, 0, 0, 0, align}
#define MB_CMD(text, cmdfunc, tip) {mt_button, 1, text, tip, NULL, NULL, 0, NULL, 0, 0, 0, false, cmdfunc}
#define MB_EDITCVARTIP(text, cvarname, tip) {mt_edit, 0, text, tip, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, cvarname}
#define MB_EDITCVAR(text, cvarname, tip) {mt_edit, 0, text, NULL, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, cvarname}
#define MB_EDITCVARSLIM(text, cvarname, tip) {mt_edit, 1, text, tip, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, cvarname}
#define MB_EDITCVARSLIMRETURN(text, cvarname, ret) {mt_edit, 1, text, NULL, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, cvarname, NULL, NULL, 0, (union menuoption_s **)&ret}
#define MB_COMBOCVAR(text, cvar, options, values, tip) {mt_combo, 0, text, tip, NULL, &cvar, 0, NULL, 0, 0, 0, false, NULL, NULL, options, values}
#define MB_COMBORETURN(text, options, selected, ret, tip) {mt_combo, 1, text, tip, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, NULL, options, NULL, selected, (union menuoption_s **)&ret}
#define MB_COMBOCVARRETURN(text, cvar, options, values, ret, tip) {mt_combo, 0, text, tip, NULL, &cvar, 0, NULL, 0, 0, 0, false, NULL, NULL, options, values, 0, (union menuoption_s **)&ret}
#define MB_SPACING(space) {mt_text, 2, NULL, NULL, NULL, NULL, 0, NULL, 0, 0, 0, false, NULL, NULL, NULL, NULL, 0, NULL, space}
#define MB_END() {mt_text, -1}
int MC_AddBulk(struct menu_s *menu, menubulk_t *bulk, int xstart, int xtextend, int y);