Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. // Emacs style mode select   -*- C++ -*-
  2. //-----------------------------------------------------------------------------
  3. //
  4. // $Id:$
  5. //
  6. // Copyright (C) 1993-1996 by id Software, Inc.
  7. //
  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.
  11. //
  12. // The source is distributed in the hope that it will be useful,
  13. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. // FITNESS FOR A PARTICULAR PURPOSE. See the DOOM Source Code License
  15. // for more details.
  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. //-----------------------------------------------------------------------------
  83.