3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/world/Direction.h"
20namespace BedBlockUtils {
23MCNAPI
bool checkPlacementPermissions(
25 ::ItemStackBase& item,
27 ::BlockPos
const& pos,
28 bool generateDenyParticleEffect
31MCNAPI
void displayLocalizedBedMessage(::Player& player,
char const* localizationKey);
33MCNAPI ::std::optional<::BlockPos> findHeadPiece(::BlockSource
const& region, ::BlockPos
const& interactPos);
35MCNAPI ::std::optional<::BlockPos>
36findWakeupPosition(::BlockSource
const& region, ::BlockPos
const& pos, ::std::optional<::Vec3>
const& enteredBedPos);
38MCNAPI ::Direction::Type getDirection(::Block
const& block);
40MCNAPI ::BlockPos getSecondPartPos(::Block
const& block, ::BlockPos
const& origin);
42MCNAPI
void handleNeighborChanged(
43 ::BlockSource& region,
44 ::BlockType
const& bedType,
45 ::BlockPos
const& pos,
46 ::BlockPos
const& neighborPos
50isBedPlacementBlockedByEntities(::BlockSource& region, ::BlockPos
const& feetPos, ::BlockPos
const& headPos);
52MCNAPI
void onFillBlock(::BlockType
const& bedType, ::BlockSource& region, ::BlockPos
const& pos, ::Block
const& block);
54MCNAPI ::Block
const& sanitizeFillBlock(::Block
const& block);
56MCNAPI
void setOccupied(::BlockSource& region, ::BlockPos
const& pos,
bool occupied);
58MCNAPI
bool tryPlaceBedParts(
59 ::BlockSource& region,
60 ::BlockPos
const& feetPos,
61 ::BlockPos
const& headPos,
62 ::Block
const& footBlock,
63 ::Block
const& headBlock
66MCNAPI
void trySleepInBed(::Player& player, ::BlockSource& region, ::BlockPos
const& headPos,
bool setsRespawn);
Definition BlockSource.h:72
Definition BlockType.h:79
Definition ItemStackBase.h:45