d_items.c 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  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. * Something to do with weapon sprite frames. Don't ask me.
  31. *
  32. *-----------------------------------------------------------------------------
  33. */
  34. // We are referring to sprite numbers.
  35. #include "doomtype.h"
  36. #include "info.h"
  37. #ifdef __GNUG__
  38. #pragma implementation "d_items.h"
  39. #endif
  40. #include "d_items.h"
  41. //
  42. // PSPRITE ACTIONS for waepons.
  43. // This struct controls the weapon animations.
  44. //
  45. // Each entry is:
  46. // ammo/amunition type
  47. // upstate
  48. // downstate
  49. // readystate
  50. // atkstate, i.e. attack/fire/hit frame
  51. // flashstate, muzzle flash
  52. //
  53. weaponinfo_t weaponinfo[NUMWEAPONS] =
  54. {
  55. {
  56. // fist
  57. am_noammo,
  58. S_PUNCHUP,
  59. S_PUNCHDOWN,
  60. S_PUNCH,
  61. S_PUNCH1,
  62. S_NULL
  63. },
  64. {
  65. // pistol
  66. am_clip,
  67. S_PISTOLUP,
  68. S_PISTOLDOWN,
  69. S_PISTOL,
  70. S_PISTOL1,
  71. S_PISTOLFLASH
  72. },
  73. {
  74. // shotgun
  75. am_shell,
  76. S_SGUNUP,
  77. S_SGUNDOWN,
  78. S_SGUN,
  79. S_SGUN1,
  80. S_SGUNFLASH1
  81. },
  82. {
  83. // chaingun
  84. am_clip,
  85. S_CHAINUP,
  86. S_CHAINDOWN,
  87. S_CHAIN,
  88. S_CHAIN1,
  89. S_CHAINFLASH1
  90. },
  91. {
  92. // missile launcher
  93. am_misl,
  94. S_MISSILEUP,
  95. S_MISSILEDOWN,
  96. S_MISSILE,
  97. S_MISSILE1,
  98. S_MISSILEFLASH1
  99. },
  100. {
  101. // plasma rifle
  102. am_cell,
  103. S_PLASMAUP,
  104. S_PLASMADOWN,
  105. S_PLASMA,
  106. S_PLASMA1,
  107. S_PLASMAFLASH1
  108. },
  109. {
  110. // bfg 9000
  111. am_cell,
  112. S_BFGUP,
  113. S_BFGDOWN,
  114. S_BFG,
  115. S_BFG1,
  116. S_BFGFLASH1
  117. },
  118. {
  119. // chainsaw
  120. am_noammo,
  121. S_SAWUP,
  122. S_SAWDOWN,
  123. S_SAW,
  124. S_SAW1,
  125. S_NULL
  126. },
  127. {
  128. // super shotgun
  129. am_shell,
  130. S_DSGUNUP,
  131. S_DSGUNDOWN,
  132. S_DSGUN,
  133. S_DSGUN1,
  134. S_DSGUNFLASH1
  135. },
  136. };