|
|
1.1 root 1: // Emacs style mode select -*- C++ -*-
2: //-----------------------------------------------------------------------------
3: //
4: // $Id:$
5: //
6: // Copyright (C) 1993-1996 by id Software, Inc.
7: //
1.1.1.2 ! root 8: // This program is free software; you can redistribute it and/or
! 9: // modify it under the terms of the GNU General Public License
! 10: // as published by the Free Software Foundation; either version 2
! 11: // of the License, or (at your option) any later version.
1.1 root 12: //
1.1.1.2 ! root 13: // This program is distributed in the hope that it will be useful,
1.1 root 14: // but WITHOUT ANY WARRANTY; without even the implied warranty of
1.1.1.2 ! root 15: // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! 16: // GNU General Public License for more details.
1.1 root 17: //
18: // DESCRIPTION:
19: // Sprite animation.
20: //
21: //-----------------------------------------------------------------------------
22:
23:
24: #ifndef __P_PSPR__
25: #define __P_PSPR__
26:
27: // Basic data types.
28: // Needs fixed point, and BAM angles.
29: #include "m_fixed.h"
30: #include "tables.h"
31:
32:
33: //
34: // Needs to include the precompiled
35: // sprite animation tables.
36: // Header generated by multigen utility.
37: // This includes all the data for thing animation,
38: // i.e. the Thing Atrributes table
39: // and the Frame Sequence table.
40: #include "info.h"
41:
42: #ifdef __GNUG__
43: #pragma interface
44: #endif
45:
46:
47: //
48: // Frame flags:
49: // handles maximum brightness (torches, muzzle flare, light sources)
50: //
51: #define FF_FULLBRIGHT 0x8000 // flag in thing->frame
52: #define FF_FRAMEMASK 0x7fff
53:
54:
55:
56: //
57: // Overlay psprites are scaled shapes
58: // drawn directly on the view screen,
59: // coordinates are given for a 320*200 view screen.
60: //
61: typedef enum
62: {
63: ps_weapon,
64: ps_flash,
65: NUMPSPRITES
66:
67: } psprnum_t;
68:
69: typedef struct
70: {
71: state_t* state; // a NULL state means not active
72: int tics;
73: fixed_t sx;
74: fixed_t sy;
75:
76: } pspdef_t;
77:
78: #endif
79: //-----------------------------------------------------------------------------
80: //
81: // $Log:$
82: //
83: //-----------------------------------------------------------------------------
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.