From b3feddfef372618c8a9d7a0abcaf18cfad866c18 Mon Sep 17 00:00:00 2001 From: daoge <3523206925@qq.com> Date: Tue, 3 Mar 2026 03:04:10 +0800 Subject: 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 --- Minecraft.World/ArmorItem.h | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) (limited to 'Minecraft.World/ArmorItem.h') diff --git a/Minecraft.World/ArmorItem.h b/Minecraft.World/ArmorItem.h index c711e2f9..92a40aea 100644 --- a/Minecraft.World/ArmorItem.h +++ b/Minecraft.World/ArmorItem.h @@ -1,6 +1,7 @@ #pragma once #include "Item.h" +#include "DefaultDispenseItemBehavior.h" class ArmorItem : public Item { @@ -18,6 +19,13 @@ private: public: static const wstring TEXTURE_EMPTY_SLOTS[]; +private: + class ArmorDispenseItemBehavior : public DefaultDispenseItemBehavior + { + protected: + virtual shared_ptr execute(BlockSource *source, shared_ptr dispensed, eOUTCOME &outcome); + }; + public: class ArmorMaterial { @@ -64,27 +72,20 @@ private: public: ArmorItem(int id, const ArmorMaterial *armorType, int icon, int slot); - //@Override - int getColor(shared_ptr item, int spriteLayer); - - //@Override - bool hasMultipleSpriteLayers(); + virtual int getColor(shared_ptr item, int spriteLayer); + virtual bool hasMultipleSpriteLayers(); virtual int getEnchantmentValue(); + virtual const ArmorMaterial *getMaterial(); + virtual bool hasCustomColor(shared_ptr item); + virtual int getColor(shared_ptr item); - const ArmorMaterial *getMaterial(); - bool hasCustomColor(shared_ptr item); - int getColor(shared_ptr item); - - //@Override - Icon *getLayerIcon(int auxValue, int spriteLayer); - void clearColor(shared_ptr item); - void setColor(shared_ptr item, int color); - - bool isValidRepairItem(shared_ptr source, shared_ptr repairItem); + virtual Icon *getLayerIcon(int auxValue, int spriteLayer); + virtual void clearColor(shared_ptr item); + virtual void setColor(shared_ptr item, int color); - //@Override - void registerIcons(IconRegister *iconRegister); + virtual bool isValidRepairItem(shared_ptr source, shared_ptr repairItem); + virtual void registerIcons(IconRegister *iconRegister); static Icon *getEmptyIcon(int slot); }; \ No newline at end of file -- cgit v1.2.3