]> git.pond.sub.org Git - empserver/blobdiff - src/lib/gen/numstr.c
Update copyright notice
[empserver] / src / lib / gen / numstr.c
index b50d4b4775124d69752e64dfd24f06a8476c45e8..4ec59a2ea6b1ddb972f2a888cfd7132f4ec54ec4 100644 (file)
@@ -1,6 +1,6 @@
 /*
  *  Empire - A multi-player, client/server Internet based war game.
- *  Copyright (C) 1986-2000, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ *  Copyright (C) 1986-2010, Dave Pare, Jeff Bailey, Thomas Ruschak,
  *                           Ken Stevens, Steve McClure
  *
  *  This program is free software; you can redistribute it and/or modify
  *
  *  ---
  *
- *  See the "LEGAL", "LICENSE", "CREDITS" and "README" files for all the
- *  related information and legal notices. It is expected that any future
- *  projects/authors will amend these files as needed.
+ *  See files README, COPYING and CREDITS in the root of the source
+ *  tree for related information and legal notices.  It is expected
+ *  that future projects/authors will amend these files as needed.
  *
  *  ---
  *
  *  numstr.c: Turn a number into a word
- * 
+ *
  *  Known contributors to this file:
  *     Steve McClure, 2000
  */
 
-#ifdef Rel4
-#include <string.h>
-#endif /* Rel4 */
-#include "misc.h"
-#include "gen.h"
+#include <config.h>
+
+#include "prototypes.h"
 
-s_char *
-numstr(s_char *buf, int n)
+char *
+numstr(char *buf, int n)
 {
-       extern  s_char *numnames[];
-       extern  s_char *tennames[];
+    static char *numnames[] = {
+       "zero", "one", "two", "three", "four", "five", "six",
+       "seven", "eight", "nine", "ten", "eleven", "twelve",
+       "thirteen", "fourteen", "fifteen", "sixteen",
+       "seventeen", "eighteen", "nineteen",
+    };
+    static char *tennames[] = {
+       "", "", "twenty", "thirty", "forty", "fifty",
+       "sixty", "seventy", "eighty", "ninety", "hundred"
+    };
 
-       if (n > 100) {
-               (void) strcpy(buf, "several");
-       } else if (n < 0) {
-               (void) strcpy(buf, "a negative number of");
+    if (n > 100) {
+       (void)strcpy(buf, "several");
+    } else if (n < 0) {
+       (void)strcpy(buf, "a negative number of");
+    } else {
+       if (n >= 20) {
+           (void)strcpy(buf, tennames[n / 10]);
+           if (n % 10) {
+               (void)strcat(buf, "-");
+               (void)strcat(buf, numnames[n % 10]);
+           }
        } else {
-               if (n >= 20) {
-                       (void) strcpy(buf, tennames[n / 10]);
-                       if (n % 10) {
-                               (void) strcat(buf, "-");
-                               (void) strcat(buf, numnames[n % 10]);
-                       }
-               } else {
-                       (void) strcpy(buf, numnames[n % 20]);
-               }
+           (void)strcpy(buf, numnames[n % 20]);
        }
-       return buf;
+    }
+    return buf;
 }
 
-s_char *
+char *
 effadv(int n)
 {
-       extern  s_char *effadv_list[];
+    static char *effadv_list[] = {
+       "minimally", "partially", "moderately", "completely",
+    };
 
-       if (n < 0)
-               n = 0;
-       if (n >= 100)
-               n = 99;
-       return effadv_list[n/25];
+    if (n < 0)
+       n = 0;
+    if (n >= 100)
+       n = 99;
+    return effadv_list[n / 25];
 }