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