Annotation of researchv10no/games/trek/play.c, revision 1.1.1.1

1.1       root        1: # include      "trek.h"
                      2: 
                      3: /**
                      4:  **    instruction read and main play loop
                      5:  **/
                      6: 
                      7: CVNTAB Comtab[]
                      8: {
                      9:        "!",                    "shell",
                     10:        "m",                    "ove",
                     11:        "ram",                  "",
                     12:        "q",                    "uery",
                     13:        "st",                   "atus",
                     14:        "sh",                   "ield",
                     15:        "s",                    "rscan",
                     16:        "l",                    "rscan",
                     17:        "da",                   "mages",
                     18:        "p",                    "hasers",
                     19:        "quit",                 "",
                     20:        "t",                    "orpedo",
                     21:        "cl",                   "oak",
                     22:        "c",                    "omputer",
                     23:        "w",                    "arp",
                     24:        "r",                    "est",
                     25:        "do",                   "ck",
                     26:        "i",                    "mpulse",
                     27:        "u",                    "ndock",
                     28:        "help",                 "",
                     29:        "v",                    "isual",
                     30:        "destruct",             "",
                     31:        "abandon",              "",
                     32:        "dump",                 "",
                     33:        "events",               "",
                     34:        0
                     35: };
                     36: 
                     37: extern int shell();
                     38: extern int move();
                     39: extern int ram();
                     40: extern int info();
                     41: extern int status();
                     42: extern int shield();
                     43: extern int srscan();
                     44: extern int lrscan();
                     45: extern int dcrept();
                     46: extern int phaser();
                     47: extern int reset();
                     48: extern int torped();
                     49: extern int cloak();
                     50: extern int computer();
                     51: extern int setwarp();
                     52: extern int rest();
                     53: extern int dock();
                     54: extern int impulse();
                     55: extern int undock();
                     56: extern int help();
                     57: extern int visual();
                     58: extern int destruct();
                     59: extern int abandon();
                     60: extern int dumpgame();
                     61: extern int eventpr();
                     62: 
                     63: int (*comfn[])()
                     64: {
                     65:        &shell,
                     66:        &move,
                     67:        &ram,
                     68:        &info,
                     69:        &status,
                     70:        &shield,
                     71:        &srscan,
                     72:        &lrscan,
                     73:        &dcrept,
                     74:        &phaser,
                     75:        &reset,
                     76:        &torped,
                     77:        &cloak,
                     78:        &computer,
                     79:        &setwarp,
                     80:        &rest,
                     81:        &dock,
                     82:        &impulse,
                     83:        &undock,
                     84:        &help,
                     85:        &visual,
                     86:        &destruct,
                     87:        &abandon,
                     88:        &dumpgame,
                     89:        &eventpr
                     90: };
                     91: 
                     92: reset()
                     93: {
                     94:        longjmp(errjmp);
                     95: }
                     96: 
                     97: play()
                     98: {
                     99:        register int    r;
                    100: 
                    101:        while (1)
                    102:        {
                    103:                Move.free = 1;
                    104:                Move.delta = 0.0;
                    105:                Move.shldchg = 0;
                    106:                Move.newquad = 0;
                    107:                Move.resting = 0;
                    108:                if(chkbad() < 0)
                    109:                        return(0);
                    110:                if((r=getcodpar("Command", Comtab))<0)
                    111:                        continue;
                    112:                (*comfn[r])();
                    113:                if(chkbad())
                    114:                        continue;
                    115:                events();
                    116:                attack(0);
                    117:                checkcond();
                    118:        }
                    119: }
                    120: 
                    121: char   eof;
                    122: chkbad()
                    123: {
                    124:        if(eof)
                    125:                return(-1);
                    126:        if(mkfault) {
                    127:                flushin();
                    128:                mkfault=0;
                    129:                printf("@\n");
                    130:                return(1);
                    131:        }
                    132:        return(0);
                    133: }

unix.superglobalmegacorp.com

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