diff options
Diffstat (limited to 'Minecraft.World/BrewingStandTileEntity.h')
| -rw-r--r-- | Minecraft.World/BrewingStandTileEntity.h | 51 |
1 files changed, 31 insertions, 20 deletions
diff --git a/Minecraft.World/BrewingStandTileEntity.h b/Minecraft.World/BrewingStandTileEntity.h index 733e1073..52d3a0f1 100644 --- a/Minecraft.World/BrewingStandTileEntity.h +++ b/Minecraft.World/BrewingStandTileEntity.h @@ -1,50 +1,61 @@ #pragma once #include "TileEntity.h" -#include "Container.h" +#include "WorldlyContainer.h" -class BrewingStandTileEntity : public TileEntity, public Container +class BrewingStandTileEntity : public TileEntity, public WorldlyContainer { public: eINSTANCEOF GetType() { return eTYPE_BREWINGSTANDTILEENTITY; } static TileEntity *create() { return new BrewingStandTileEntity(); } + static const int INGREDIENT_SLOT = 3; + private: ItemInstanceArray items; - static const int INGREDIENT_SLOT = 3; + static intArray SLOTS_FOR_UP; + static intArray SLOTS_FOR_OTHER_FACES; - int brewTime; - int lastPotionCount; - int ingredientId; + int brewTime; + int lastPotionCount; + int ingredientId; + wstring name; public: BrewingStandTileEntity(); ~BrewingStandTileEntity(); - virtual int getName(); + virtual wstring getName(); + virtual wstring getCustomName(); + virtual bool hasCustomName(); + virtual void setCustomName(const wstring &name); virtual unsigned int getContainerSize(); virtual void tick(); - int getBrewTime(); + int getBrewTime(); private: bool isBrewable(); - void doBrew(); + void doBrew(); int applyIngredient(int currentBrew, shared_ptr<ItemInstance> ingredient); public: virtual void load(CompoundTag *base); - virtual void save(CompoundTag *base); - virtual shared_ptr<ItemInstance> getItem(unsigned int slot); - virtual shared_ptr<ItemInstance> removeItem(unsigned int slot, int i); + virtual void save(CompoundTag *base); + virtual shared_ptr<ItemInstance> getItem(unsigned int slot); + virtual shared_ptr<ItemInstance> removeItem(unsigned int slot, int i); virtual shared_ptr<ItemInstance> removeItemNoUpdate(int slot); - virtual void setItem(unsigned int slot, shared_ptr<ItemInstance> item); - virtual int getMaxStackSize(); - virtual bool stillValid(shared_ptr<Player> player); - virtual void startOpen(); - virtual void stopOpen(); - virtual void setBrewTime(int value); - virtual void setChanged() {} // 4J added - int getPotionBits(); + virtual void setItem(unsigned int slot, shared_ptr<ItemInstance> item); + virtual int getMaxStackSize(); + virtual bool stillValid(shared_ptr<Player> player); + virtual void startOpen(); + virtual void stopOpen(); + virtual bool canPlaceItem(int slot, shared_ptr<ItemInstance> item); + virtual void setBrewTime(int value); + virtual void setChanged() { TileEntity::setChanged(); } // 4J added + int getPotionBits(); + virtual intArray getSlotsForFace(int face); + virtual bool canPlaceItemThroughFace(int slot, shared_ptr<ItemInstance> item, int face); + virtual bool canTakeItemThroughFace(int slot, shared_ptr<ItemInstance> item, int face); // 4J Added virtual shared_ptr<TileEntity> clone(); |
