comparison rogue4/io.c @ 225:4f6e056438eb

Merge the GCC5 and build fix branches.
author John "Elwin" Edwards
date Wed, 02 Mar 2016 21:28:34 -0500
parents 1b73a8641b37
children
comparison
equal deleted inserted replaced
224:4d0f53998e8a 225:4f6e056438eb
14 #include <ctype.h> 14 #include <ctype.h>
15 #include <string.h> 15 #include <string.h>
16 #include "rogue.h" 16 #include "rogue.h"
17 #include <stdarg.h> 17 #include <stdarg.h>
18 18
19 void doadd(char *fmt, va_list ap);
20
19 /* 21 /*
20 * msg: 22 * msg:
21 * Display a message at the top of the screen. 23 * Display a message at the top of the screen.
22 */ 24 */
23 static char msgbuf[BUFSIZ]; 25 static char msgbuf[BUFSIZ];
24 static int newpos = 0; 26 static int newpos = 0;
25 27
28 void
26 msg(char *fmt, ...) 29 msg(char *fmt, ...)
27 { 30 {
28 va_list ap; 31 va_list ap;
29 /* 32 /*
30 * if the string is "", just clear the line 33 * if the string is "", just clear the line
48 /* 51 /*
49 * addmsg: 52 * addmsg:
50 * Add things to the current message 53 * Add things to the current message
51 */ 54 */
52 55
56 void
53 addmsg(char *fmt, ...) 57 addmsg(char *fmt, ...)
54 { 58 {
55 va_list ap; 59 va_list ap;
56 60
57 va_start(ap, fmt); 61 va_start(ap, fmt);
63 * endmsg: 67 * endmsg:
64 * Display a new msg (giving him a chance to see the previous one 68 * Display a new msg (giving him a chance to see the previous one
65 * if it is up there with the --More--) 69 * if it is up there with the --More--)
66 */ 70 */
67 71
68 endmsg() 72 void
73 endmsg(void)
69 { 74 {
70 if (save_msg) 75 if (save_msg)
71 { 76 {
72 strncpy(huh, msgbuf, 80); 77 strncpy(huh, msgbuf, 80);
73 huh[79] = 0; 78 huh[79] = 0;
97 /* 102 /*
98 * doadd: 103 * doadd:
99 * Perform an add onto the message buffer 104 * Perform an add onto the message buffer
100 */ 105 */
101 106
107 void
102 doadd(char *fmt, va_list ap) 108 doadd(char *fmt, va_list ap)
103 { 109 {
104 vsprintf(&msgbuf[newpos], fmt, ap); 110 vsprintf(&msgbuf[newpos], fmt, ap);
105 newpos = strlen(msgbuf); 111 newpos = strlen(msgbuf);
106 } 112 }
107 113
108 /* 114 /*
109 * step_ok: 115 * step_ok:
110 * Returns true if it is ok to step on ch 116 * Returns true if it is ok to step on ch
111 */ 117 */
112 step_ok(ch) 118 bool
119 step_ok(char ch)
113 { 120 {
114 switch (ch) 121 switch (ch)
115 { 122 {
116 case ' ': 123 case ' ':
117 case '|': 124 case '|':
125 /* 132 /*
126 * readchar: 133 * readchar:
127 * Flushes stdout so that screen is up to date and then returns 134 * Flushes stdout so that screen is up to date and then returns
128 * getchar(). 135 * getchar().
129 */ 136 */
130 readcharw(win) 137 int
131 WINDOW *win; 138 readcharw(WINDOW *win)
132 { 139 {
133 int ch; 140 int ch;
134 141
135 ch = md_readchar(win); 142 ch = md_readchar(win);
136 143
141 } 148 }
142 149
143 return(ch); 150 return(ch);
144 } 151 }
145 152
146 readchar() 153 int
154 readchar(void)
147 { 155 {
148 return( readcharw(stdscr) ); 156 return( readcharw(stdscr) );
149 } 157 }
150 158
151 char * 159 char *
152 unctrol(ch) 160 unctrol(char ch)
153 char ch;
154 { 161 {
155 return( (char *) unctrl(ch) ); 162 return( (char *) unctrl(ch) );
156 } 163 }
157 164
158 /* 165 /*
159 * status: 166 * status:
160 * Display the important stats line. Keep the cursor where it was. 167 * Display the important stats line. Keep the cursor where it was.
161 */ 168 */
162 status() 169 void
170 status(void)
163 { 171 {
164 register int oy, ox, temp; 172 register int oy, ox, temp;
165 static int hpwidth = 0, s_hungry; 173 static int hpwidth = 0, s_hungry;
166 static int s_lvl, s_pur = -1, s_hp, s_ac = 0; 174 static int s_lvl, s_pur = -1, s_hp, s_ac = 0;
167 static str_t s_str; 175 static str_t s_str;
213 * Sit around until the guy types the right key 221 * Sit around until the guy types the right key
214 */ 222 */
215 223
216 224
217 225
218 wait_for(ch) 226 void
219 register char ch; 227 wait_for(char ch)
220 { 228 {
221 w_wait_for(stdscr, ch); 229 w_wait_for(stdscr, ch);
222 } 230 }
223 231
224 w_wait_for(win,ch) 232 void
225 WINDOW *win; 233 w_wait_for(WINDOW *win, char ch)
226 register char ch;
227 { 234 {
228 register char c; 235 register char c;
229 236
230 if (ch == '\n') 237 if (ch == '\n')
231 while ((c = readcharw(win)) != '\n' && c != '\r') 238 while ((c = readcharw(win)) != '\n' && c != '\r')
237 244
238 /* 245 /*
239 * show_win: 246 * show_win:
240 * Function used to display a window and wait before returning 247 * Function used to display a window and wait before returning
241 */ 248 */
242 show_win(scr, message) 249 void
243 register WINDOW *scr; 250 show_win(WINDOW *scr, char *message)
244 char *message;
245 { 251 {
246 mvwaddstr(scr, 0, 0, message); 252 mvwaddstr(scr, 0, 0, message);
247 touchwin(scr); 253 touchwin(scr);
248 wmove(scr, hero.y, hero.x); 254 wmove(scr, hero.y, hero.x);
249 wrefresh(scr); 255 wrefresh(scr);