Add missing fields in extcmdlist[] in cmd.c

This eliminates a compiler initializer warning.
This commit is contained in:
Dean Luick
2021-01-29 09:58:16 -06:00
parent 2f4f7d22d3
commit 3da8dca836

232
src/cmd.c
View File

@@ -1794,215 +1794,215 @@ doterrain(void)
/* ordered by command name */
struct ext_func_tab extcmdlist[] = {
{ '#', "#", "perform an extended command",
doextcmd, IFBURIED | GENERALCMD },
doextcmd, IFBURIED | GENERALCMD, NULL },
{ M('?'), "?", "list all extended commands",
doextlist, IFBURIED | AUTOCOMPLETE | GENERALCMD },
doextlist, IFBURIED | AUTOCOMPLETE | GENERALCMD, NULL },
{ M('a'), "adjust", "adjust inventory letters",
doorganize, IFBURIED | AUTOCOMPLETE },
doorganize, IFBURIED | AUTOCOMPLETE, NULL },
{ M('A'), "annotate", "name current level",
donamelevel, IFBURIED | AUTOCOMPLETE },
donamelevel, IFBURIED | AUTOCOMPLETE, NULL },
{ 'a', "apply", "apply (use) a tool (pick-axe, key, lamp...)",
doapply },
doapply, 0, NULL },
{ C('x'), "attributes", "show your attributes",
doattributes, IFBURIED },
doattributes, IFBURIED, NULL },
{ '@', "autopickup", "toggle the 'autopickup' option on/off",
dotogglepickup, IFBURIED },
dotogglepickup, IFBURIED, NULL },
{ 'C', "call", "name a monster, a specific object, or a type of object",
docallcmd, IFBURIED },
{ 'Z', "cast", "zap (cast) a spell", docast, IFBURIED },
{ M('c'), "chat", "talk to someone", dotalk, IFBURIED | AUTOCOMPLETE },
{ 'c', "close", "close a door", doclose },
docallcmd, IFBURIED, NULL },
{ 'Z', "cast", "zap (cast) a spell", docast, IFBURIED, NULL },
{ M('c'), "chat", "talk to someone", dotalk, IFBURIED | AUTOCOMPLETE, NULL },
{ 'c', "close", "close a door", doclose, 0, NULL },
{ M('C'), "conduct", "list voluntary challenges you have maintained",
doconduct, IFBURIED | AUTOCOMPLETE },
{ M('d'), "dip", "dip an object into something", dodip, AUTOCOMPLETE },
{ '>', "down", "go down a staircase", dodown },
{ 'd', "drop", "drop an item", dodrop },
{ 'D', "droptype", "drop specific item types", doddrop },
{ 'e', "eat", "eat something", doeat },
{ 'E', "engrave", "engrave writing on the floor", doengrave },
doconduct, IFBURIED | AUTOCOMPLETE, NULL },
{ M('d'), "dip", "dip an object into something", dodip, AUTOCOMPLETE, NULL },
{ '>', "down", "go down a staircase", dodown, 0, NULL },
{ 'd', "drop", "drop an item", dodrop, 0, NULL },
{ 'D', "droptype", "drop specific item types", doddrop, 0, NULL },
{ 'e', "eat", "eat something", doeat, 0, NULL },
{ 'E', "engrave", "engrave writing on the floor", doengrave, 0, NULL },
{ M('e'), "enhance", "advance or check weapon and spell skills",
enhance_weapon_skill, IFBURIED | AUTOCOMPLETE },
enhance_weapon_skill, IFBURIED | AUTOCOMPLETE, NULL },
{ M('X'), "exploremode", "enter explore (discovery) mode",
enter_explore_mode, IFBURIED | GENERALCMD },
{ 'f', "fire", "fire ammunition from quiver", dofire },
{ M('f'), "force", "force a lock", doforce, AUTOCOMPLETE },
enter_explore_mode, IFBURIED | GENERALCMD, NULL },
{ 'f', "fire", "fire ammunition from quiver", dofire, 0, NULL },
{ M('f'), "force", "force a lock", doforce, AUTOCOMPLETE, NULL },
{ ';', "glance", "show what type of thing a map symbol corresponds to",
doquickwhatis, IFBURIED | GENERALCMD },
{ '?', "help", "give a help message", dohelp, IFBURIED | GENERALCMD },
doquickwhatis, IFBURIED | GENERALCMD, NULL },
{ '?', "help", "give a help message", dohelp, IFBURIED | GENERALCMD, NULL },
{ '\0', "herecmdmenu", "show menu of commands you can do here",
doherecmdmenu, IFBURIED | AUTOCOMPLETE | GENERALCMD },
doherecmdmenu, IFBURIED | AUTOCOMPLETE | GENERALCMD, NULL },
{ 'V', "history", "show long version and game history",
dohistory, IFBURIED | GENERALCMD },
{ 'i', "inventory", "show your inventory", ddoinv, IFBURIED },
dohistory, IFBURIED | GENERALCMD, NULL },
{ 'i', "inventory", "show your inventory", ddoinv, IFBURIED, NULL },
{ 'I', "inventtype", "show inventory of one specific item class",
dotypeinv, IFBURIED },
dotypeinv, IFBURIED, NULL },
{ M('i'), "invoke", "invoke an object's special powers",
doinvoke, IFBURIED | AUTOCOMPLETE },
{ M('j'), "jump", "jump to another location", dojump, AUTOCOMPLETE },
{ C('d'), "kick", "kick something", dokick },
doinvoke, IFBURIED | AUTOCOMPLETE, NULL },
{ M('j'), "jump", "jump to another location", dojump, AUTOCOMPLETE, NULL },
{ C('d'), "kick", "kick something", dokick, 0, NULL },
{ '\\', "known", "show what object types have been discovered",
dodiscovered, IFBURIED | GENERALCMD },
dodiscovered, IFBURIED | GENERALCMD, NULL },
{ '`', "knownclass", "show discovered types for one class of objects",
doclassdisco, IFBURIED | GENERALCMD },
doclassdisco, IFBURIED | GENERALCMD, NULL },
{ '\0', "levelchange", "change experience level",
wiz_level_change, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_level_change, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "lightsources", "show mobile light sources",
wiz_light_sources, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_light_sources, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "wizmgender", "force added info about monster gender",
wiz_mgender, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
{ ':', "look", "look at what is here", dolook, IFBURIED },
{ M('l'), "loot", "loot a box on the floor", doloot, AUTOCOMPLETE },
wiz_mgender, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ ':', "look", "look at what is here", dolook, IFBURIED, NULL },
{ M('l'), "loot", "loot a box on the floor", doloot, AUTOCOMPLETE, NULL },
#ifdef DEBUG_MIGRATING_MONS
{ '\0', "migratemons", "migrate N random monsters",
wiz_migrate_mons, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_migrate_mons, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
#endif
{ M('m'), "monster", "use monster's special ability",
domonability, IFBURIED | AUTOCOMPLETE },
domonability, IFBURIED | AUTOCOMPLETE, NULL },
{ 'N', "name", "same as call; name a monster or object or object type",
docallcmd, IFBURIED | AUTOCOMPLETE },
docallcmd, IFBURIED | AUTOCOMPLETE, NULL },
{ M('o'), "offer", "offer a sacrifice to the gods",
dosacrifice, AUTOCOMPLETE },
{ 'o', "open", "open a door", doopen },
dosacrifice, AUTOCOMPLETE, NULL },
{ 'o', "open", "open a door", doopen, 0, NULL },
{ 'O', "options", "show option settings, possibly change them",
doset, IFBURIED | GENERALCMD },
doset, IFBURIED | GENERALCMD, NULL },
{ C('o'), "overview", "show a summary of the explored dungeon",
dooverview, IFBURIED | AUTOCOMPLETE },
dooverview, IFBURIED | AUTOCOMPLETE, NULL },
{ '\0', "panic", "test panic routine (fatal to game)",
wiz_panic, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
{ 'p', "pay", "pay your shopping bill", dopay },
{ ',', "pickup", "pick up things at the current location", dopickup },
wiz_panic, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ 'p', "pay", "pay your shopping bill", dopay, 0, NULL },
{ ',', "pickup", "pick up things at the current location", dopickup, 0, NULL },
{ '\0', "polyself", "polymorph self",
wiz_polyself, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_polyself, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ M('p'), "pray", "pray to the gods for help",
dopray, IFBURIED | AUTOCOMPLETE },
dopray, IFBURIED | AUTOCOMPLETE, NULL },
{ C('p'), "prevmsg", "view recent game messages",
doprev_message, IFBURIED | GENERALCMD },
{ 'P', "puton", "put on an accessory (ring, amulet, etc)", doputon },
{ 'q', "quaff", "quaff (drink) something", dodrink },
doprev_message, IFBURIED | GENERALCMD, NULL },
{ 'P', "puton", "put on an accessory (ring, amulet, etc)", doputon, 0, NULL },
{ 'q', "quaff", "quaff (drink) something", dodrink, 0, NULL },
{ M('q'), "quit", "exit without saving current game",
done2, IFBURIED | AUTOCOMPLETE | GENERALCMD },
{ 'Q', "quiver", "select ammunition for quiver", dowieldquiver },
{ 'r', "read", "read a scroll or spellbook", doread },
{ C('r'), "redraw", "redraw screen", doredraw, IFBURIED | GENERALCMD },
{ 'R', "remove", "remove an accessory (ring, amulet, etc)", doremring },
done2, IFBURIED | AUTOCOMPLETE | GENERALCMD, NULL },
{ 'Q', "quiver", "select ammunition for quiver", dowieldquiver, 0, NULL },
{ 'r', "read", "read a scroll or spellbook", doread, 0, NULL },
{ C('r'), "redraw", "redraw screen", doredraw, IFBURIED | GENERALCMD, NULL },
{ 'R', "remove", "remove an accessory (ring, amulet, etc)", doremring, 0, NULL },
{ M('R'), "ride", "mount or dismount a saddled steed",
doride, AUTOCOMPLETE },
{ M('r'), "rub", "rub a lamp or a stone", dorub, AUTOCOMPLETE },
{ 'S', "save", "save the game and exit", dosave, IFBURIED | GENERALCMD },
doride, AUTOCOMPLETE, NULL },
{ M('r'), "rub", "rub a lamp or a stone", dorub, AUTOCOMPLETE, NULL },
{ 'S', "save", "save the game and exit", dosave, IFBURIED | GENERALCMD, NULL },
{ 's', "search", "search for traps and secret doors",
dosearch, IFBURIED, "searching" },
{ '*', "seeall", "show all equipment in use", doprinuse, IFBURIED },
{ '*', "seeall", "show all equipment in use", doprinuse, IFBURIED, NULL },
{ AMULET_SYM, "seeamulet", "show the amulet currently worn",
dopramulet, IFBURIED },
dopramulet, IFBURIED, NULL },
{ ARMOR_SYM, "seearmor", "show the armor currently worn",
doprarm, IFBURIED },
doprarm, IFBURIED, NULL },
{ RING_SYM, "seerings", "show the ring(s) currently worn",
doprring, IFBURIED },
doprring, IFBURIED, NULL },
{ TOOL_SYM, "seetools", "show the tools currently in use",
doprtool, IFBURIED },
doprtool, IFBURIED, NULL },
{ WEAPON_SYM, "seeweapon", "show the weapon currently wielded",
doprwep, IFBURIED },
doprwep, IFBURIED, NULL },
{ '!', "shell", "leave game to enter a sub-shell ('exit' to come back)",
dosh_core, IFBURIED | GENERALCMD
#ifndef SHELL
| CMD_NOT_AVAILABLE
#endif /* SHELL */
},
, NULL },
/* $ is like ),=,&c but is not included with *, so not called "seegold" */
{ GOLD_SYM, "showgold", "show gold, possibly shop credit or debt",
doprgold, IFBURIED },
doprgold, IFBURIED, NULL },
{ SPBOOK_SYM, "showspells", "list and reorder known spells",
dovspell, IFBURIED },
dovspell, IFBURIED, NULL },
{ '^', "showtrap", "describe an adjacent, discovered trap",
doidtrap, IFBURIED },
{ M('s'), "sit", "sit down", dosit, AUTOCOMPLETE },
doidtrap, IFBURIED, NULL },
{ M('s'), "sit", "sit down", dosit, AUTOCOMPLETE, NULL },
{ '\0', "stats", "show memory statistics",
wiz_show_stats, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_show_stats, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ C('z'), "suspend", "push game to background ('fg' to come back)",
dosuspend_core, IFBURIED | GENERALCMD
#ifndef SUSPEND
| CMD_NOT_AVAILABLE
#endif /* SUSPEND */
},
{ 'x', "swap", "swap wielded and secondary weapons", doswapweapon },
{ 'T', "takeoff", "take off one piece of armor", dotakeoff },
{ 'A', "takeoffall", "remove all armor", doddoremarm },
{ C('t'), "teleport", "teleport around the level", dotelecmd, IFBURIED },
, NULL },
{ 'x', "swap", "swap wielded and secondary weapons", doswapweapon, 0, NULL },
{ 'T', "takeoff", "take off one piece of armor", dotakeoff, 0, NULL },
{ 'A', "takeoffall", "remove all armor", doddoremarm, 0, NULL },
{ C('t'), "teleport", "teleport around the level", dotelecmd, IFBURIED, NULL },
/* \177 == <del> aka <delete> aka <rubout>; some terminals have an
option to swap it with <backspace> so if there's a key labeled
<delete> it may or may not actually invoke the #terrain command */
{ '\177', "terrain",
"view map without monsters or objects obstructing it",
doterrain, IFBURIED | AUTOCOMPLETE },
doterrain, IFBURIED | AUTOCOMPLETE, NULL },
{ '\0', "therecmdmenu",
"menu of commands you can do from here to adjacent spot",
dotherecmdmenu, AUTOCOMPLETE | GENERALCMD },
{ 't', "throw", "throw something", dothrow },
dotherecmdmenu, AUTOCOMPLETE | GENERALCMD, NULL },
{ 't', "throw", "throw something", dothrow, 0, NULL },
{ '\0', "timeout", "look at timeout queue and hero's timed intrinsics",
wiz_timeout_queue, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
{ M('T'), "tip", "empty a container", dotip, AUTOCOMPLETE },
{ '_', "travel", "travel to a specific location on the map", dotravel },
{ M('t'), "turn", "turn undead away", doturn, IFBURIED | AUTOCOMPLETE },
wiz_timeout_queue, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ M('T'), "tip", "empty a container", dotip, AUTOCOMPLETE, NULL },
{ '_', "travel", "travel to a specific location on the map", dotravel, 0, NULL },
{ M('t'), "turn", "turn undead away", doturn, IFBURIED | AUTOCOMPLETE, NULL },
{ 'X', "twoweapon", "toggle two-weapon combat",
dotwoweapon, AUTOCOMPLETE },
{ M('u'), "untrap", "untrap something", dountrap, AUTOCOMPLETE },
{ '<', "up", "go up a staircase", doup },
dotwoweapon, AUTOCOMPLETE, NULL },
{ M('u'), "untrap", "untrap something", dountrap, AUTOCOMPLETE, NULL },
{ '<', "up", "go up a staircase", doup, 0, NULL },
{ '\0', "vanquished", "list vanquished monsters",
dovanquished, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
dovanquished, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ M('v'), "version",
"list compile time options for this version of NetHack",
doextversion, IFBURIED | AUTOCOMPLETE | GENERALCMD },
doextversion, IFBURIED | AUTOCOMPLETE | GENERALCMD, NULL },
{ 'v', "versionshort", "show version and date+time program was built",
doversion, IFBURIED | GENERALCMD },
doversion, IFBURIED | GENERALCMD, NULL },
{ '\0', "vision", "show vision array",
wiz_show_vision, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_show_vision, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '.', "wait", "rest one move while doing nothing",
donull, IFBURIED, "waiting" },
{ 'W', "wear", "wear a piece of armor", dowear },
{ '&', "whatdoes", "tell what a command does", dowhatdoes, IFBURIED },
{ 'W', "wear", "wear a piece of armor", dowear, 0, NULL },
{ '&', "whatdoes", "tell what a command does", dowhatdoes, IFBURIED, NULL },
{ '/', "whatis", "show what type of thing a symbol corresponds to",
dowhatis, IFBURIED | GENERALCMD },
{ 'w', "wield", "wield (put in use) a weapon", dowield },
{ M('w'), "wipe", "wipe off your face", dowipe, AUTOCOMPLETE },
dowhatis, IFBURIED | GENERALCMD, NULL },
{ 'w', "wield", "wield (put in use) a weapon", dowield, 0, NULL },
{ M('w'), "wipe", "wipe off your face", dowipe, AUTOCOMPLETE, NULL },
{ '\0', "wizborn", "show stats of monsters created",
doborn, IFBURIED | WIZMODECMD },
doborn, IFBURIED | WIZMODECMD, NULL },
#ifdef DEBUG
{ '\0', "wizbury", "bury objs under and around you",
wiz_debug_cmd_bury, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_debug_cmd_bury, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
#endif
{ C('e'), "wizdetect", "reveal hidden things within a small radius",
wiz_detect, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_detect, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "wizfliplevel", "flip the level",
wiz_flip_level, IFBURIED | WIZMODECMD },
wiz_flip_level, IFBURIED | WIZMODECMD, NULL },
{ C('g'), "wizgenesis", "create a monster",
wiz_genesis, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_genesis, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ C('i'), "wizidentify", "identify all items in inventory",
wiz_identify, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_identify, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "wizintrinsic", "set an intrinsic",
wiz_intrinsic, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_intrinsic, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ C('v'), "wizlevelport", "teleport to another level",
wiz_level_tele, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_level_tele, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "wizloaddes", "load and execute a des-file lua script",
wiz_load_splua, IFBURIED | WIZMODECMD },
wiz_load_splua, IFBURIED | WIZMODECMD, NULL },
{ '\0', "wizloadlua", "load and execute a lua script",
wiz_load_lua, IFBURIED | WIZMODECMD },
wiz_load_lua, IFBURIED | WIZMODECMD, NULL },
{ '\0', "wizmakemap", "recreate the current level",
wiz_makemap, IFBURIED | WIZMODECMD },
wiz_makemap, IFBURIED | WIZMODECMD, NULL },
{ C('f'), "wizmap", "map the level",
wiz_map, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_map, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "wizrumorcheck", "verify rumor boundaries",
wiz_rumor_check, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_rumor_check, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "wizseenv", "show map locations' seen vectors",
wiz_show_seenv, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_show_seenv, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "wizsmell", "smell monster",
wiz_smell, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_smell, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "wizwhere", "show locations of special levels",
wiz_where, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_where, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ C('w'), "wizwish", "wish for something",
wiz_wish, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
wiz_wish, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ '\0', "wmode", "show wall modes",
wiz_show_wmodes, IFBURIED | AUTOCOMPLETE | WIZMODECMD },
{ 'z', "zap", "zap a wand", dozap },
wiz_show_wmodes, IFBURIED | AUTOCOMPLETE | WIZMODECMD, NULL },
{ 'z', "zap", "zap a wand", dozap, 0, NULL },
{ '\0', (char *) 0, (char *) 0, donull, 0, (char *) 0 } /* sentinel */
};