|
|
1.1 root 1: /*
2: * Copyright (c) 1980 Regents of the University of California.
3: * All rights reserved.
4: *
5: * Redistribution and use in source and binary forms are permitted
6: * provided that the above copyright notice and this paragraph are
7: * duplicated in all such forms and that any documentation,
8: * advertising materials, and other materials related to such
9: * distribution and use acknowledge that the software was developed
10: * by the University of California, Berkeley. The name of the
11: * University may not be used to endorse or promote products derived
12: * from this software without specific prior written permission.
13: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
14: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
15: * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
16: */
17:
18: #ifndef lint
19: static char sccsid[] = "@(#)init_field.c 5.3 (Berkeley) 6/18/88";
20: #endif /* not lint */
21:
22: # include "robots.h"
23:
24: /*
25: * init_field:
26: * Lay down the initial pattern whih is constant across all levels,
27: * and initialize all the global variables.
28: */
29: init_field()
30: {
31: register int i;
32: register WINDOW *wp;
33: register int j;
34: static bool first = TRUE;
35: static char *desc[] = {
36: "Directions:",
37: "",
38: "y k u",
39: " \\|/",
40: "h- -l",
41: " /|\\",
42: "b j n",
43: "",
44: "Commands:",
45: "",
46: "w: wait for end",
47: "t: teleport",
48: "q: quit",
49: "^L: redraw screen",
50: "",
51: "Legend:",
52: "",
53: "+: robot",
54: "*: junk heap",
55: "@: you",
56: "",
57: "Score: 0",
58: NULL
59: };
60:
61: Dead = FALSE;
62: Waiting = FALSE;
63: flushok(stdscr, TRUE);
64: Score = 0;
65:
66: erase();
67: move(0, 0);
68: addch('+');
69: for (i = 1; i < Y_FIELDSIZE; i++) {
70: move(i, 0);
71: addch('|');
72: }
73: move(Y_FIELDSIZE, 0);
74: addch('+');
75: for (i = 1; i < X_FIELDSIZE; i++)
76: addch('-');
77: addch('+');
78: if (first)
79: refresh();
80: move(0, 1);
81: for (i = 1; i < X_FIELDSIZE; i++)
82: addch('-');
83: addch('+');
84: for (i = 1; i < Y_FIELDSIZE; i++) {
85: move(i, X_FIELDSIZE);
86: addch('|');
87: }
88: if (first)
89: refresh();
90: for (i = 0; desc[i] != NULL; i++) {
91: move(i, X_FIELDSIZE + 2);
92: addstr(desc[i]);
93: }
94: if (first)
95: refresh();
96: first = FALSE;
97: #ifdef FANCY
98: if (Pattern_roll)
99: Next_move = &Move_list[-1];
100: #endif
101: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.