MinecraftConsoles/Minecraft.Client/Common/XUI/XUI_Ctrl_EnchantmentBook.h
Riley M. c0da06e4ee
major: Switch to forward slashes(+more) to fix compilation on Linux (#1403)
Notably also adds some metadata files for NixOS 

* add support for linux clang cross compiles

* add linux clang instructions

* un-capitalize Mob.horse.*

* update the description in flake.nix

---------

Co-authored-by: Loki <lokirautio@gmail.com>
2026-04-14 16:47:37 -05:00

51 lines
1.2 KiB
C++

#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();
};