26class ButtonBlock :
public ::BlockType {
30 ::ll::TypedStorage<1, 1, bool const> mSensitive;
40 virtual ::AABB getCollisionShape(
51 virtual ::AABB
const& getVisualShape(
::Block const& block,
::AABB& bufferAABB)
const ;
53 virtual ::AABB
const& getUIShape(
::Block const& block,
::AABB& bufferAABB)
const ;
55 virtual void addAABBs(
59 ::AABB const* intersectTestBox,
60 ::std::vector<::AABB>& inoutBoxes
70 virtual ::Block
const&
71 getPlacementBlock(
::Actor const& by,
::BlockPos const& pos, uchar face,
::Vec3 const& clickPos,
int itemValue)
const
79 virtual bool isInteractiveBlock()
const ;
81 virtual int getVariant(
::Block const& block)
const ;
83 virtual bool canSpawnOn(
::Actor*)
const ;
85 virtual bool isButtonBlock()
const ;
91 virtual void _addHardCodedBlockComponents(
::Experiments const&) ;
99 MCAPI ButtonBlock(::std::string
const& nameId,
int id,
::Material const& material,
bool sensitive);
106 MCAPI ::AABB _getShape(
bool pressed, uchar facingDirection,
bool ignorePressedState)
const;
127 MCAPI
void* $ctor(::std::string
const& nameId,
int id,
::Material const& material,
bool sensitive);
133 MCAPI ::AABB $getCollisionShape(
143 MCAPI ::AABB
const& $getVisualShape(
::Block const& block,
::AABB& bufferAABB)
const;
145 MCAPI ::AABB
const& $getUIShape(
::Block const& block,
::AABB& bufferAABB)
const;
147 MCAPI
void $addAABBs(
151 ::AABB const* intersectTestBox,
152 ::std::vector<::AABB>& inoutBoxes
161 MCAPI ::Block
const& $getPlacementBlock(
173 MCFOLD
bool $isInteractiveBlock()
const;
175 MCFOLD
int $getVariant(
::Block const& block)
const;
177 MCFOLD
bool $canSpawnOn(
::Actor*)
const;
179 MCFOLD
bool $isButtonBlock()
const;
185 MCAPI
void $_addHardCodedBlockComponents(
::Experiments const&);
195 MCAPI
static void** $vftable();