1 /* file icon.c */
2 /***************************************************************************
3 * Copyright 2003 - Steven Shipway <steve@cheshire.demon.co.uk> *
4 * Put "nospam" in subject to avoid spam filter *
5 * *
6 * This program is free software; you can redistribute it and/or modify *
7 * it under the terms of the GNU General Public License as published by *
8 * the Free Software Foundation; either version 2 of the License, or *
9 * (at your option) any later version. *
10 * *
11 * This program is distributed in the hope that it will be useful, *
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14 * GNU General Public License for more details. *
15 * *
16 * You should have received a copy of the GNU General Public License *
17 * along with this program; if not, write to the Free Software *
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA *
19 * 02111-1307, USA. *
20 ***************************************************************************/
21
22
23 #include "wand_head.h"
24
25 /********************************************************
26 * draw_symbol *
27 *********************************************************/
draw_symbol(x,y,ch)28 void draw_symbol(x,y,ch) /* this is where the pretty graphics are */
29 /* all defined - change them if you want.. */
30 int x,y;
31 char ch;
32 {
33 char icon[2][4],
34 (*iconrow)[4] = icon;
35 switch(ch)
36 {
37 case ' ': /* space */
38 strcpy(*iconrow++," ");
39 strcpy(*iconrow, " ");
40 break;
41 case '#': /* rock */
42 strcpy(*iconrow++,"###");
43 strcpy(*iconrow, "###");
44 break;
45 case '<': /* arrows */
46 strcpy(*iconrow++,"<--");
47 strcpy(*iconrow, "<--");
48 break;
49 case '>':
50 strcpy(*iconrow++,"-->");
51 strcpy(*iconrow, "-->");
52 break;
53 case 'O': /* boulder */
54 strcpy(*iconrow++,"/^\\");
55 strcpy(*iconrow, "\\_/");
56 break;
57 case ':': /* earth */
58 strcpy(*iconrow++,". .");
59 strcpy(*iconrow, " . ");
60 break;
61 case '/': /* slopes */
62 strcpy(*iconrow++," _/");
63 strcpy(*iconrow, "/ ");
64 break;
65 case '\\':
66 strcpy(*iconrow++,"\\_ ");
67 strcpy(*iconrow, " \\");
68 break;
69 case '*': /* diamond */
70 strcpy(*iconrow++,"/$\\");
71 strcpy(*iconrow, "\\$/");
72 break;
73 case '=': /* rock */
74 strcpy(*iconrow++,"=-=");
75 strcpy(*iconrow, "-=-");
76 break;
77 case '@': /* YOU!!! */
78 strcpy(*iconrow++," o ");
79 strcpy(*iconrow, "<|>");
80 break;
81 case '~': /* pushable thingy */
82 strcpy(*iconrow++,"\\|/");
83 strcpy(*iconrow ,"/|\\");
84 break;
85 case 't':
86 case 'T': /* teleport */
87 strcpy(*iconrow++,"(*)");
88 strcpy(*iconrow, "(*)");
89 break;
90 case 'X': /* exits */
91 strcpy(*iconrow++,"Way");
92 strcpy(*iconrow, "Out");
93 break;
94 case '!': /* landmine */
95 strcpy(*iconrow++," I ");
96 strcpy(*iconrow, " o ");
97 break;
98 case 'M': /* big monster */
99 strcpy(*iconrow++,"}o{");
100 strcpy(*iconrow, "/^\\");
101 break;
102 case 'S': /* baby monster */
103 strcpy(*iconrow++,"-o-");
104 strcpy(*iconrow, "/*\\");
105 break;
106 case '^': /* balloon */
107 strcpy(*iconrow++,"/~\\");
108 strcpy(*iconrow, "\\_X");
109 break;
110 case 'C': /* time capsule */
111 strcpy(*iconrow++," ");
112 strcpy(*iconrow, "<O>");
113 break;
114 case '+': /* cage */
115 strcpy(*iconrow++,"TTT");
116 strcpy(*iconrow, "III");
117 break;
118 case '_': /* more wall characters */
119 strcpy(*iconrow++,"_|_");
120 strcpy(*iconrow ,"_|_");
121 break;
122 case 'B': /* the bomb */
123 strcpy(*iconrow++,"/\\*");
124 strcpy(*iconrow ,"\\/ ");
125 break;
126 case '%': /* the explosion */
127 strcpy(*iconrow++,"Ba\\");
128 strcpy(*iconrow ,"\\ng");
129 break;
130 default: /* this is what it uses if it doesnt */
131 /* recognise the character */
132 strcpy(*iconrow++,"OoO");
133 strcpy(*iconrow, "oOo");
134 break;
135 };
136 move(y+1,x+1);
137 iconrow--;
138 addstr(*iconrow++);
139 move(y+2,x+1);
140 addstr(*iconrow);
141 }
142