the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
at master 62 lines 1.9 kB view raw
1#pragma once 2#include "TileEntity.h" 3#include "WorldlyContainer.h" 4 5class BrewingStandTileEntity : public TileEntity, public WorldlyContainer 6{ 7public: 8 eINSTANCEOF GetType() { return eTYPE_BREWINGSTANDTILEENTITY; } 9 static TileEntity *create() { return new BrewingStandTileEntity(); } 10 11 static const int INGREDIENT_SLOT = 3; 12 13private: 14 ItemInstanceArray items; 15 static intArray SLOTS_FOR_UP; 16 static intArray SLOTS_FOR_OTHER_FACES; 17 18 int brewTime; 19 int lastPotionCount; 20 int ingredientId; 21 wstring name; 22 23public: 24 BrewingStandTileEntity(); 25 ~BrewingStandTileEntity(); 26 virtual wstring getName(); 27 virtual wstring getCustomName(); 28 virtual bool hasCustomName(); 29 virtual void setCustomName(const wstring &name); 30 virtual unsigned int getContainerSize(); 31 virtual void tick(); 32 33 int getBrewTime(); 34 35private: 36 bool isBrewable(); 37 void doBrew(); 38 39 int applyIngredient(int currentBrew, shared_ptr<ItemInstance> ingredient); 40 41public: 42 virtual void load(CompoundTag *base); 43 virtual void save(CompoundTag *base); 44 virtual shared_ptr<ItemInstance> getItem(unsigned int slot); 45 virtual shared_ptr<ItemInstance> removeItem(unsigned int slot, int i); 46 virtual shared_ptr<ItemInstance> removeItemNoUpdate(int slot); 47 virtual void setItem(unsigned int slot, shared_ptr<ItemInstance> item); 48 virtual int getMaxStackSize() const; 49 virtual bool stillValid(shared_ptr<Player> player); 50 virtual void startOpen(); 51 virtual void stopOpen(); 52 virtual bool canPlaceItem(int slot, shared_ptr<ItemInstance> item); 53 virtual void setBrewTime(int value); 54 virtual void setChanged() { TileEntity::setChanged(); } // 4J added 55 int getPotionBits(); 56 virtual intArray getSlotsForFace(int face); 57 virtual bool canPlaceItemThroughFace(int slot, shared_ptr<ItemInstance> item, int face); 58 virtual bool canTakeItemThroughFace(int slot, shared_ptr<ItemInstance> item, int face); 59 60 // 4J Added 61 virtual shared_ptr<TileEntity> clone(); 62};