Starshatter_Open
Open source Starshatter engine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
CarrierAI.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: CarrierAI.h
7  AUTHOR: John DiCamillo
8 
9 
10  OVERVIEW
11  ========
12  "Air Boss" AI class for managing carrier fighter squadrons
13 */
14 
15 #ifndef CarrierAI_h
16 #define CarrierAI_h
17 
18 #include "Types.h"
19 #include "Director.h"
20 
21 // +--------------------------------------------------------------------+
22 
23 class Sim;
24 class Ship;
25 class ShipAI;
26 class Instruction;
27 class Hangar;
28 class Element;
29 class FlightPlanner;
30 
31 // +--------------------------------------------------------------------+
32 
33 class CarrierAI : public Director
34 {
35 public:
36  CarrierAI(Ship* s, int level);
37  virtual ~CarrierAI();
38 
39  virtual void ExecFrame(double seconds);
40 
41 protected:
42  virtual bool CheckPatrolCoverage();
43  virtual bool CheckHostileElements();
44 
45  virtual bool CreateStrike(Element* elem);
46 
47  virtual Element* CreatePackage(int squad, int size, int code, const char* target=0, const char* loadname=0);
48  virtual bool LaunchElement(Element* elem);
49 
50  Sim* sim;
54  int exec_time;
55  int hold_time;
56  int ai_level;
57 
59 };
60 
61 // +--------------------------------------------------------------------+
62 
63 #endif CarrierAI_h
64