Starshatter_Open
Open source Starshatter engine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
CombatAssignment.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: CombatAssignment.h
7  AUTHOR: John DiCamillo
8 
9 
10  OVERVIEW
11  ========
12  High level assignment of one group to damage another
13 */
14 
15 #ifndef CombatAssignment_h
16 #define CombatAssignment_h
17 
18 #include "Types.h"
19 #include "List.h"
20 
21 // +--------------------------------------------------------------------+
22 
23 class CombatGroup;
24 class SimRegion;
25 
26 // +--------------------------------------------------------------------+
27 
29 {
30 public:
31  static const char* TYPENAME() { return "CombatAssignment"; }
32 
33  CombatAssignment(int t, CombatGroup* obj, CombatGroup* rsc=0);
35 
36  int operator < (const CombatAssignment& a) const;
37 
38  // operations:
39  void SetObjective(CombatGroup* o) { objective = o; }
40  void SetResource(CombatGroup* r) { resource = r; }
41 
42  // accessors:
43  int Type() { return type; }
44  CombatGroup* GetObjective() { return objective; }
45  CombatGroup* GetResource() { return resource; }
46 
47  const char* GetDescription() const;
48  bool IsActive() const { return resource != 0; }
49 
50 private:
51  int type;
52  CombatGroup* objective;
53  CombatGroup* resource;
54 };
55 
56 
57 #endif CombatAssignment_h