1 /* Emacs style mode select   -*- C++ -*-
2  *-----------------------------------------------------------------------------
3  *
4  *
5  *  PrBoom: a Doom port merged with LxDoom and LSDLDoom
6  *  based on BOOM, a modified and improved DOOM engine
7  *  Copyright (C) 1999 by
8  *  id Software, Chi Hoang, Lee Killough, Jim Flynn, Rand Phares, Ty Halderman
9  *  Copyright (C) 1999-2000 by
10  *  Jess Haas, Nicolas Kalkhof, Colin Phipps, Florian Schulze
11  *  Copyright 2005, 2006 by
12  *  Florian Schulze, Colin Phipps, Neil Stevens, Andrey Budko
13  *
14  *  This program is free software; you can redistribute it and/or
15  *  modify it under the terms of the GNU General Public License
16  *  as published by the Free Software Foundation; either version 2
17  *  of the License, or (at your option) any later version.
18  *
19  *  This program is distributed in the hope that it will be useful,
20  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
21  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22  *  GNU General Public License for more details.
23  *
24  *  You should have received a copy of the GNU General Public License
25  *  along with this program; if not, write to the Free Software
26  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
27  *  02111-1307, USA.
28  *
29  * DESCRIPTION:
30  *  AutoMap module.
31  *
32  *-----------------------------------------------------------------------------*/
33 
34 #ifndef __AMMAP_H__
35 #define __AMMAP_H__
36 
37 #include "d_event.h"
38 
39 #define MAPBITS 12
40 #define FRACTOMAPBITS (FRACBITS-MAPBITS)
41 
42 // Used by ST StatusBar stuff.
43 #define AM_MSGHEADER (('a'<<24)+('m'<<16))
44 #define AM_MSGENTERED (AM_MSGHEADER | ('e'<<8))
45 #define AM_MSGEXITED (AM_MSGHEADER | ('x'<<8))
46 
47 // Called by main loop.
48 boolean AM_Responder (event_t* ev);
49 
50 // Called by main loop.
51 void AM_Ticker (void);
52 
53 // Called by main loop,
54 // called instead of view drawer if automap active.
55 void AM_Drawer (void);
56 
57 // Called to force the automap to quit
58 // if the level is completed while it is up.
59 void AM_Stop (void);
60 
61 // killough 2/22/98: for saving automap information in savegame:
62 
63 extern void AM_Start(void);
64 
65 //jff 4/16/98 make externally available
66 
67 extern void AM_clearMarks(void);
68 
69 typedef struct
70 {
71  fixed_t x,y;
72 } mpoint_t;
73 
74 extern mpoint_t *markpoints;
75 extern int markpointnum, markpointnum_max;
76 
77 // end changes -- killough 2/22/98
78 
79 // killough 5/2/98: moved from m_misc.c
80 
81 //jff 1/7/98 automap colors added
82 extern int mapcolor_back;     // map background
83 extern int mapcolor_grid;     // grid lines color
84 extern int mapcolor_wall;     // normal 1s wall color
85 extern int mapcolor_fchg;     // line at floor height change color
86 extern int mapcolor_cchg;     // line at ceiling height change color
87 extern int mapcolor_clsd;     // line at sector with floor=ceiling color
88 extern int mapcolor_rkey;     // red key color
89 extern int mapcolor_bkey;     // blue key color
90 extern int mapcolor_ykey;     // yellow key color
91 extern int mapcolor_rdor;     // red door color (diff from keys to allow option)
92 extern int mapcolor_bdor;     // blue door color (of enabling one not other)
93 extern int mapcolor_ydor;     // yellow door color
94 extern int mapcolor_tele;     // teleporter line color
95 extern int mapcolor_secr;     // secret sector boundary color
96 //jff 4/23/98
97 extern int mapcolor_exit;     // exit line
98 extern int mapcolor_unsn;     // computer map unseen line color
99 extern int mapcolor_flat;     // line with no floor/ceiling changes
100 extern int mapcolor_sprt;     // general sprite color
101 extern int mapcolor_item;     // item sprite color
102 extern int mapcolor_enemy;    // enemy sprite color
103 extern int mapcolor_frnd;     // friendly sprite color
104 extern int mapcolor_hair;     // crosshair color
105 extern int mapcolor_sngl;     // single player arrow color
106 extern int mapcolor_plyr[4];  // colors for players in multiplayer
107 extern int mapcolor_me;       // consoleplayer's chosen colour
108 //jff 3/9/98
109 extern int map_secret_after;  // secrets do not appear til after bagged
110 
111 #endif
112