#pragma once #include "CompoundGameRuleDefinition.h" class NamedAreaRuleDefinition; class LevelRuleset : public CompoundGameRuleDefinition { private: std::vector m_areas; StringTable *m_stringTable; public: LevelRuleset(); ~LevelRuleset(); virtual void getChildren(std::vector *children); virtual GameRuleDefinition *addChild(ConsoleGameRules::EGameRuleType ruleType); virtual ConsoleGameRules::EGameRuleType getActionType() { return ConsoleGameRules::eGameRuleType_LevelRules; } void loadStringTable(StringTable *table); const wchar_t *getString(const std::wstring &key); AABB *getNamedArea(const std::wstring &areaName); StringTable *getStringTable() { return m_stringTable; } };