From 8898ad9b25fca6afe2374d293a981db02a83d7e9 Mon Sep 17 00:00:00 2001 From: "FWoltermann@gmail.com" Date: Thu, 31 May 2012 14:46:27 +0000 Subject: Committing the documentation to svn to have it accessible online --- Doc/doxygen/html/_mission_8h_source.html | 543 +++++++++++++++++++++++++++++++ 1 file changed, 543 insertions(+) create mode 100644 Doc/doxygen/html/_mission_8h_source.html (limited to 'Doc/doxygen/html/_mission_8h_source.html') diff --git a/Doc/doxygen/html/_mission_8h_source.html b/Doc/doxygen/html/_mission_8h_source.html new file mode 100644 index 0000000..0ee639c --- /dev/null +++ b/Doc/doxygen/html/_mission_8h_source.html @@ -0,0 +1,543 @@ + + + + + +Starshatter_Open: D:/SRC/StarshatterSVN/Stars45/Mission.h Source File + + + + + + + + + + + + + +
+
+ + + + + + +
+
Starshatter_Open +
+
Open source Starshatter engine
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Mission.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: Mission.h
+
7  AUTHOR: John DiCamillo
+
8 
+
9 
+
10  OVERVIEW
+
11  ========
+
12  Simulation Universe and Region classes
+
13 */
+
14 
+
15 #ifndef Mission_h
+
16 #define Mission_h
+
17 
+
18 #include "Types.h"
+
19 #include "Intel.h"
+
20 #include "RLoc.h"
+
21 #include "Universe.h"
+
22 #include "Scene.h"
+
23 #include "Skin.h"
+
24 #include "Physical.h"
+
25 #include "Geometry.h"
+
26 #include "List.h"
+
27 #include "Text.h"
+
28 
+
29 // +--------------------------------------------------------------------+
+
30 
+
31 class Mission;
+
32 class MissionElement;
+
33 class MissionLoad;
+
34 class MissionEvent;
+
35 class MissionShip;
+
36 
+
37 class CombatGroup;
+
38 class CombatUnit;
+
39 
+
40 class Ship;
+
41 class System;
+
42 class Element;
+
43 class ShipDesign;
+
44 class WeaponDesign;
+
45 class StarSystem;
+
46 class Instruction;
+
47 
+
48 class Term;
+
49 class TermArray;
+
50 class TermStruct;
+
51 
+
52 // +--------------------------------------------------------------------+
+
53 
+
54 class Mission
+
55 {
+
56 public:
+
57  static const char* TYPENAME() { return "Mission"; }
+
58 
+
59  enum TYPE
+
60  {
+ + + + + + +
67  STRIKE, // ground attack
+
68  ASSAULT, // starship attack
+ + + + + + + + + + + + + + + + +
85  };
+
86 
+
87  Mission(int id, const char* filename=0, const char* path=0);
+
88  virtual ~Mission();
+
89 
+
90  int operator == (const Mission& m) const { return id == m.id; }
+
91 
+
92  virtual void Validate();
+
93  virtual bool Load(const char* filename=0, const char* path=0);
+
94  virtual bool Save();
+
95  virtual bool ParseMission(const char* buffer);
+
96  virtual void SetPlayer(MissionElement* player_element);
+
97  virtual MissionElement* GetPlayer();
+
98 
+
99  // accessors/mutators:
+
100  int Identity() const { return id; }
+
101  const char* FileName() const { return filename; }
+
102  const char* Name() const { return name; }
+
103  const char* Description() const { return desc; }
+
104  const char* Situation() const { return sitrep; }
+
105  const char* Objective() const { return objective; }
+
106  const char* Subtitles() const;
+
107  int Start() const { return start; }
+
108  double Stardate() const { return stardate; }
+
109  int Type() const { return type; }
+
110  const char* TypeName() const { return RoleName(type); }
+
111  int Team() const { return team; }
+
112  bool IsOK() const { return ok; }
+
113  bool IsActive() const { return active; }
+
114  bool IsComplete() const { return complete; }
+
115 
+
116  StarSystem* GetStarSystem() const { return star_system; }
+ +
118  const char* GetRegion() const { return region; }
+
119 
+ +
121  virtual MissionElement* FindElement(const char* name);
+
122  virtual void AddElement(MissionElement* elem);
+
123 
+ +
125  MissionEvent* FindEvent(int event_type) const;
+
126  virtual void AddEvent(MissionEvent* event);
+
127 
+
128  MissionElement* GetTarget() const { return target; }
+
129  MissionElement* GetWard() const { return ward; }
+
130 
+
131  void SetName(const char* n) { name = n; }
+
132  void SetDescription(const char* d) { desc = d; }
+
133  void SetSituation(const char* sit) { sitrep = sit; }
+
134  void SetObjective(const char* obj) { objective = obj; }
+
135  void SetStart(int s) { start = s; }
+
136  void SetType(int t) { type = t; }
+
137  void SetTeam(int iff) { team = iff; }
+
138  void SetStarSystem(StarSystem* s);
+
139  void SetRegion(const char* rgn) { region = rgn; }
+
140  void SetOK(bool a) { ok = a; }
+
141  void SetActive(bool a) { active = a; }
+
142  void SetComplete(bool c) { complete = c; }
+
143  void SetTarget(MissionElement* t) { target = t; }
+
144  void SetWard(MissionElement* w) { ward = w; }
+
145 
+
146  void ClearSystemList();
+
147 
+
148  void IncreaseElemPriority(int index);
+
149  void DecreaseElemPriority(int index);
+
150  void IncreaseEventPriority(int index);
+
151  void DecreaseEventPriority(int index);
+
152 
+
153  static const char* RoleName(int role);
+
154  static int TypeFromName(const char* n);
+
155 
+
156  Text ErrorMessage() const { return errmsg; }
+
157  void AddError(Text err);
+
158 
+
159  Text Serialize(const char* player_elem=0, int player_index=0);
+
160 
+
161 protected:
+ + + + +
166  void ParseLoadout(TermStruct* val, MissionElement* element);
+
167  RLoc* ParseRLoc(TermStruct* val);
+
168 
+
169  int id;
+
170  char filename[64];
+
171  char path[64];
+ + + +
175  int type;
+
176  int team;
+
177  int start;
+
178  double stardate;
+
179  bool ok;
+
180  bool active;
+
181  bool complete;
+
182  bool degrees;
+ + + + + + +
189 
+ + +
192 
+ + + +
196 };
+
197 
+
198 // +--------------------------------------------------------------------+
+
199 
+ +
201 {
+
202  friend class Mission;
+
203 
+
204 public:
+
205  static const char* TYPENAME() { return "MissionElement"; }
+
206 
+
207  MissionElement();
+
208  ~MissionElement();
+
209 
+
210  int operator == (const MissionElement& r) const { return id == r.id; }
+
211 
+
212  int Identity() const { return id; }
+
213  const Text& Name() const { return name; }
+
214  Text Abbreviation() const;
+
215  const Text& Carrier() const { return carrier; }
+
216  const Text& Commander() const { return commander; }
+
217  const Text& Squadron() const { return squadron; }
+
218  const Text& Path() const { return path; }
+
219  int ElementID() const { return elem_id; }
+
220  const ShipDesign* GetDesign() const { return design; }
+
221  const Skin* GetSkin() const { return skin; }
+
222  int Count() const { return count; }
+
223  int MaintCount() const { return maint_count; }
+
224  int DeadCount() const { return dead_count; }
+
225  int GetIFF() const { return IFF_code; }
+
226  int IntelLevel() const { return intel; }
+
227  int MissionRole() const { return mission_role; }
+
228  int Player() const { return player; }
+
229  Text RoleName() const;
+
230  Color MarkerColor() const;
+
231  bool IsStarship() const;
+
232  bool IsDropship() const;
+
233  bool IsStatic() const;
+
234  bool IsGroundUnit() const;
+
235  bool IsSquadron() const;
+
236  bool IsCarrier() const;
+
237  bool IsAlert() const { return alert; }
+
238  bool IsPlayable() const { return playable; }
+
239  bool IsRogue() const { return rogue; }
+
240  bool IsInvulnerable() const { return invulnerable; }
+
241  int RespawnCount() const { return respawns; }
+
242  int HoldTime() const { return hold_time; }
+
243  int CommandAI() const { return command_ai; }
+
244  int ZoneLock() const { return zone_lock; }
+
245 
+
246  const Text& Region() const { return rgn_name; }
+
247  Point Location() const;
+
248  RLoc& GetRLoc() { return rloc; }
+
249  double Heading() const { return heading; }
+
250 
+
251  Text GetShipName(int n) const;
+
252  Text GetRegistry(int n) const;
+
253 
+ + + + + +
259 
+
260  void SetName(const char* n) { name = n; }
+
261  void SetCarrier(const char* c) { carrier = c; }
+
262  void SetCommander(const char* c) { commander = c; }
+
263  void SetSquadron(const char* s) { squadron = s; }
+
264  void SetPath(const char* p) { path = p; }
+
265  void SetElementID(int id) { elem_id = id; }
+
266  void SetDesign(const ShipDesign* d){ design = d; }
+
267  void SetSkin(const Skin* s) { skin = s; }
+
268  void SetCount(int n) { count = n; }
+
269  void SetMaintCount(int n) { maint_count = n; }
+
270  void SetDeadCount(int n) { dead_count = n; }
+
271  void SetIFF(int iff) { IFF_code = iff; }
+
272  void SetIntelLevel(int i) { intel = i; }
+
273  void SetMissionRole(int r) { mission_role = r; }
+
274  void SetPlayer(int p) { player = p; }
+
275  void SetPlayable(bool p) { playable = p; }
+
276  void SetRogue(bool r) { rogue = r; }
+
277  void SetInvulnerable(bool n) { invulnerable = n; }
+
278  void SetAlert(bool a) { alert = a; }
+
279  void SetCommandAI(int a) { command_ai = a; }
+
280  void SetRegion(const char* rgn) { rgn_name = rgn; }
+
281  void SetLocation(const Point& p);
+
282  void SetRLoc(const RLoc& r);
+
283  void SetHeading(double h) { heading = h; }
+
284  void SetRespawnCount(int r) { respawns = r; }
+
285  void SetHoldTime(int t) { hold_time = t; }
+
286  void SetZoneLock(int z) { zone_lock = z; }
+
287 
+
288  void AddNavPoint(Instruction* pt, Instruction* afterPoint=0);
+
289  void DelNavPoint(Instruction* pt);
+
290  void ClearFlightPlan();
+
291  int GetNavIndex(const Instruction* n);
+
292 
+ +
294  void AddInstruction(const char* i) { instructions.append(new(__FILE__,__LINE__) Text(i)); }
+
295 
+ + + + +
300 
+
301 protected:
+
302  int id;
+ + + + + +
308  int elem_id;
+ +
310  const Skin* skin;
+
311  int count;
+ + +
314  int IFF_code;
+ +
316  int intel;
+
317  int respawns;
+ + +
320  int player;
+ +
322  bool alert;
+
323  bool playable;
+
324  bool rogue;
+ +
326 
+ + +
329  double heading;
+
330 
+ + +
333 
+ + + + + +
339 };
+
340 
+
341 // +--------------------------------------------------------------------+
+
342 
+ +
344 {
+
345  friend class Mission;
+
346 
+
347 public:
+
348  static const char* TYPENAME() { return "MissionLoad"; }
+
349 
+
350  MissionLoad(int ship=-1, const char* name=0);
+
351  ~MissionLoad();
+
352 
+
353  int GetShip() const;
+
354  void SetShip(int ship);
+
355 
+
356  Text GetName() const;
+
357  void SetName(Text name);
+
358 
+
359  int* GetStations();
+
360  int GetStation(int index);
+
361  void SetStation(int index, int selection);
+
362 
+
363 protected:
+
364  int ship;
+ +
366  int load[16];
+
367 };
+
368 
+
369 // +--------------------------------------------------------------------+
+
370 
+ +
372 {
+
373  friend class Mission;
+
374 
+
375 public:
+
376  static const char* TYPENAME() { return "MissionShip"; }
+
377 
+
378  MissionShip();
+ +
380 
+
381  const Text& Name() const { return name; }
+
382  const Text& RegNum() const { return regnum; }
+
383  const Text& Region() const { return region; }
+
384  const Skin* GetSkin() const { return skin; }
+
385  const Point& Location() const { return loc; }
+
386  const Point& Velocity() const { return velocity; }
+
387  int Respawns() const { return respawns; }
+
388  double Heading() const { return heading; }
+
389  double Integrity() const { return integrity; }
+
390  int Decoys() const { return decoys; }
+
391  int Probes() const { return probes; }
+
392  const int* Ammo() const { return ammo; }
+
393  const int* Fuel() const { return fuel; }
+
394 
+
395  void SetName(const char* n) { name = n; }
+
396  void SetRegNum(const char* n) { regnum = n; }
+
397  void SetRegion(const char* n) { region = n; }
+
398  void SetSkin(const Skin* s) { skin = s; }
+
399  void SetLocation(const Point& p) { loc = p; }
+
400  void SetVelocity(const Point& p) { velocity = p; }
+
401  void SetRespawns(int r) { respawns = r; }
+
402  void SetHeading(double h) { heading = h; }
+
403  void SetIntegrity(double n) { integrity = n; }
+
404  void SetDecoys(int d) { decoys = d; }
+
405  void SetProbes(int p) { probes = p; }
+
406  void SetAmmo(const int* a);
+
407  void SetFuel(const int* f);
+
408 
+
409 protected:
+ + + +
413  const Skin* skin;
+ + +
416  int respawns;
+
417  double heading;
+
418  double integrity;
+
419  int decoys;
+
420  int probes;
+
421  int ammo[16];
+
422  int fuel[4];
+
423 };
+
424 
+
425 #endif Mission_h
+
426 
+
+
+ + + + -- cgit v1.1