DEADSOFTWARE

7b822f624739b7022f4c8fc13ee4bf4fdcaad732
[flatwaifu.git] / src / monster.h
1 /*
2 Copyright (C) Prikol Software 1996-1997
3 Copyright (C) Aleksey Volynskov 1996-1997
5 This file is part of the Doom2D:Rembo project.
7 Doom2D:Rembo is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License version 2 as
9 published by the Free Software Foundation.
11 Doom2D:Rembo 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.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, see <http://www.gnu.org/licenses/> or
18 write to the Free Software Foundation, Inc.,
19 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20 */
22 // Monsters
24 #define MAXMN 200
26 enum{
27 MN_NONE,MN_DEMON,MN_IMP,MN_ZOMBY,MN_SERG,MN_CYBER,MN_CGUN,
28 MN_BARON,MN_KNIGHT,MN_CACO,MN_SOUL,MN_PAIN,MN_SPIDER,MN_BSP,
29 MN_MANCUB,MN_SKEL,MN_VILE,MN_FISH,MN_BARREL,MN_ROBO,MN_MAN,
30 MN__LAST,
31 MN_PL_DEAD=100,MN_PL_MESS
32 };
34 #define MN_TN (MN__LAST-MN_DEMON)
36 #pragma pack(1)
37 typedef struct{
38 obj_t o;
39 byte t,d,st,ftime;
40 int fobj;
41 int s;
42 char *ap;
43 int aim,life,pain,ac,tx,ty,ammo;
44 short atm;
45 }mn_t;
46 #pragma pack(0)
48 extern mn_t mn[MAXMN];
50 void MN_init(void);
51 void MN_alloc(void);
52 int MN_spawn(int,int,byte,int);
53 int MN_spawn_deadpl(obj_t *,byte,int);
54 void MN_act(void);
55 void MN_mark(void);
56 void MN_warning(int l,int t,int r,int b);
58 void MN_killedp(void);