Annotation of 43BSDReno/games/hack/hack.rip.c, revision 1.1

1.1     ! root        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 ", 4) ? "" :
        !            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: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.