aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/XUI/XUI_HelpHowToPlay.h
diff options
context:
space:
mode:
authordaoge_cmd <3523206925@qq.com>2026-03-01 12:16:08 +0800
committerdaoge_cmd <3523206925@qq.com>2026-03-01 12:16:08 +0800
commitb691c43c44ff180d10e7d4a9afc83b98551ff586 (patch)
tree3e9849222cbc6ba49f2f1fc6e5fe7179632c7390 /Minecraft.Client/Common/XUI/XUI_HelpHowToPlay.h
parentdef8cb415354ac390b7e89052a50605285f1aca9 (diff)
Initial commit
Diffstat (limited to 'Minecraft.Client/Common/XUI/XUI_HelpHowToPlay.h')
-rw-r--r--Minecraft.Client/Common/XUI/XUI_HelpHowToPlay.h217
1 files changed, 217 insertions, 0 deletions
diff --git a/Minecraft.Client/Common/XUI/XUI_HelpHowToPlay.h b/Minecraft.Client/Common/XUI/XUI_HelpHowToPlay.h
new file mode 100644
index 00000000..8a37e925
--- /dev/null
+++ b/Minecraft.Client/Common/XUI/XUI_HelpHowToPlay.h
@@ -0,0 +1,217 @@
+#pragma once
+
+#include "../media/xuiscene_howtoplay.h"
+#include "XUI_CustomMessages.h"
+
+enum EHowToPlayTextControls
+{
+ eHowToPlay_TextNone = -1,
+ eHowToPlay_TextWhatsNew = 0,
+ eHowToPlay_TextBasics,
+ eHowToPlay_TextMultiplayer,
+ eHowToPlay_TextHUD,
+ eHowToPlay_TextCreative,
+ eHowToPlay_TextInventory,
+ eHowToPlay_TextSmallChest,
+ eHowToPlay_TextLargeChest,
+ eHowToPlay_TextEnderchest,
+ eHowToPlay_TextCrafting,
+ eHowToPlay_TextCraftTable,
+ eHowToPlay_TextFurnace,
+ eHowToPlay_TextDispenser,
+ eHowToPlay_TextBrewing,
+ eHowToPlay_TextEnchantment,
+ eHowToPlay_TextAnvil,
+ eHowToPlay_TextFarmingAnimals,
+ eHowToPlay_TextBreeding,
+ eHowToPlay_TextTrading,
+ eHowToPlay_TextNetherPortal,
+ eHowToPlay_TextTheEnd,
+ eHowToPlay_TextSocialMedia,
+ eHowToPlay_TextBanList,
+ eHowToPlay_TextHostOptions,
+ eHowToPlay_NumTexts
+};
+
+enum EHowToPlayImageControls
+{
+ eHowToPlay_ImageNone = -1,
+ eHowToPlay_ImageHUD = 0,
+ eHowToPlay_ImageCreative,
+ eHowToPlay_ImageInventory,
+ eHowToPlay_ImageChest,
+ eHowToPlay_ImageLargeChest,
+ eHowToPlay_ImageEnderChest,
+ eHowToPlay_ImageInventoryCrafting,
+ eHowToPlay_ImageCraftingTable,
+ eHowToPlay_ImageFurnace,
+ eHowToPlay_ImageDispenser,
+ eHowToPlay_ImageBrewing,
+ eHowToPlay_ImageEnchantment,
+ eHowToPlay_ImageAnvil,
+ eHowToPlay_ImageFarmingAnimals,
+ eHowToPlay_ImageBreeding,
+ eHowToPlay_ImageTrading,
+ eHowToPlay_ImageNetherPortal,
+ eHowToPlay_ImageTheEnd,
+ eHowToPlay_NumImages
+};
+
+enum EHowToPlayLabelControls
+{
+ eHowToPlay_LabelNone = -1,
+ eHowToPlay_LabelIInventory =0,
+ eHowToPlay_LabelSCInventory ,
+ eHowToPlay_LabelSCChest ,
+ eHowToPlay_LabelLCInventory ,
+ eHowToPlay_LabelLCChest ,
+ eHowToPlay_LabelCItem ,
+ eHowToPlay_LabelCGroup ,
+ eHowToPlay_LabelCInventory2x2 ,
+ eHowToPlay_LabelCTItem ,
+ eHowToPlay_LabelCTGroup ,
+ eHowToPlay_LabelCTInventory3x3 ,
+ eHowToPlay_LabelFFuel ,
+ eHowToPlay_LabelFInventory ,
+ eHowToPlay_LabelFIngredient ,
+ eHowToPlay_LabelFChest ,
+ eHowToPlay_LabelDText ,
+ eHowToPlay_LabelDInventory ,
+ eHowToPlay_LabelCreativeInventory,
+ eHowToPlay_LabelEEnchant,
+ eHowToPlay_LabelEInventory,
+ eHowToPlay_LabelBBrew,
+ eHowToPlay_LabelBInventory,
+ eHowToPlay_LabelAnvil_Inventory,
+ eHowToPlay_LabelAnvil_Cost,
+ eHowToPlay_LabelAnvil_ARepairAndName,
+ eHowToPlay_LabelTrading_Inventory,
+ eHowToPlay_LabelTrading_Offer2,
+ eHowToPlay_LabelTrading_Offer1,
+ eHowToPlay_LabelTrading_NeededForTrade,
+ eHowToPlay_LabelTrading_VillagerOffers,
+ eHowToPlay_NumLabels
+};
+
+struct SHowToPlayPageDef
+{
+ int m_iTextControlIndex; // eHowToPlay_TextNone if not used.
+ int m_iTextStringID; // -1 if not used.
+ int m_iImageControlIndex; // eHowToPlay_ImageNone if not used.
+ int m_iLabelStartIndex; // index of the labels if there are any for the page
+ int m_iLabelCount;
+};
+
+class CScene_HowToPlay : public CXuiSceneImpl
+{
+protected:
+ int m_iPad;
+ D3DXVECTOR3 m_OriginalPosition;
+ EHowToPlayPage m_eCurrPage;
+
+ // Control and Element wrapper objects.
+ CXuiHtmlElement m_aTextControls[ eHowToPlay_NumTexts ];
+ CXuiControl m_aImageControls[ eHowToPlay_NumImages ];
+ CXuiControl m_aLabelControls[ eHowToPlay_NumLabels ];
+
+ // Message map. Here we tie messages to message handlers.
+ XUI_BEGIN_MSG_MAP()
+ XUI_ON_XM_INIT( OnInit )
+ XUI_ON_XM_KEYDOWN(OnKeyDown)
+ XUI_ON_XM_SPLITSCREENPLAYER_MESSAGE(OnCustomMessage_Splitscreenplayer)
+ XUI_END_MSG_MAP()
+
+ // Control mapping to objects
+ BEGIN_CONTROL_MAP()
+ MAP_CONTROL(IDC_XuiHtmlControlMultiplayer, m_aTextControls[ eHowToPlay_TextMultiplayer ] )
+ MAP_CONTROL(IDC_XuiHtmlControlBasics, m_aTextControls[ eHowToPlay_TextBasics ] )
+ MAP_CONTROL(IDC_XuiHtmlControlHUD, m_aTextControls[ eHowToPlay_TextHUD ] )
+ MAP_CONTROL(IDC_XuiHtmlControlCreative, m_aTextControls[ eHowToPlay_TextCreative ] )
+ MAP_CONTROL(IDC_XuiHtmlControlInventory, m_aTextControls[ eHowToPlay_TextInventory ] )
+ MAP_CONTROL(IDC_XuiHtmlControlChest, m_aTextControls[ eHowToPlay_TextSmallChest ] )
+ MAP_CONTROL(IDC_XuiHtmlControlLargeChest, m_aTextControls[ eHowToPlay_TextLargeChest ] )
+ MAP_CONTROL(IDC_XuiHtmlControlEnderchest, m_aTextControls[ eHowToPlay_TextEnderchest ] )
+ MAP_CONTROL(IDC_XuiHtmlControlCrafting, m_aTextControls[ eHowToPlay_TextCrafting ] )
+ MAP_CONTROL(IDC_XuiHtmlControlCraftingTable, m_aTextControls[ eHowToPlay_TextCraftTable ] )
+ MAP_CONTROL(IDC_XuiHtmlControlFurnace, m_aTextControls[ eHowToPlay_TextFurnace ] )
+ MAP_CONTROL(IDC_XuiHtmlControlDispenser, m_aTextControls[ eHowToPlay_TextDispenser ] )
+ MAP_CONTROL(IDC_XuiHtmlControlBrewing, m_aTextControls[ eHowToPlay_TextBrewing ] )
+ MAP_CONTROL(IDC_XuiHtmlControlEnchantment, m_aTextControls[ eHowToPlay_TextEnchantment ] )
+ MAP_CONTROL(IDC_XuiHtmlControlAnvil, m_aTextControls[ eHowToPlay_TextAnvil ] )
+ MAP_CONTROL(IDC_XuiHtmlControlFarmingAnimals, m_aTextControls[ eHowToPlay_TextFarmingAnimals ] )
+ MAP_CONTROL(IDC_XuiHtmlControlBreeding, m_aTextControls[ eHowToPlay_TextBreeding ] )
+ MAP_CONTROL(IDC_XuiHtmlControlTrading, m_aTextControls[ eHowToPlay_TextTrading ] )
+ MAP_CONTROL(IDC_XuiHtmlControlNetherPortal, m_aTextControls[ eHowToPlay_TextNetherPortal ] )
+ MAP_CONTROL(IDC_XuiHtmlControlTheEnd, m_aTextControls[ eHowToPlay_TextTheEnd ] )
+ MAP_CONTROL(IDC_XuiHtmlControlSocialMedia, m_aTextControls[ eHowToPlay_TextSocialMedia ] )
+ MAP_CONTROL(IDC_XuiHtmlControlBanList, m_aTextControls[ eHowToPlay_TextBanList ] )
+ MAP_CONTROL(IDC_XuiHtmlControlWhatsNew, m_aTextControls[ eHowToPlay_TextWhatsNew ] )
+ MAP_CONTROL(IDC_XuiHtmlControlHostOptions, m_aTextControls[ eHowToPlay_TextHostOptions] )
+
+ MAP_CONTROL(IDC_XuiImageHUD, m_aImageControls[ eHowToPlay_ImageHUD ] )
+ MAP_CONTROL(IDC_XuiImageCreative, m_aImageControls[ eHowToPlay_ImageCreative ] )
+ MAP_CONTROL(IDC_XuiImageInventory, m_aImageControls[ eHowToPlay_ImageInventory ] )
+ MAP_CONTROL(IDC_XuiImageChest, m_aImageControls[ eHowToPlay_ImageChest ] )
+ MAP_CONTROL(IDC_XuiImageLargeChest, m_aImageControls[ eHowToPlay_ImageLargeChest ] )
+ MAP_CONTROL(IDC_XuiImageEnderchest, m_aImageControls[ eHowToPlay_ImageEnderChest ] )
+ MAP_CONTROL(IDC_XuiImageCrafting, m_aImageControls[ eHowToPlay_ImageInventoryCrafting ] )
+ MAP_CONTROL(IDC_XuiImageCraftingTable, m_aImageControls[ eHowToPlay_ImageCraftingTable ] )
+ MAP_CONTROL(IDC_XuiImageFurnace, m_aImageControls[ eHowToPlay_ImageFurnace ] )
+ MAP_CONTROL(IDC_XuiImageDispenser, m_aImageControls[ eHowToPlay_ImageDispenser ] )
+ MAP_CONTROL(IDC_XuiImageBrewing, m_aImageControls[ eHowToPlay_ImageBrewing ] )
+ MAP_CONTROL(IDC_XuiImageEnchantment, m_aImageControls[ eHowToPlay_ImageEnchantment ] )
+ MAP_CONTROL(IDC_XuiImageAnvil, m_aImageControls[ eHowToPlay_ImageAnvil ] )
+ MAP_CONTROL(IDC_XuiImageBreeding, m_aImageControls[ eHowToPlay_ImageBreeding ] )
+ MAP_CONTROL(IDC_XuiImageFarmingAnimals, m_aImageControls[ eHowToPlay_ImageFarmingAnimals ] )
+ MAP_CONTROL(IDC_XuiImageTrading, m_aImageControls[ eHowToPlay_ImageTrading ] )
+ MAP_CONTROL(IDC_XuiImageNetherPortal, m_aImageControls[ eHowToPlay_ImageNetherPortal ] )
+ MAP_CONTROL(IDC_XuiImageTheEnd, m_aImageControls[ eHowToPlay_ImageTheEnd ] )
+
+ MAP_CONTROL(IDC_CTItem, m_aLabelControls[ eHowToPlay_LabelCTItem ] )
+ MAP_CONTROL(IDC_CTGroup, m_aLabelControls[ eHowToPlay_LabelCTGroup ] )
+ MAP_CONTROL(IDC_CTInventory3x3, m_aLabelControls[ eHowToPlay_LabelCTInventory3x3 ] )
+ MAP_CONTROL(IDC_CItem, m_aLabelControls[ eHowToPlay_LabelCItem ] )
+ MAP_CONTROL(IDC_CGroup, m_aLabelControls[ eHowToPlay_LabelCGroup ] )
+ MAP_CONTROL(IDC_CInventory, m_aLabelControls[ eHowToPlay_LabelCInventory2x2 ] )
+ MAP_CONTROL(IDC_FFuel, m_aLabelControls[ eHowToPlay_LabelFFuel ] )
+ MAP_CONTROL(IDC_FInventory, m_aLabelControls[ eHowToPlay_LabelFInventory ] )
+ MAP_CONTROL(IDC_FIngredient, m_aLabelControls[ eHowToPlay_LabelFIngredient ] )
+ MAP_CONTROL(IDC_FChest, m_aLabelControls[ eHowToPlay_LabelFChest ] )
+ MAP_CONTROL(IDC_LCInventory, m_aLabelControls[ eHowToPlay_LabelLCInventory ] )
+ MAP_CONTROL(IDC_CIGroup, m_aLabelControls[ eHowToPlay_LabelCreativeInventory ] )
+ MAP_CONTROL(IDC_LCChest, m_aLabelControls[ eHowToPlay_LabelLCChest ] )
+ MAP_CONTROL(IDC_SCInventory, m_aLabelControls[ eHowToPlay_LabelSCInventory ] )
+ MAP_CONTROL(IDC_SCChest, m_aLabelControls[ eHowToPlay_LabelSCChest ] )
+ MAP_CONTROL(IDC_IInventory, m_aLabelControls[ eHowToPlay_LabelIInventory ] )
+ MAP_CONTROL(IDC_DInventory, m_aLabelControls[ eHowToPlay_LabelDInventory ] )
+ MAP_CONTROL(IDC_DText, m_aLabelControls[ eHowToPlay_LabelDText ] )
+ MAP_CONTROL(IDC_EEnchant, m_aLabelControls[ eHowToPlay_LabelEEnchant ] )
+ MAP_CONTROL(IDC_EInventory, m_aLabelControls[ eHowToPlay_LabelEInventory ] )
+ MAP_CONTROL(IDC_BBrew, m_aLabelControls[ eHowToPlay_LabelBBrew ] )
+ MAP_CONTROL(IDC_BInventory, m_aLabelControls[ eHowToPlay_LabelBInventory ] )
+ MAP_CONTROL(IDC_AInventory, m_aLabelControls[ eHowToPlay_LabelAnvil_Inventory ] )
+ MAP_CONTROL(IDC_ACost, m_aLabelControls[ eHowToPlay_LabelAnvil_Cost ] )
+ MAP_CONTROL(IDC_ARepairAndName, m_aLabelControls[ eHowToPlay_LabelAnvil_ARepairAndName ] )
+ MAP_CONTROL(IDC_TInventory, m_aLabelControls[ eHowToPlay_LabelTrading_Inventory ] )
+ //MAP_CONTROL(IDC_TOffer2Label, m_aLabelControls[ eHowToPlay_LabelTrading_Offer2 ] )
+ MAP_CONTROL(IDC_TOffer1Label, m_aLabelControls[ eHowToPlay_LabelTrading_Offer1 ] )
+ MAP_CONTROL(IDC_TNeededForTrade, m_aLabelControls[ eHowToPlay_LabelTrading_NeededForTrade ] )
+ MAP_CONTROL(IDC_TVillagerOffers, m_aLabelControls[ eHowToPlay_LabelTrading_VillagerOffers ] )
+
+
+ END_CONTROL_MAP()
+
+ HRESULT OnInit( XUIMessageInit* pInitData, BOOL& bHandled );
+ HRESULT OnKeyDown(XUIMessageInput* pInputData, BOOL& rfHandled);
+ HRESULT OnCustomMessage_Splitscreenplayer(bool bJoining, BOOL& bHandled);
+
+ void StartPage( EHowToPlayPage ePage );
+public:
+
+ // Define the class. The class name must match the ClassOverride property
+ // set for the scene in the UI Authoring tool.
+ XUI_IMPLEMENT_CLASS( CScene_HowToPlay, L"CScene_HowToPlay", XUI_CLASS_SCENE )
+
+
+
+};