3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/utility/optional_ref.h"
7#include "mc/world/item/HandSlot.h"
8#include "mc/world/level/block/ActorBlockBase.h"
9#include "mc/world/level/block/BlockType.h"
10#include "mc/world/level/block/actor/SignTextSide.h"
29namespace mce {
class Color; }
40 enum class SignType :
int {
47 RedBigNetherShroom = 6,
48 BlueBigNetherShroom = 7,
59 enum class Result :
int {
72 ::ll::TypedStorage<4, 4, ::SignBlock::SignInteractionResult::Result> mResult;
79 MCNAPI ::std::optional<::std::string> getButtonTooltip()
const;
87 ::ll::TypedStorage<4, 4, ::SignBlock::SignType> mSignType;
88 ::ll::TypedStorage<1, 1, bool> mOnGround;
94 virtual ::AABB
const& getVisualShape(
::Block const& block,
::AABB& bufferAABB)
const ;
96 virtual ::AABB getCollisionShape(
115 virtual bool isInteractiveBlock() const ;
117 virtual
float getYRotationInDegrees(::
Block const& block) const;
127 MCNAPI
void tick(::BlockEvents::BlockQueuedTickEvent& eventData) const;
129 MCAPI
void use(::BlockEvents::BlockPlayerInteractEvent& eventData) const;
141 MCNAPI static ::SignBlock::SignInteractionResult _getInteractResult(
150 MCNAPI static ::SignBlock::SignInteractionResult
151 getInteractResult(
::Player& player,
::BlockPos const& pos, uchar face, ::HandSlot handSlot);
160 MCAPI ::AABB
const& $getVisualShape(
::Block const& block,
::AABB& bufferAABB)
const;
162 MCFOLD ::AABB $getCollisionShape(
179 MCFOLD
bool $isInteractiveBlock()
const;
181 MCAPI
float $getYRotationInDegrees(
::Block const& block)
const;
Definition BlockActor.h:30
Definition BlockPlayerInteractEvent.h:18
Definition BlockQueuedTickEvent.h:16
Definition BlockSource.h:72
Definition GetCollisionShapeInterface.h:13
Definition IConstBlockSource.h:25
Definition ItemInstance.h:15
Definition ItemStack.h:26
Definition SignBlockActor.h:32
Definition SignBlock.h:32
static MCAPI bool _canUseInkSac(::SignBlockActor &blockActor, ::SignTextSide side, ::Player &player)
MCAPI::ItemInstance $asItemInstance(::Block const &, ::BlockActor const *) const
static MCAPI void ** $vftable()
MCAPI::ItemInstance $_getItemInstance() const
static MCAPI ::mce::Color getSignTextColorFromDyeItem(::Item const &dyeItem)
static MCAPI bool _canUseDye(::SignBlockActor &blockActor, ::SignTextSide side, ::mce::Color const &dyeColor, ::Player &player)
MCAPI void $neighborChanged(::BlockSource ®ion, ::BlockPos const &pos, ::BlockPos const &neighborPos) const
MCAPI bool $canSurvive(::BlockSource ®ion, ::BlockPos const &pos) const
MCAPI bool $mayPlace(::BlockSource ®ion, ::BlockPos const &pos, uchar face) const
MCAPI void tick(::BlockEvents::BlockQueuedTickEvent &eventData) const
Definition optional_ref.h:10
Definition SignBlock.h:56