home *** CD-ROM | disk | FTP | other *** search
/ Enter 2005 March / ENTER.ISO / files / fwp-0.0.6-win32-installer.exe / WeaponEffectsParticleClusters.h < prev    next >
Encoding:
C/C++ Source or Header  |  2004-12-24  |  3.5 KB  |  185 lines

  1. #ifndef __WeaponEffectsParticleClusters_h__
  2. #define __WeaponEffectsParticleClusters_h__
  3.  
  4.  
  5. #include "ParticleCluster.h"
  6.  
  7. #include "ChaingunShot.h"
  8. #include "PlasmagunShot.h"
  9. #include "Model.h"
  10.  
  11. class ChaingunMuzzleFlashParticleCluster: public ParticleCluster{
  12. public:
  13.     vec3_t dir, up, left;
  14.     Model* model;
  15.     int clientId;
  16.     int weaponId;
  17.  
  18.     ChaingunMuzzleFlashParticleCluster(ChaingunShot* shot);
  19.     ~ChaingunMuzzleFlashParticleCluster();
  20.  
  21.     void render();
  22. };
  23.  
  24. class ChaingunImpactParticleCluster: public ParticleCluster{
  25. public:
  26.     Shader* shader;
  27.  
  28.     ChaingunImpactParticleCluster(ChaingunShot* shot, vec3_t pos);
  29.     ~ChaingunImpactParticleCluster();
  30.  
  31.     void render();
  32. };
  33.  
  34. class ChaingunRicochetParticleCluster: public ParticleCluster{
  35. public:
  36.     vec3_t pos2, dir;
  37.     Shader* shader;
  38.  
  39.     ChaingunRicochetParticleCluster(vec3_t pos1, vec3_t pos2);
  40.     ~ChaingunRicochetParticleCluster();
  41.  
  42.     void render();
  43. };
  44.  
  45. class ChaingunMarkParticleCluster: public ParticleCluster{
  46. public:
  47.     vec3_t p1, p2, p3, p4;
  48.     Shader* shader;
  49.  
  50.     ChaingunMarkParticleCluster(vec3_t pos, Face* face);
  51.     ~ChaingunMarkParticleCluster();
  52.  
  53.     void render();
  54. };
  55.  
  56.  
  57.  
  58.  
  59. class PlasmagunImpactParticleCluster: public ParticleCluster{
  60. public:
  61.     Shader* shader;
  62.  
  63.     PlasmagunImpactParticleCluster(PlasmagunShot* shot, vec3_t pos);
  64.     ~PlasmagunImpactParticleCluster();
  65.  
  66.     void render();
  67. };
  68.  
  69. class PlasmagunMarkParticleCluster: public ParticleCluster{
  70. public:
  71.     vec3_t p1, p2, p3, p4;
  72.     Shader* shader;
  73.  
  74.     PlasmagunMarkParticleCluster(vec3_t pos, Face* face);
  75.     ~PlasmagunMarkParticleCluster();
  76.  
  77.     void render();
  78. };
  79.  
  80.  
  81.  
  82.  
  83. class LaserMarkParticleCluster: public ParticleCluster{
  84. public:
  85.     vec3_t p1, p2, p3, p4;
  86.     Shader* shader;
  87.  
  88.     LaserMarkParticleCluster(vec3_t pos, Face* face);
  89.     ~LaserMarkParticleCluster();
  90.  
  91.     void render();
  92. };
  93.  
  94.  
  95.  
  96.  
  97. class RailgunTrailParticleCluster: public ParticleCluster{
  98. public:
  99.     vec3_t pos2, dir;
  100.     Shader* shader;
  101.  
  102.     RailgunTrailParticleCluster(vec3_t pos1, vec3_t pos2);
  103.     ~RailgunTrailParticleCluster();
  104.  
  105.     void render();
  106. };
  107.  
  108. class RailgunImpactParticleCluster: public ParticleCluster{
  109. public:
  110.     Face* face;
  111.     Shader* shader;
  112.  
  113.     RailgunImpactParticleCluster(vec3_t pos, Face* face);
  114.     ~RailgunImpactParticleCluster();
  115.  
  116.     void render();
  117. };
  118.  
  119. class RailgunMarkParticleCluster: public ParticleCluster{
  120. public:
  121.     vec3_t p1, p2, p3, p4;
  122.     Shader* shader;
  123.  
  124.     RailgunMarkParticleCluster(vec3_t pos, Face* face);
  125.     ~RailgunMarkParticleCluster();
  126.  
  127.     void render();
  128. };
  129.  
  130.  
  131.  
  132. class TinyExplosionParticleCluster: public ParticleCluster{
  133. public:
  134.     Shader* shader;
  135.  
  136.     TinyExplosionParticleCluster(vec3_t pos);
  137.     ~TinyExplosionParticleCluster();
  138.  
  139.     void render();
  140. };
  141.  
  142. class SmallExplosionParticleCluster: public ParticleCluster{
  143. public:
  144.     Shader* shader;
  145.  
  146.     SmallExplosionParticleCluster(vec3_t pos);
  147.     ~SmallExplosionParticleCluster();
  148.  
  149.     void render();
  150. };
  151.  
  152. class MediumExplosionParticleCluster: public ParticleCluster{
  153. public:
  154.     Shader* shader;
  155.  
  156.     MediumExplosionParticleCluster(vec3_t pos);
  157.     ~MediumExplosionParticleCluster();
  158.  
  159.     void render();
  160. };
  161.  
  162. class BigExplosionParticleCluster: public ParticleCluster{
  163. public:
  164.     Shader* shader;
  165.  
  166.     BigExplosionParticleCluster(vec3_t pos);
  167.     ~BigExplosionParticleCluster();
  168.  
  169.     void render();
  170. };
  171.  
  172.  
  173. class SmallSmokePuffParticleCluster: public ParticleCluster{
  174. public:
  175.     Shader* shader;
  176.  
  177.     SmallSmokePuffParticleCluster(vec3_t pos);
  178.     ~SmallSmokePuffParticleCluster();
  179.  
  180.     void render();
  181. };
  182.  
  183.  
  184. #endif    /* __WeaponEffectsParticleClusters_h__ */
  185.