]>
git.cameronkatri.com Git - bsdgames-darwin.git/blob - mille/mille.c
2 * Copyright (c) 1982 Regents of the University of California.
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 * 3. All advertising materials mentioning features or use of this software
14 * must display the following acknowledgement:
15 * This product includes software developed by the University of
16 * California, Berkeley and its contributors.
17 * 4. Neither the name of the University nor the names of its contributors
18 * may be used to endorse or promote products derived from this software
19 * without specific prior written permission.
21 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
36 "@(#) Copyright (c) 1982 Regents of the University of California.\n\
37 All rights reserved.\n";
41 static char sccsid
[] = "@(#)mille.c 5.5 (Berkeley) 2/28/91";
51 * @(#)mille.c 1.3 (Berkeley) 5/10/83
65 if (strcmp(av
[0], "a.out") == 0) {
66 outf
= fopen("q", "w");
67 setbuf(outf
, (char *)NULL
);
78 printf("usage: milles [ restore_file ]\n");
85 # define CA cursor_address
88 printf("Sorry. Need cursor addressing to play mille\n");
92 stdscr
= Board
= newwin(BOARD_Y
, BOARD_X
, 0, 0);
93 Score
= newwin(SCORE_Y
, SCORE_X
, 0, 40);
94 Miles
= newwin(MILES_Y
, MILES_X
, 17, 0);
100 leaveok(Score
, TRUE
);
101 leaveok(Miles
, TRUE
);
102 clearok(curscr
, TRUE
);
112 if (!restore
|| (Player
[PLAYER
].total
>= 5000
113 || Player
[COMP
].total
>= 5000)) {
114 if (Player
[COMP
].total
< Player
[PLAYER
].total
)
115 Player
[PLAYER
].games
++;
116 else if (Player
[COMP
].total
> Player
[PLAYER
].total
)
117 Player
[COMP
].games
++;
118 Player
[COMP
].total
= 0;
119 Player
[PLAYER
].total
= 0;
123 Handstart
= Play
= other(Handstart
);
124 if (!restore
|| On_exit
) {
130 mvwaddstr(Score
, ERR_Y
, ERR_X
, Initstr
);
139 restore
= On_exit
= FALSE
;
140 } while (Player
[COMP
].total
< 5000
141 && Player
[PLAYER
].total
< 5000);
146 * Routine to trap rubouts, and make sure they really want to
152 (void)signal(SIGINT
, SIG_IGN
);
153 if (getyn(REALLYPROMPT
))
155 (void)signal(SIGINT
, rub
);
159 * Time to go beddy-by
163 (void)signal(SIGINT
, SIG_IGN
);
166 mvcur(0, COLS
- 1, LINES
- 1, 0);