4jcraft/Minecraft.Client/Common/Source Files/GameRules/LevelRules/RuleDefinitions/LevelRuleset.h

31 lines
803 B
C++

#pragma once
#include "CompoundGameRuleDefinition.h"
class NamedAreaRuleDefinition;
class LevelRuleset : public CompoundGameRuleDefinition {
private:
std::vector<NamedAreaRuleDefinition*> m_areas;
StringTable* m_stringTable;
public:
LevelRuleset();
~LevelRuleset();
virtual void getChildren(std::vector<GameRuleDefinition*>* 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; }
};