Starshatter_Open
Open source Starshatter engine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
GroundAI.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: GroundAI.h
7  AUTHOR: John DiCamillo
8 
9 
10  OVERVIEW
11  ========
12  Ground Unit (low-level) Artifical Intelligence class
13 */
14 
15 #ifndef GroundAI_h
16 #define GroundAI_h
17 
18 #include "Types.h"
19 #include "SimObject.h"
20 #include "Director.h"
21 #include "Geometry.h"
22 
23 // +--------------------------------------------------------------------+
24 
25 class Ship;
26 class System;
27 class CarrierAI;
28 
29 // +--------------------------------------------------------------------+
30 
31 class GroundAI : public Director,
32 public SimObserver
33 {
34 public:
35  GroundAI(SimObject* self);
36  virtual ~GroundAI();
37 
38  virtual void ExecFrame(double seconds);
39  virtual void SetTarget(SimObject* targ, System* sub=0);
40  virtual SimObject* GetTarget() const { return target; }
41  virtual System* GetSubTarget() const { return subtarget; }
42  virtual int Type() const;
43 
44  virtual bool Update(SimObject* obj);
45  virtual const char* GetObserverName() const;
46 
47 protected:
48  virtual void SelectTarget();
49 
53  double exec_time;
55 };
56 
57 
58 // +--------------------------------------------------------------------+
59 
60 #endif GroundAI_h
61