MCPcopy Index your code
hub / github.com/NetHack/NetHack / optfn_map_mode

Function optfn_map_mode

src/options.c:1962–2047  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1960}
1961
1962staticfn int
1963optfn_map_mode(
1964 int optidx, int req, boolean negated,
1965 char *opts, char *op)
1966{
1967 int i;
1968
1969 if (req == do_init) {
1970 return optn_ok;
1971 }
1972 if (req == do_set) {
1973 /* WINCAP
1974 *
1975 * map_mode:[tiles|ascii4x6|ascii6x8|ascii8x8|ascii16x8|ascii7x12
1976 * |ascii8x12|ascii16x12|ascii12x16|ascii10x18|fit_to_screen
1977 * |ascii_fit_to_screen|tiles_fit_to_screen]
1978 */
1979 op = string_for_opt(opts, negated);
1980 if (op != empty_optstr && !negated) {
1981 int save_map_mode = iflags.wc_map_mode;
1982
1983 if (!strcmpi(op, "tiles"))
1984 iflags.wc_map_mode = MAP_MODE_TILES;
1985 else if (!strncmpi(op, "ascii4x6", sizeof "ascii4x6" - 1))
1986 iflags.wc_map_mode = MAP_MODE_ASCII4x6;
1987 else if (!strncmpi(op, "ascii6x8", sizeof "ascii6x8" - 1))
1988 iflags.wc_map_mode = MAP_MODE_ASCII6x8;
1989 else if (!strncmpi(op, "ascii8x8", sizeof "ascii8x8" - 1))
1990 iflags.wc_map_mode = MAP_MODE_ASCII8x8;
1991 else if (!strncmpi(op, "ascii16x8", sizeof "ascii16x8" - 1))
1992 iflags.wc_map_mode = MAP_MODE_ASCII16x8;
1993 else if (!strncmpi(op, "ascii7x12", sizeof "ascii7x12" - 1))
1994 iflags.wc_map_mode = MAP_MODE_ASCII7x12;
1995 else if (!strncmpi(op, "ascii8x12", sizeof "ascii8x12" - 1))
1996 iflags.wc_map_mode = MAP_MODE_ASCII8x12;
1997 else if (!strncmpi(op, "ascii16x12", sizeof "ascii16x12" - 1))
1998 iflags.wc_map_mode = MAP_MODE_ASCII16x12;
1999 else if (!strncmpi(op, "ascii12x16", sizeof "ascii12x16" - 1))
2000 iflags.wc_map_mode = MAP_MODE_ASCII12x16;
2001 else if (!strncmpi(op, "ascii10x18", sizeof "ascii10x18" - 1))
2002 iflags.wc_map_mode = MAP_MODE_ASCII10x18;
2003 else if (!strncmpi(op, "fit_to_screen",
2004 sizeof "fit_to_screen" - 1))
2005 iflags.wc_map_mode = MAP_MODE_ASCII_FIT_TO_SCREEN;
2006 else if (!strncmpi(op, "ascii_fit_to_screen",
2007 sizeof "ascii_fit_to_screen" - 1))
2008 iflags.wc_map_mode = MAP_MODE_ASCII_FIT_TO_SCREEN;
2009 else if (!strncmpi(op, "tiles_fit_to_screen",
2010 sizeof "tiles_fit_to_screen" - 1))
2011 iflags.wc_map_mode = MAP_MODE_TILES_FIT_TO_SCREEN;
2012 else {
2013 config_error_add("Unknown %s parameter '%s'",
2014 allopt[optidx].name, op);
2015 return optn_err;
2016 }
2017 if (wc_supported("map_mode")) {
2018 if (!iflags.wc_map_mode
2019 || save_map_mode != iflags.wc_map_mode)

Callers

nothing calls this directly

Calls 5

string_for_optFunction · 0.85
config_error_addFunction · 0.85
wc_supportedFunction · 0.85
bad_negationFunction · 0.85
strncmpiFunction · 0.70

Tested by

no test coverage detected