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, _minSiteDepth, _maxSiteDepth, _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);
90 std::string getType()
const;
92 std::vector<DeploymentData>* getDeploymentData();
94 void getDimensions(
int *width,
int *length,
int *height)
const;
96 int getCivilians()
const;
98 std::vector<std::string> getTerrains()
const;
100 int getShade()
const;
102 std::string getNextStage()
const;
104 std::string getRace()
const;
106 std::string getScript()
const;
108 bool isFinalDestination()
const;
110 std::string getWinCutscene()
const;
112 std::string getLoseCutscene()
const;
114 std::string getAbortCutscene()
const;
116 std::string getAlertMessage()
const;
118 std::string getAlertBackground()
const;
122 std::string getMarkerName()
const;
124 int getMarkerIcon()
const;
126 int getDurationMin()
const;
128 int getDurationMax()
const;
130 std::vector<std::string> &getMusic();
132 int getMinDepth()
const;
134 int getMaxDepth()
const;
136 int getMinSiteDepth()
const;
138 int getMaxSiteDepth()
const;
140 int getObjectiveType()
const;
142 int getObjectivesRequired()
const;
144 std::string getObjectivePopup()
const;
146 bool getObjectiveCompleteInfo(std::string &text,
int &score)
const;
148 bool getObjectiveFailedInfo(std::string &text,
int &score)
const;
150 int getDespawnPenalty()
const;
152 int getPoints()
const;
154 int getTurnLimit()
const;
156 ChronoTrigger getChronoTrigger()
const;
158 int getCheatTurn()
const;
160 bool isAlienBase()
const;
162 std::string getGenMissionType()
const;
164 int getGenMissionFrequency()
const;
166 EscapeType getEscapeType()
const;
Definition: AlienDeployment.h:44
Contains all the game-specific static data that never changes throughout the game, like rulesets and resources.
Definition: Mod.h:87
Definition: AlienDeployment.h:32
Definition: AlienDeployment.h:37
Represents a specific type of Alien Deployment.
Definition: AlienDeployment.h:63
Holds pairs of relative weights and IDs.
Definition: WeightedOptions.h:33
Definition: BaseInfoState.cpp:40