Annotation of 42BSD/games/trek/visual.c, revision 1.1.1.1

1.1       root        1: #ifndef lint
                      2: static char sccsid[] = "@(#)visual.c   4.2     (Berkeley)      5/27/83";
                      3: #endif not lint
                      4: 
                      5: # include      "trek.h"
                      6: 
                      7: /*
                      8: **  VISUAL SCAN
                      9: **
                     10: **     A visual scan is made in a particular direction of three sectors
                     11: **     in the general direction specified.  This takes time, and
                     12: **     Klingons can attack you, so it should be done only when sensors
                     13: **     are out.
                     14: */
                     15: 
                     16: /* This struct[] has the delta x, delta y for particular directions */
                     17: struct xy      Visdelta[11] =
                     18: {
                     19:        -1,     -1,
                     20:        -1,      0,
                     21:        -1,      1,
                     22:         0,      1,
                     23:         1,      1,
                     24:         1,      0,
                     25:         1,     -1,
                     26:         0,     -1,
                     27:        -1,     -1,
                     28:        -1,      0,
                     29:        -1,      1
                     30: };
                     31: 
                     32: visual()
                     33: {
                     34:        register int            ix, iy;
                     35:        int                     co;
                     36:        register struct xy      *v;
                     37: 
                     38:        co = getintpar("direction");
                     39:        if (co < 0 || co > 360)
                     40:                return;
                     41:        co = (co + 22) / 45;
                     42:        v = &Visdelta[co];
                     43:        ix = Ship.sectx + v->x;
                     44:        iy = Ship.secty + v->y;
                     45:        if (ix < 0 || ix >= NSECTS || iy < 0 || iy >= NSECTS)
                     46:                co = '?';
                     47:        else
                     48:                co = Sect[ix][iy];
                     49:        printf("%d,%d %c ", ix, iy, co);
                     50:        v++;
                     51:        ix = Ship.sectx + v->x;
                     52:        iy = Ship.secty + v->y;
                     53:        if (ix < 0 || ix >= NSECTS || iy < 0 || iy >= NSECTS)
                     54:                co = '?';
                     55:        else
                     56:                co = Sect[ix][iy];
                     57:        printf("%c ", co);
                     58:        v++;
                     59:        ix = Ship.sectx + v->x;
                     60:        iy = Ship.secty + v->y;
                     61:        if (ix < 0 || ix >= NSECTS || iy < 0 || iy >= NSECTS)
                     62:                co = '?';
                     63:        else
                     64:                co = Sect[ix][iy];
                     65:        printf("%c %d,%d\n", co, ix, iy);
                     66:        Move.time = 0.05;
                     67:        Move.free = 0;
                     68: }

unix.superglobalmegacorp.com

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