void pline VA_DECL(const char *, line) { VA_START(line); VA_INIT(line, char *); vpline(line, VA_ARGS); VA_END(); }
void pline(const char *line, ...) { va_list ap; va_start(ap, line); vpline(line, ap); va_end(ap); }
// VARARGS1 void impossible(const char *s, ...) { va_list ap; va_start(ap, s); vpline(s, ap); va_end(ap); pline("Program in disorder - perhaps you'd better Quit."); }
/*VARARGS1*/ void Norep VA_DECL(const char *, line) { VA_START(line); VA_INIT(line, const char *); no_repeat = TRUE; vpline(line, VA_ARGS); no_repeat = FALSE; VA_END(); return; }
/*VARARGS1*/ void verbalize(const char *line, ...) { va_list the_args; if (!canhear()) return; va_start(the_args, line); vpline(FALSE, FALSE, msgcat_many("\"", line, "\"", NULL), the_args); va_end(the_args); }
/*VARARGS1*/ void You_hear(const char *line, ...) { /* You can't hear while unconscious. */ if (!canhear()) return; va_list the_args; va_start(the_args, line); vpline(FALSE, FALSE, msgcat_many("You ", Underwater ? "barely " : "", "hear ", line, NULL), the_args); va_end(the_args); }