/* * Copyright (c) 1980 Regents of the University of California. * All rights reserved. The Berkeley software License Agreement * specifies the terms and conditions for redistribution. */ #ifndef lint static char sccsid[] = "@(#)init_field.c 5.1 (Berkeley) 5/30/85"; #endif not lint # include "robots.h" /* * init_field: * Lay down the initial pattern whih is constant across all levels, * and initialize all the global variables. */ init_field() { register int i; register WINDOW *wp; register int j; static bool first = TRUE; static char *desc[] = { "Directions:", "", "y k u", " \\|/", "h- -l", " /|\\", "b j n", "", "Commands:", "", "w: wait for end", "t: teleport", "q: quit", "^L: redraw screen", "", "Legend:", "", "+: robot", "*: junk heap", "@: you", "", "Score: 0", NULL }; Dead = FALSE; Waiting = FALSE; flushok(stdscr, TRUE); Score = 0; erase(); move(0, 0); addch('+'); for (i = 1; i < Y_FIELDSIZE; i++) { move(i, 0); addch('|'); } move(Y_FIELDSIZE, 0); addch('+'); for (i = 1; i < X_FIELDSIZE; i++) addch('-'); addch('+'); if (first) refresh(); move(0, 1); for (i = 1; i < X_FIELDSIZE; i++) addch('-'); addch('+'); for (i = 1; i < Y_FIELDSIZE; i++) { move(i, X_FIELDSIZE); addch('|'); } if (first) refresh(); for (i = 0; desc[i] != NULL; i++) { move(i, X_FIELDSIZE + 2); addstr(desc[i]); } if (first) refresh(); first = FALSE; #ifdef FANCY if (Pattern_roll) Next_move = &Move_list[-1]; #endif }