aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/UI/IUIScene_AbstractContainerMenu.h
diff options
context:
space:
mode:
authordaoge <3523206925@qq.com>2026-03-03 03:04:10 +0800
committerGitHub <noreply@github.com>2026-03-03 03:04:10 +0800
commitb3feddfef372618c8a9d7a0abcaf18cfad866c18 (patch)
tree267761c3bb39241ba5c347bfbe2254d06686e287 /Minecraft.Client/Common/UI/IUIScene_AbstractContainerMenu.h
parent84c31a2331f7a0ec85b9d438992e244f60e5020f (diff)
feat: TU19 (Dec 2014) Features & Content (#155)
* try to resolve merge conflict * feat: TU19 (Dec 2014) Features & Content (#32) * December 2014 files * Working release build * Fix compilation issues * Add sound to Windows64Media * Add DLC content and force Tutorial DLC * Revert "Add DLC content and force Tutorial DLC" This reverts commit 97a43994725008e35fceb984d5549df9c8cea470. * Disable broken light packing * Disable breakpoint during DLC texture map load Allows DLC loading but the DLC textures are still broken * Fix post build not working * ... * fix vs2022 build * fix cmake build --------- Co-authored-by: Loki <lokirautio@gmail.com>
Diffstat (limited to 'Minecraft.Client/Common/UI/IUIScene_AbstractContainerMenu.h')
-rw-r--r--Minecraft.Client/Common/UI/IUIScene_AbstractContainerMenu.h58
1 files changed, 51 insertions, 7 deletions
diff --git a/Minecraft.Client/Common/UI/IUIScene_AbstractContainerMenu.h b/Minecraft.Client/Common/UI/IUIScene_AbstractContainerMenu.h
index bdb8bb4c..7d16f522 100644
--- a/Minecraft.Client/Common/UI/IUIScene_AbstractContainerMenu.h
+++ b/Minecraft.Client/Common/UI/IUIScene_AbstractContainerMenu.h
@@ -52,7 +52,6 @@ protected:
eSectionInventoryCreativeUsing,
eSectionInventoryCreativeSelector,
-#ifndef _XBOX
eSectionInventoryCreativeTab_0,
eSectionInventoryCreativeTab_1,
eSectionInventoryCreativeTab_2,
@@ -62,7 +61,6 @@ protected:
eSectionInventoryCreativeTab_6,
eSectionInventoryCreativeTab_7,
eSectionInventoryCreativeSlider,
-#endif
eSectionInventoryCreativeMax,
eSectionEnchantUsing,
@@ -88,6 +86,37 @@ protected:
eSectionAnvilResult,
eSectionAnvilName,
eSectionAnvilMax,
+
+ eSectionBeaconUsing,
+ eSectionBeaconInventory,
+ eSectionBeaconItem,
+ eSectionBeaconPrimaryTierOneOne,
+ eSectionBeaconPrimaryTierOneTwo,
+ eSectionBeaconPrimaryTierTwoOne,
+ eSectionBeaconPrimaryTierTwoTwo,
+ eSectionBeaconPrimaryTierThree,
+ eSectionBeaconSecondaryOne,
+ eSectionBeaconSecondaryTwo,
+ eSectionBeaconConfirm,
+ eSectionBeaconMax,
+
+ eSectionHopperUsing,
+ eSectionHopperInventory,
+ eSectionHopperContents,
+ eSectionHopperMax,
+
+ eSectionHorseUsing,
+ eSectionHorseInventory,
+ eSectionHorseChest,
+ eSectionHorseArmor,
+ eSectionHorseSaddle,
+ eSectionHorseMax,
+
+ eSectionFireworksUsing,
+ eSectionFireworksInventory,
+ eSectionFireworksResult,
+ eSectionFireworksIngredients,
+ eSectionFireworksMax,
};
AbstractContainerMenu* m_menu;
@@ -162,13 +191,14 @@ protected:
virtual bool IsSectionSlotList( ESceneSection eSection ) { return eSection != eSectionNone; }
virtual bool CanHaveFocus( ESceneSection eSection ) { return true; }
+ virtual bool IsVisible( ESceneSection eSection ) { return true; }
int GetSectionDimensions( ESceneSection eSection, int* piNumColumns, int* piNumRows );
virtual int getSectionColumns(ESceneSection eSection) = 0;
virtual int getSectionRows(ESceneSection eSection) = 0;
virtual ESceneSection GetSectionAndSlotInDirection( ESceneSection eSection, ETapState eTapDirection, int *piTargetX, int *piTargetY ) = 0;
virtual void GetPositionOfSection( ESceneSection eSection, UIVec2D* pPosition ) = 0;
virtual void GetItemScreenData( ESceneSection eSection, int iItemIndex, UIVec2D* pPosition, UIVec2D* pSize ) = 0;
- void updateSlotPosition( ESceneSection eSection, ESceneSection newSection, ETapState eTapDirection, int *piTargetX, int *piTargetY, int xOffset );
+ void updateSlotPosition( ESceneSection eSection, ESceneSection newSection, ETapState eTapDirection, int *piTargetX, int *piTargetY, int xOffset = 0, int yOffset = 0 );
#ifdef TAP_DETECTION
ETapState GetTapInputType( float fInputX, float fInputY );
@@ -200,18 +230,32 @@ protected:
virtual void setSectionFocus(ESceneSection eSection, int iPad) = 0;
virtual void setSectionSelectedSlot(ESceneSection eSection, int x, int y) = 0;
virtual void setFocusToPointer(int iPad) = 0;
- virtual void SetPointerText(const wstring &description, vector<wstring> &unformattedStrings, bool newSlot) = 0;
+ virtual void SetPointerText(vector<HtmlString> *description, bool newSlot) = 0;
+ virtual vector<HtmlString> *GetSectionHoverText(ESceneSection eSection);
virtual shared_ptr<ItemInstance> getSlotItem(ESceneSection eSection, int iSlot) = 0;
+ virtual Slot *getSlot(ESceneSection eSection, int iSlot) = 0;
virtual bool isSlotEmpty(ESceneSection eSection, int iSlot) = 0;
virtual void adjustPointerForSafeZone() = 0;
- virtual bool overrideTooltips(ESceneSection sectionUnderPointer, shared_ptr<ItemInstance> itemUnderPointer, bool bIsItemCarried, bool bSlotHasItem, bool bCarriedIsSameAsSlot, int iSlotStackSizeRemaining,
- EToolTipItem &buttonA, EToolTipItem &buttonX, EToolTipItem &buttonY, EToolTipItem &buttonRT) { return false; }
+ virtual bool overrideTooltips(
+ ESceneSection sectionUnderPointer,
+ shared_ptr<ItemInstance> itemUnderPointer,
+ bool bIsItemCarried,
+ bool bSlotHasItem,
+ bool bCarriedIsSameAsSlot,
+ int iSlotStackSizeRemaining,
+ EToolTipItem &buttonA,
+ EToolTipItem &buttonX,
+ EToolTipItem &buttonY,
+ EToolTipItem &buttonRT,
+ EToolTipItem &buttonBack
+ ) { return false; }
private:
bool IsSameItemAs(shared_ptr<ItemInstance> itemA, shared_ptr<ItemInstance> itemB);
int GetEmptyStackSpace(Slot *slot);
- wstring GetItemDescription(Slot *slot, vector<wstring> &unformattedStrings);
+
+ vector<HtmlString> *GetItemDescription(Slot *slot);
protected: