22 #include <yaml-cpp/yaml.h> 24 #include "../Savegame/WeightedOptions.h" 34 std::vector<std::string> items;
40 int lowQty, highQty, dQty, extraQty;
41 int percentageOutsideUfo;
42 std::vector<ItemSet> itemSets;
46 int palette, textOffset;
47 std::string title, desc, music, background, cutscene;
48 bool showCraft, showTarget;
49 BriefingData() : palette(0), textOffset(0), music(
"GMDEFEND"), background(
"BACK16.SCR"), showCraft(
true), showTarget(
true) { };
51 enum ChronoTrigger { FORCE_LOSE, FORCE_ABORT, FORCE_WIN };
52 enum EscapeType { ESCAPE_NONE, ESCAPE_EXIT, ESCAPE_ENTRY, ESCAPE_EITHER };
67 std::vector<DeploymentData> _data;
68 int _width, _length, _height, _civilians;
69 std::vector<std::string> _terrains, _music;
71 std::string _nextStage, _race, _script;
72 bool _finalDestination, _isAlienBase;
73 std::string _winCutscene, _loseCutscene, _abortCutscene;
74 std::string _alert, _alertBackground;
76 std::string _markerName, _objectivePopup, _objectiveCompleteText, _objectiveFailedText;
78 int _markerIcon, _durationMin, _durationMax, _minDepth, _maxDepth, _genMissionFrequency;
79 int _objectiveType, _objectivesRequired, _objectiveCompleteScore, _objectiveFailedScore, _despawnPenalty, _points, _turnLimit, _cheatTurn;
80 ChronoTrigger _chronoTrigger;
81 EscapeType _escapeType;
88 void load(
const YAML::Node& node,
Mod *mod);
94 void getDimensions(
int *width,
int *length,
int *height)
const;
130 std::vector<std::string> &
getMusic();
162 std::string getGenMissionType()
const;
164 int getGenMissionFrequency()
const;
166 EscapeType getEscapeType()
const;
bool isFinalDestination() const
Checks if this is the destination for the final mission (mars stage 1, t'leth stage 1)...
Definition: AlienDeployment.cpp:288
int getMaxDepth() const
Gets the maximum depth.
Definition: AlienDeployment.cpp:405
int getCivilians() const
Gets civilians.
Definition: AlienDeployment.cpp:234
std::string getAlertBackground() const
Gets the alert background for this mission type.
Definition: AlienDeployment.cpp:333
bool getObjectiveFailedInfo(std::string &text, int &score) const
Fills out the objective failed info.
Definition: AlienDeployment.cpp:456
std::string getNextStage() const
Gets the next stage of the mission.
Definition: AlienDeployment.cpp:261
Definition: AlienDeployment.h:44
bool isAlienBase() const
Gets whether or not this is an alien base (purely for new battle mode)
Definition: AlienDeployment.cpp:509
~AlienDeployment()
Cleans up the Alien Deployment ruleset.
Definition: AlienDeployment.cpp:125
std::string getAbortCutscene() const
Gets the cutscene to play when this mission is aborted.
Definition: AlienDeployment.cpp:315
int getTurnLimit() const
Gets the turn limit for this deployment.
Definition: AlienDeployment.cpp:486
Contains all the game-specific static data that never changes throughout the game, like rulesets and resources.
Definition: Mod.h:87
std::string getAlertMessage() const
Gets the alert message for this mission type.
Definition: AlienDeployment.cpp:324
int getObjectiveType() const
Gets the target type for this mission.
Definition: AlienDeployment.cpp:414
std::vector< DeploymentData > * getDeploymentData()
Gets a pointer to the data.
Definition: AlienDeployment.cpp:212
int getDurationMin() const
Gets the minimum duration for this mission.
Definition: AlienDeployment.cpp:369
std::string getWinCutscene() const
Gets the cutscene to play when this mission is won.
Definition: AlienDeployment.cpp:297
std::string getMarkerName() const
Gets the marker name for this mission.
Definition: AlienDeployment.cpp:351
int getCheatTurn() const
Gets which turn the aliens start cheating on.
Definition: AlienDeployment.cpp:504
Definition: AlienDeployment.h:32
int getPoints() const
Gets the (half hourly) score penalty XCom receives for this site existing.
Definition: AlienDeployment.cpp:477
BriefingData getBriefingData() const
Gets the briefing data for this mission type.
Definition: AlienDeployment.cpp:342
std::string getType() const
Gets the Alien Deployment's type.
Definition: AlienDeployment.cpp:203
std::string getObjectivePopup() const
Gets the string to pop up when the mission objectives are complete.
Definition: AlienDeployment.cpp:432
int getDurationMax() const
Gets the maximum duration for this mission.
Definition: AlienDeployment.cpp:378
AlienDeployment(const std::string &type)
Creates a blank Alien Deployment ruleset.
Definition: AlienDeployment.cpp:116
ChronoTrigger getChronoTrigger() const
Gets the action that triggers when the timer runs out.
Definition: AlienDeployment.cpp:495
int getMinDepth() const
Gets the minimum depth.
Definition: AlienDeployment.cpp:396
std::vector< std::string > getTerrains() const
Gets the terrain for battlescape generation.
Definition: AlienDeployment.cpp:243
std::string getRace() const
Gets the race to use in the next stage.
Definition: AlienDeployment.cpp:270
std::string getLoseCutscene() const
Gets the cutscene to play when this mission is lost.
Definition: AlienDeployment.cpp:306
std::string getScript() const
Gets the script to use for this deployment.
Definition: AlienDeployment.cpp:279
bool getObjectiveCompleteInfo(std::string &text, int &score) const
Fills out the objective complete info.
Definition: AlienDeployment.cpp:443
std::vector< std::string > & getMusic()
Gets the list of music to pick from.
Definition: AlienDeployment.cpp:387
Definition: AlienDeployment.h:37
int getObjectivesRequired() const
Gets a fixed number of objectives requires (if any).
Definition: AlienDeployment.cpp:423
int getShade() const
Gets the shade level for battlescape generation.
Definition: AlienDeployment.cpp:252
void load(const YAML::Node &node, Mod *mod)
Loads Alien Deployment data from YAML.
Definition: AlienDeployment.cpp:134
int getMarkerIcon() const
Gets the marker icon for this mission.
Definition: AlienDeployment.cpp:360
int getMinSiteDepth() const
Gets the minimum site depth.
Represents a specific type of Alien Deployment.
Definition: AlienDeployment.h:63
Holds pairs of relative weights and IDs.
Definition: WeightedOptions.h:33
int getMaxSiteDepth() const
Gets the maximum site depth.
int getDespawnPenalty() const
Gets the score penalty XCom receives for ignoring this site.
Definition: AlienDeployment.cpp:467
Definition: BaseInfoState.cpp:40
void getDimensions(int *width, int *length, int *height) const
Gets dimensions.
Definition: AlienDeployment.cpp:223