aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/XUI/XUI_Ctrl_EnchantmentBook.h
blob: 93da07684bcd8ec4954dcf867326269d8cc9decd (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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#pragma once
#include "..\..\..\Minecraft.World\Random.h"

using namespace std;

class CXuiSceneEnchant;
class BookModel;

//-----------------------------------------------------------------------------
//  CXuiCtrlEnchantPanel class
//-----------------------------------------------------------------------------
class CXuiCtrlEnchantmentBook : public CXuiControlImpl
{
public:
	XUI_IMPLEMENT_CLASS(CXuiCtrlEnchantmentBook, L"CXuiCtrlEnchantmentBook", XUI_CLASS_LABEL)

	CXuiCtrlEnchantmentBook();
	virtual ~CXuiCtrlEnchantmentBook();

	void setChanged();
	void setOpen(bool);

protected:
	XUI_BEGIN_MSG_MAP()
		XUI_ON_XM_INIT(OnInit)
		XUI_ON_XM_RENDER(OnRender)
	XUI_END_MSG_MAP()

	HRESULT OnInit(XUIMessageInit* pInitData, BOOL& rfHandled);
	HRESULT OnRender(XUIMessageRender *pRenderData, BOOL &rfHandled);

private:
	BookModel *model;
	Random random;

	// 4J JEV: Book animation variables.
	int time;
    float flip, oFlip, flipT, flipA;
    float open, oOpen;

	BOOL m_bDirty;
	float m_fScale,m_fAlpha;
	int	m_iPad;
	CXuiSceneEnchant *m_containerScene;
	shared_ptr<ItemInstance> last;

	float m_fScreenWidth,m_fScreenHeight;
	float m_fRawWidth,m_fRawHeight;

	void tickBook();
};