Starshatter_Open
Open source Starshatter engine
Main Page
Classes
Files
File List
File Members
All
Classes
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
CampaignMissionStarship.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: CampaignMissionStarship.h
7
AUTHOR: John DiCamillo
8
9
10
OVERVIEW
11
========
12
CampaignMissionStarship generates missions and mission
13
info for the player's STARSHIP GROUP as part of a
14
dynamic campaign.
15
*/
16
17
#ifndef CampaignMissionStarship_h
18
#define CampaignMissionStarship_h
19
20
#include "
Types.h
"
21
#include "
Geometry.h
"
22
#include "
List.h
"
23
#include "
Text.h
"
24
25
// +--------------------------------------------------------------------+
26
27
class
Campaign
;
28
class
CampaignMissionRequest
;
29
class
CombatGroup
;
30
class
CombatUnit
;
31
class
CombatZone
;
32
class
Mission
;
33
class
MissionElement
;
34
class
MissionInfo
;
35
class
MissionTemplate
;
36
37
// +--------------------------------------------------------------------+
38
39
class
CampaignMissionStarship
40
{
41
public
:
42
static
const
char
*
TYPENAME
() {
return
"CampaignMissionStarship"
; }
43
44
CampaignMissionStarship
(
Campaign
* c);
45
virtual
~CampaignMissionStarship
();
46
47
virtual
void
CreateMission
(
CampaignMissionRequest
*
request
);
48
49
protected
:
50
virtual
Mission
*
GenerateMission
(
int
id
);
51
virtual
void
SelectType
();
52
virtual
void
SelectRegion
();
53
virtual
void
GenerateStandardElements
();
54
virtual
void
GenerateMissionElements
();
55
virtual
void
CreateElements
(
CombatGroup
* g);
56
virtual
void
CreateSquadron
(
CombatGroup
* g);
57
virtual
void
CreatePlayer
();
58
59
virtual
void
CreateWards
();
60
virtual
void
CreateWardFreight
();
61
62
virtual
void
CreateEscorts
();
63
64
virtual
void
CreateTargets
();
65
virtual
void
CreateTargetsAssault
();
66
virtual
void
CreateTargetsPatrol
();
67
virtual
void
CreateTargetsCarrier
();
68
virtual
void
CreateTargetsFreightEscort
();
69
virtual
int
CreateRandomTarget
(
const
char
* rgn,
Point
base_loc);
70
71
virtual
MissionElement
*
72
CreateSingleElement
(
CombatGroup
* g,
73
CombatUnit
* u);
74
virtual
MissionElement
*
75
CreateFighterPackage
(
CombatGroup
* squadron,
76
int
count,
77
int
role);
78
79
virtual
CombatGroup
*
FindSquadron
(
int
iff,
int
type);
80
virtual
CombatUnit
*
FindCarrier
(
CombatGroup
* g);
81
82
virtual
void
DefineMissionObjectives
();
83
virtual
MissionInfo
*
DescribeMission
();
84
virtual
void
Exit
();
85
86
Campaign
*
campaign
;
87
CampaignMissionRequest
*
request
;
88
MissionInfo
*
mission_info
;
89
90
CombatUnit
*
player_unit
;
91
CombatGroup
*
player_group
;
92
CombatGroup
*
strike_group
;
93
CombatGroup
*
strike_target
;
94
Mission
*
mission
;
95
List<MissionElement>
player_group_elements
;
96
MissionElement
*
player
;
97
MissionElement
*
ward
;
98
MissionElement
*
prime_target
;
99
MissionElement
*
escort
;
100
101
int
ownside
;
102
int
enemy
;
103
int
mission_type
;
104
};
105
106
#endif CampaignMissionStarship_h
107
Stars45
CampaignMissionStarship.h
Generated on Tue Jun 5 2012 20:46:46 for Starshatter_Open by
1.8.1