|
|
1.1 ! root 1: /*----------------------------------------------------------------------*/ ! 2: /* */ ! 3: /* PACMAN for BBN BitGraphs */ ! 4: /* */ ! 5: /* File: board.c68 */ ! 6: /* Contents: declaration of game board and operations */ ! 7: /* Author: Bob Brown (rlb) */ ! 8: /* Purdue CS */ ! 9: /* Date: May, 1982 */ ! 10: /* Description: The Game board is not easily changed. The */ ! 11: /* characters used are also defined in pacman.h */ ! 12: /* */ ! 13: /*----------------------------------------------------------------------*/ ! 14: ! 15: #include "style.h" ! 16: #include "pacman.h" ! 17: ! 18: /* ! 19: ** Due to memory limitations, the static game board shown below is ! 20: ** overwritten by the dynamic version. ! 21: */ ! 22: ! 23: bool Blasted = FALSE; ! 24: ! 25: char *Board[] = { ! 26: "2000000000000320000000000003", ! 27: "1777777777777117777777777771", ! 28: "1720037200037117200037200371", ! 29: "1819917199917117199917199181", ! 30: "1750047500047547500047500471", ! 31: "1777777777777777777777777771", ! 32: "1720037237200000037237200371", ! 33: "1750047117500320047117500471", ! 34: "1777777117777117777117777771", ! 35: "5000037150039119200417200004", ! 36: "999991712004=54=500317199999", ! 37: "999991711;;;;;;;;;;117199999", ! 38: "999991711;20666603;117199999", ! 39: "000004754;19999991;547500000", ! 40: "::::::799;19999991;997::::::", ! 41: "000003723;19999991;237200000", ! 42: "999991711;50000004;117199999", ! 43: "999991711;;;;;;;;;;117199999", ! 44: "9999917119200000039117199999", ! 45: "2000047549500320049547500003", ! 46: "1777777777777117777777777771", ! 47: "1720037200037117200037200371", ! 48: "175031750004<54<500047120471", ! 49: "1877117777777997777777117781", ! 50: "5037117237200000037237117204", ! 51: "2047547117500320047117547503", ! 52: "1777777117777117777117777771", ! 53: "1720000450037117200450000371", ! 54: "1750000000047547500000000471", ! 55: "1777777777777777777777777771", ! 56: "5000000000000000000000000004", ! 57: }; ! 58: ! 59: /* ! 60: ** Generate a new board from the fixed board ! 61: */ ! 62: newboard() ! 63: { ! 64: register int i,j; ! 65: register char c; ! 66: for ( i=0 ; i<MAZEROWS ; i++ ) ! 67: for ( j=0 ; j<MAZECOLS ; j++ ) { ! 68: Board[i][j] &= TYPEMASK; ! 69: switch ( Board[i][j] ) { ! 70: case FIXPILL: ! 71: Board[i][j] |= PILL; ! 72: break; ! 73: case BLKDOT: ! 74: case FIXGOLD: ! 75: Board[i][j] |= GOLD; ! 76: } ! 77: } ! 78: } ! 79: char chrmap[] = {"abcdefghi h "}; ! 80: drawboard() ! 81: { ! 82: register int i,j; ! 83: register char c; ! 84: /*cursinhibit();*/ ! 85: for ( i=0 ; i<MAZEROWS ; i++ ) { ! 86: for ( j=0 ; j<MAZECOLS ; j++ ) { ! 87: c = chrmap[Board[i][j] & TYPEMASK]; ! 88: if ( c!=' ' ) ! 89: blt24(c,MZtoSC(i),MZtoSC(j),REPLACE); ! 90: } ! 91: #ifndef BLIT ! 92: rsetdead(); ! 93: #endif ! 94: } ! 95: /*cursallow();*/ ! 96: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.