the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
at master 55 lines 1.7 kB view raw
1#pragma once 2 3#include "BaseEntityTile.h" 4#include "CompoundTag.h" 5#include "TileEntity.h" 6 7class CompoundTag; 8class ChunkRebuildData; 9 10class JukeboxTile : public BaseEntityTile 11{ 12 friend class Tile; 13 friend class ChunkRebuildData; 14public: 15 class Entity : public TileEntity 16 { 17 public: 18 eINSTANCEOF GetType() { return eTYPE_RECORDPLAYERTILE; } 19 static TileEntity *create() { return new JukeboxTile::Entity(); } 20 21 private: 22 shared_ptr<ItemInstance> record; 23 24 public: 25 Entity(); 26 27 virtual void load(CompoundTag *tag); 28 virtual void save(CompoundTag *tag); 29 virtual shared_ptr<ItemInstance> getRecord(); 30 virtual void setRecord(shared_ptr<ItemInstance> record); 31 32 // 4J Added 33 shared_ptr<TileEntity> clone(); 34 }; 35 36private: 37 Icon *iconTop; 38 39protected: 40 JukeboxTile(int id); 41 42public: 43 virtual Icon *getTexture(int face, int data); 44 virtual bool TestUse(Level *level, int x, int y, int z, shared_ptr<Player> player); 45 virtual bool use(Level *level, int x, int y, int z, shared_ptr<Player> player, int clickedFace, float clickX, float clickY, float clickZ, bool soundOnly = false); // 4J added soundOnly param 46 void setRecord(Level *level, int x, int y, int z, shared_ptr<ItemInstance> record); 47 void dropRecording(Level *level, int x, int y, int z); 48 virtual void onRemove(Level *level, int x, int y, int z, int id, int data); 49 virtual void spawnResources(Level *level, int x, int y, int z, int data, float odds, int playerBonus); 50 51 virtual shared_ptr<TileEntity> newTileEntity(Level *level); 52 virtual void registerIcons(IconRegister *iconRegister); 53 virtual bool hasAnalogOutputSignal(); 54 virtual int getAnalogOutputSignal(Level *level, int x, int y, int z, int dir); 55};