19 #ifndef OPENXCOM_RULEALIENMISSION_H
20 #define OPENXCOM_RULEALIENMISSION_H
24 #include <yaml-cpp/yaml.h>
29 class WeightedOptions;
68 const std::string &
getType()
const {
return _type; }
70 const std::string
generateRace(
const size_t monthsPassed)
const;
72 const std::string
getTopRace(
const size_t monthsPassed)
const;
74 void load(
const YAML::Node &node);
85 std::vector<std::pair<size_t, WeightedOptions*> > _raceDistribution;
87 std::vector<MissionWave> _waves;
size_t getWaveCount() const
Gets the number of waves.
Definition: RuleAlienMission.h:76
std::string ufoType
The type of the spawned UFOs.
Definition: RuleAlienMission.h:38
int getPoints() const
Gets the score for this mission.
Definition: RuleAlienMission.cpp:154
~RuleAlienMission()
Releases all resources held by the mission.
Definition: RuleAlienMission.cpp:142
size_t ufoCount
The number of UFOs that will be generated.
Definition: RuleAlienMission.h:43
const std::string generateRace(const size_t monthsPassed) const
Gets a race based on the game time and the racial distribution.
Definition: RuleAlienMission.cpp:124
size_t spawnTimer
Number of minutes between UFOs in the wave.
Definition: RuleAlienMission.h:53
std::string trajectory
The trajectory ID for this wave's UFOs.
Definition: RuleAlienMission.h:48
Information about a mission wave.
Definition: RuleAlienMission.h:35
Stores fixed information about a mission type.
Definition: RuleAlienMission.h:61
const MissionWave & getWave(size_t index) const
Gets the full wave information.
Definition: RuleAlienMission.h:78
const std::string getTopRace(const size_t monthsPassed) const
Gets the most likely race based on the game time and the racial distribution.
Definition: RuleAlienMission.cpp:133
void load(const YAML::Node &node)
Loads alien mission data from YAML.
Definition: RuleAlienMission.cpp:62
const std::string & getType() const
Gets the mission's type.
Definition: RuleAlienMission.h:68