19 #ifndef OPENXCOM_RULERESEARCH_H
20 #define OPENXCOM_RULERESEARCH_H
24 #include <yaml-cpp/yaml.h>
43 std::string _name, _lookup;
45 std::vector<std::string> _dependencies, _unlocks, _getOneFree, _requires;
51 void load(
const YAML::Node& node,
int listOrder);
55 const std::string &
getName ()
const;
61 const std::vector<std::string> &
getUnlocked ()
const;
void load(const YAML::Node &node, int listOrder)
Loads the research from YAML.
Definition: RuleResearch.cpp:33
const std::vector< std::string > & getRequirements() const
Gets the requirements for this ResearchProject.
Definition: RuleResearch.cpp:127
int getListOrder() const
Gets the list weight for this research item.
Definition: RuleResearch.cpp:136
const std::vector< std::string > & getGetOneFree() const
Gets the list of ResearchProjects granted at random for free by this research.
Definition: RuleResearch.cpp:109
bool needItem() const
Checks if this ResearchProject needs a corresponding Item to be researched.
Definition: RuleResearch.cpp:82
const std::string & getName() const
Gets the research name.
Definition: RuleResearch.cpp:64
int getPoints() const
Gets the points earned for discovering this ResearchProject.
Definition: RuleResearch.cpp:100
const std::string getLookup() const
Gets what to look up in the ufopedia.
Definition: RuleResearch.cpp:118
int getCost() const
Gets time needed to discover this ResearchProject.
Definition: RuleResearch.cpp:55
Represents one research project.
Definition: RuleResearch.h:40
const std::vector< std::string > & getDependencies() const
Gets the research dependencies.
Definition: RuleResearch.cpp:73
const std::vector< std::string > & getUnlocked() const
Gets the list of ResearchProjects unlocked by this research.
Definition: RuleResearch.cpp:91