aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/GameRules/XboxStructureActionGenerateBox.h
blob: 78664d421175071db4b50a47e4106dbc3b67de6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#pragma once
#include "ConsoleGenerateStructureAction.h"

class StructurePiece;
class Level;
class BoundingBox;

class XboxStructureActionGenerateBox : public ConsoleGenerateStructureAction
{
private:
	int m_x0, m_y0, m_z0, m_x1, m_y1, m_z1, m_edgeTile, m_fillTile;
	bool m_skipAir;
public:
	XboxStructureActionGenerateBox();

	virtual ConsoleGameRules::EGameRuleType getActionType() { return ConsoleGameRules::eGameRuleType_GenerateBox; }

	virtual int getEndX() { return m_x1; }
	virtual int getEndY() { return m_y1; }
	virtual int getEndZ() { return m_z1; }

	virtual void writeAttributes(DataOutputStream *dos, UINT numAttrs);
	virtual void addAttribute(const wstring &attributeName, const wstring &attributeValue);

	bool generateBoxInLevel(StructurePiece *structure, Level *level, BoundingBox *chunkBB);
};