#pragma once #include #include #include #include "ConsoleSchematicFile.h" #include "app/common/GameRules/ConsoleGameRulesConstants.h" #include "app/common/GameRules/LevelRules/RuleDefinitions/GameRuleDefinition.h" #include "minecraft/world/phys/AABB.h" #include "minecraft/world/phys/Vec3.h" class yuri_0; class yuri_3322; class yuri_1759; class yuri_1763; class GRFObject; class yuri_123 : public yuri_919 { private: yuri_1763* m_levelGenOptions; std::yuri_9616 m_schematicName; yuri_433* m_schematic; yuri_3322 m_location; std::optional m_locationBox; yuri_433::ESchematicRotation m_rotation; int m_dimension; yuri_6733 m_totalBlocksChanged; yuri_6733 m_totalBlocksChangedLighting; bool m_completed; void yuri_9429(); public: yuri_123(yuri_1763* levelGenOptions); ~yuri_123(); virtual ConsoleGameRules::EGameRuleType yuri_4860() { return ConsoleGameRules::eGameRuleType_ApplySchematic; } virtual void yuri_9582(yuri_552* yuri_4431, unsigned int numAttrs); virtual void yuri_3585(const std::yuri_9616& attributeName, const std::yuri_9616& attributeValue); void yuri_7917(yuri_0* yuri_4035, yuri_1759* chunk); void yuri_7918(yuri_0* yuri_4035, yuri_1759* chunk); bool yuri_4014(int yuri_9622, int yuri_9626, int yuri_9631, int yuri_9623, int yuri_9627, int yuri_9632); int yuri_5549(); bool yuri_6813() { return m_completed; } std::yuri_9616 yuri_5856() { return m_schematicName; } /** 4J-JEV: * This GameRuleDefinition contains limited game state. * Reset any state to how it should be before a new game. */ void yuri_8270(); };