51 logger->
log1(
"Initializing clans database...");
63 XmlNodeConstPtr rootNode = doc.
rootNode();
65 if ((rootNode ==
nullptr) || !xmlNameEqual(rootNode,
"clans"))
67 logger->
log(
"Clans database: Error while loading %s!",
79 if (xmlNameEqual(clanNode,
"include"))
82 clanNode,
"name",
"");
87 if (!xmlNameEqual(clanNode,
"clan"))
97 if (clanInfo ==
nullptr)
103 clanNode,
"name",
_(
"unnamed"));
124 std::map<int, ClanInfo *>::const_iterator i =
static void loadXmlFile(const std::string &file, const std::string &name, BadgesInfos &arr, const SkipError skipError)
#define loadXmlDir(name, function)
#define reportAlways(...)
std::string getStringValue(const std::string &key) const
void log(const char *const log_text,...)
void log1(const char *const log_text)
void delete_all(Container &c)
std::map< std::string, ItemFieldType * > ItemFieldInfos
void readItemStatsVector(std::vector< std::string > &effect, const xmlNodePtr node, const ItemFieldInfos &fields)
#define for_each_xml_child_node(var, parent)
void loadXmlFile(const std::string &fileName, const SkipError skipError)
const ClanInfo * get(const int clanId)
const ItemFieldInfos & getAddFields()
std::string langProperty(const xmlNodePtr node, const char *const name, const std::string &def)
int getProperty(const xmlNodePtr node, const char *const name, int def)
std::map< int, ClanInfo * > mClansInfos
const bool SkipError_false
const bool SkipError_true
std::vector< std::string > stats
const bool UseVirtFs_true