4jcraft/targets/Minecraft.Client/Common/src/GameRules/LevelRules/RuleDefinitions/UseTileRuleDefinition.h

31 lines
891 B
C++

#pragma once
// using namespace std;
#include <string>
#include "GameRuleDefinition.h"
#include "Minecraft.Client/Common/src/GameRules/ConsoleGameRulesConstants.h"
#include "minecraft/Pos.h"
class UseTileRuleDefinition : public GameRuleDefinition {
private:
// These values should map directly to the xsd definition for this Rule
int m_tileId;
bool m_useCoords;
Pos m_coordinates;
public:
UseTileRuleDefinition();
ConsoleGameRules::EGameRuleType getActionType() {
return ConsoleGameRules::eGameRuleType_UseTileRule;
}
virtual void writeAttributes(DataOutputStream* dos,
unsigned int numAttributes);
virtual void addAttribute(const std::wstring& attributeName,
const std::wstring& attributeValue);
virtual bool onUseTile(GameRule* rule, int tileId, int x, int y, int z);
};