1: /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
   2: /* hack.rip.c - version 1.0.2 */
   3: 
   4: #include <stdio.h>
   5: #include "hack.h"
   6: 
   7: extern char plname[];
   8: 
   9: static char *rip[] = {
  10: "                       ----------",
  11: "                      /          \\",
  12: "                     /    REST    \\",
  13: "                    /      IN      \\",
  14: "                   /     PEACE      \\",
  15: "                  /                  \\",
  16: "                  |                  |",
  17: "                  |                  |",
  18: "                  |                  |",
  19: "                  |                  |",
  20: "                  |                  |",
  21: "                  |       1001       |",
  22: "                 *|     *  *  *      | *",
  23: "        _________)/\\\\_//(\\/(/\\)/\\//\\/|_)_______\n",
  24: 0
  25: };
  26: 
  27: outrip(){
  28:     register char **dp = rip;
  29:     register char *dpx;
  30:     char buf[BUFSZ];
  31:     register x,y;
  32: 
  33:     cls();
  34:     (void) strcpy(buf, plname);
  35:     buf[16] = 0;
  36:     center(6, buf);
  37:     (void) sprintf(buf, "%ld AU", u.ugold);
  38:     center(7, buf);
  39:     (void) sprintf(buf, "killed by%s",
  40:         !strncmp(killer, "the ", STRLEN("the ")) ? "" :
  41:         !strcmp(killer, "starvation") ? "" :
  42:         index(vowels, *killer) ? " an" : " a");
  43:     center(8, buf);
  44:     (void) strcpy(buf, killer);
  45:     if(strlen(buf) > 16) {
  46:         register int i,i0,i1;
  47:         i0 = i1 = 0;
  48:         for(i = 0; i <= 16; i++)
  49:             if(buf[i] == ' ') i0 = i, i1 = i+1;
  50:         if(!i0) i0 = i1 = 16;
  51:         buf[i1 + 16] = 0;
  52:         center(10, buf+i1);
  53:         buf[i0] = 0;
  54:     }
  55:     center(9, buf);
  56:     (void) sprintf(buf, "%4d", getyear());
  57:     center(11, buf);
  58:     for(y=8; *dp; y++,dp++){
  59:         x = 0;
  60:         dpx = *dp;
  61:         while(dpx[x]) {
  62:             while(dpx[x] == ' ') x++;
  63:             curs(x,y);
  64:             while(dpx[x] && dpx[x] != ' '){
  65:                 extern int done_stopprint;
  66:                 if(done_stopprint)
  67:                     return;
  68:                 curx++;
  69:                 (void) putchar(dpx[x++]);
  70:             }
  71:         }
  72:     }
  73:     getret();
  74: }
  75: 
  76: center(line, text) int line; char *text; {
  77: register char *ip,*op;
  78:     ip = text;
  79:     op = &rip[line][28 - ((strlen(text)+1)/2)];
  80:     while(*ip) *op++ = *ip++;
  81: }

Defined functions

center defined in line 76; used 6 times
outrip defined in line 27; used 1 times

Defined variables

rip defined in line 9; used 2 times
Last modified: 1985-12-16
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 676
Valid CSS Valid XHTML 1.0 Strict