source: golgotha/src/golg/objs/guided_missile.hh

Last change on this file was 80, checked in by Sam Hocevar, 12 years ago
  • Adding the Golgotha source code. Not sure what's going to be interesting in there, but since it's all public domain, there's certainly stuff to pick up.
File size: 1.6 KB
Line 
1/********************************************************************** <BR>
2  This file is part of Crack dot Com's free source code release of
3  Golgotha. <a href="http://www.crack.com/golgotha_release"> <BR> for
4  information about compiling & licensing issues visit this URL</a>
5  <PRE> If that doesn't help, contact Jonathan Clark at
6  golgotha_source@usa.net (Subject should have "GOLG" in it)
7***********************************************************************/
8
9#ifndef GUIDED_MISSILE_HH
10#define GUIDED_MISSILE_HH
11
12#include "g1_object.hh"
13#include "player_type.hh"
14#include "path.hh"
15#include "sound/sfx_id.hh"
16#include "objs/light_o.hh"
17
18class g1_solid_class;
19class g1_map_piece_class;
20class g1_particle_emitter_class;
21class g1_voice_class;
22
23#define G1_GUIDED_MISSILE_DATA_VERSION 6
24
25class g1_guided_missile_class : public g1_object_class
26{
27protected: 
28  s1_sound_handle rumble_sound;
29
30  i4_float damping_fraction;
31  g1_typed_reference_class<g1_light_object_class> light;
32public:
33  g1_guided_missile_class(g1_object_type id, g1_loader_class *fp);
34   
35  virtual void setup(const i4_3d_vector &pos,
36                     const i4_3d_vector &dir,
37                     g1_object_class *this_guy_fired_me,
38                     g1_object_class *track_me);
39
40  virtual void start_sounds();
41
42  virtual void add_explode();
43
44  virtual void add_smoke();
45  virtual void update_smoke();
46  virtual void delete_smoke();
47  virtual void request_remove();
48
49  virtual void think();
50
51  virtual i4_bool move(i4_float x_amount,
52                       i4_float y_amount,
53                       i4_float z_amount);
54};
55
56#endif
Note: See TracBrowser for help on using the repository browser.