Starshatter_Open
Open source Starshatter engine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
StarshipAI.h
Go to the documentation of this file.
1 /* Project Starshatter 4.5
2  Destroyer Studios LLC
3  Copyright © 1997-2004. All Rights Reserved.
4 
5  SUBSYSTEM: Stars.exe
6  FILE: FighterAI.h
7  AUTHOR: John DiCamillo
8 
9 
10  OVERVIEW
11  ========
12  Starship (low-level) Artifical Intelligence class
13 */
14 
15 #ifndef StarshipAI_h
16 #define StarshipAI_h
17 
18 #include "Types.h"
19 #include "ShipAI.h"
20 
21 // +--------------------------------------------------------------------+
22 
23 class StarshipAI : public ShipAI
24 {
25 public:
27  virtual ~StarshipAI();
28 
29  // convert the goal point from world to local coords:
30  virtual void FindObjective();
31 
32 protected:
33  // accumulate behaviors:
34  virtual void Navigator();
35  virtual Steer SeekTarget();
36  virtual Steer AvoidCollision();
37 
38  // steering functions:
39  virtual Steer Seek(const Point& point);
40  virtual Steer Flee(const Point& point);
41  virtual Steer Avoid(const Point& point, float radius);
42 
43  virtual Point Transform(const Point& pt);
44 
45  // fire on target if appropriate:
46  virtual void FireControl();
47  virtual void HelmControl();
48  virtual void ThrottleControl();
49 
52 
57 };
58 
59 // +--------------------------------------------------------------------+
60 
61 #endif StarshipAI_h
62