X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmisc.c;h=56b651cbc38f3d9cf6c9a2abe4e0f5098006d9bd;hb=59c2e609872b70cb4c458004cd9e2fe22c86a54b;hp=fdbc27259763f84121e4d5894c74919e35eb7752;hpb=d32496fdd3867910a188acba0ac132f66c99306c;p=rocksndiamonds.git diff --git a/src/misc.c b/src/misc.c index fdbc2725..56b651cb 100644 --- a/src/misc.c +++ b/src/misc.c @@ -233,6 +233,7 @@ void GetOptions(char *argv[]) "Options:\n" " -d, --display machine:0 X server display\n" " -l, --levels directory alternative level directory\n" + " -s, --serveronly only start network server\n" " -n, --network network multiplayer game\n" " -v, --verbose verbose mode\n", program_name); @@ -264,7 +265,13 @@ void GetOptions(char *argv[]) { printf("--network\n"); - standalone = FALSE; + network = TRUE; + } + else if (strncmp(option, "-serveronly", option_len) == 0) + { + printf("--serveronly\n"); + + serveronly = TRUE; } else if (strncmp(option, "-verbose", option_len) == 0) { @@ -362,3 +369,16 @@ void Error(int mode, char *format_str, ...) CloseAllAndExit(1); } } + +/* like memcpy, but guaranteed to handle overlap when s <= t */ +void copydown(char *s, char *t, int n) +{ + for (; n; n--) + *(s++) = *(t++); +} + +void fatal(char *s) +{ + fprintf(stderr, "%s.\n", s); + exit(1); +}