blob: 2b32f078a4a0fb30a613c6bbb3d4e129b0c9908f (
plain) (
tree)
|
|
// EnchantingWindow.h
// Representing the UI window for the enchanting block
#pragma once
#include "Window.h"
class cSlotAreaEnchanting;
class cEnchantingWindow:
public cWindow
{
using Super = cWindow;
public:
cEnchantingWindow(Vector3i a_BlockPos, const AString & a_Title);
/** Sends enchantment properties to the client.
If the property represents a level requirement, stores it for later GetProperty retrieval. */
virtual void SetProperty(short a_Property, short a_Value, cPlayer & a_Player) override;
/** Sends enchantment properties to the client.
If the property represents a level requirement, stores it for later GetProperty retrieval. */
virtual void SetProperty(short a_Property, short a_Value) override;
/** Return the level requirement of the given enchantment slot. */
short GetProperty(short a_Property);
virtual void DistributeStack(cItem & a_ItemStack, int a_Slot, cPlayer & a_Player, cSlotArea * a_ClickedArea, bool a_ShouldApply) override;
cSlotAreaEnchanting * m_SlotArea;
protected:
std::array<short, 3> m_PropertyValue;
Vector3i m_BlockPos;
};
|