3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/world/Container.h"
7#include "mc/world/level/block/BlockColor.h"
8#include "mc/world/level/block/actor/BlockActor.h"
31 using BeaconBeamSections = ::std::vector<::BeaconBeamSection>;
36 ::ll::TypedStorage<8, 24, ::std::vector<::BeaconBeamSection>> mBeamSections;
37 ::ll::TypedStorage<4, 4, float> mBeamRot;
38 ::ll::TypedStorage<4, 4, int> mNumLevels;
39 ::ll::TypedStorage<4, 4, int> mNumLevelsSet;
40 ::ll::TypedStorage<4, 4, int> mBlockRefreshCounter;
41 ::ll::TypedStorage<4, 4, int> mPrimaryEffectId;
42 ::ll::TypedStorage<4, 4, int> mSecondaryEffectId;
43 ::ll::TypedStorage<4, 4, int> mPrimaryEffectTier;
44 ::ll::TypedStorage<4, 4, int> mSecondaryEffectTier;
45 ::ll::TypedStorage<8, 24, ::std::vector<::MobEffect*>> mBeaconEffects;
46 ::ll::TypedStorage<8, 24, ::std::vector<::std::vector<::MobEffect*>>> mTierEffects;
69 virtual bool hasAlphaLayer()
const ;
72 virtual bool isWithinRenderDistance(
::Vec3 const& cameraPosition)
const ;
75 virtual ::ItemStack
const& getItem(
int slot)
const ;
78 virtual void setItem(
int slot,
::ItemStack const& item) ;
81 virtual void removeItem(
int slot,
int count) ;
84 virtual ::std::string getName()
const ;
87 virtual int getContainerSize()
const ;
90 virtual int getMaxStackSize()
const ;
93 virtual void startOpen(
::Player& player) ;
96 virtual void stopOpen(
::Player& player) ;
99 virtual void serverInitItemStackIds(
102 ::std::function<
void(
int,
::ItemStack const&)> onNetIdChanged
106 virtual ::Container* getContainer() ;
109 virtual ::Container
const* getContainer()
const ;
112 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(
::BlockSource& region) ;
127 MCNAPI
bool _setEffect(
int effectId,
int& outEffectId,
int& outTier);
165 MCNAPI ::ItemStack
const&
$getItem(
int slot)
const;
184 ::std::function<
void(
int,
::ItemStack const&)> onNetIdChanged
Definition BeaconBlockActor.h:28
static MCAPI bool isPaymentItem(::ItemDescriptor const &pItem)
MCAPI void $setItem(int slot, ::ItemStack const &item)
MCAPI::ItemStack const & $getItem(int slot) const
MCAPI void $load(::ILevel &level, ::CompoundTag const &tag, ::DataLoadHelper &dataLoadHelper)
MCAPI void $stopOpen(::Player &player)
static MCAPI void ** $vftableForBlockActor()
MCAPI void $startOpen(::Player &player)
MCAPI void $_onUpdatePacket(::CompoundTag const &data, ::BlockSource ®ion)
MCAPI void $tick(::BlockSource ®ion)
MCAPI ::std::unique_ptr<::BlockActorDataPacket > $_getUpdatePacket(::BlockSource ®ion)
static MCAPI ::BlockColor _getMediumColor(::BlockLegacy const &medium)
static MCAPI void ** $vftableForContainer()
MCAPI BeaconBlockActor(::BlockPos const &pos)
MCAPI::std::string $getName() const
MCAPI bool _setEffect(int effectId, int &outEffectId, int &outTier)
MCAPI::Container * $getContainer()
MCAPI void $serverInitItemStackIds(int containerSlot, int count, ::std::function< void(int, ::ItemStack const &)> onNetIdChanged)
MCAPI bool $isWithinRenderDistance(::Vec3 const &cameraPosition) const
MCAPI int $getMaxStackSize() const
MCAPI bool isEffectAvailable(int effectId) const
MCAPI void checkShapeAndAchievement(::BlockSource ®ion)
MCAPI void $removeItem(int slot, int count)
MCAPI::CompoundTag getBeaconData(::SaveContext const &saveContext)
MCAPI bool _saveClientSideState(::CompoundTag &tag, ::SaveContext const &saveContext) const
MCAPI bool $hasAlphaLayer() const
MCAPI void _applyEffects(::BlockSource ®ion)
MCAPI bool $save(::CompoundTag &tag, ::SaveContext const &saveContext) const
MCAPI void * $ctor(::BlockPos const &pos)
MCAPI::Container const * $getContainer() const
MCAPI int $getContainerSize() const
MCAPI bool setSecondaryEffect(int effectId)
Definition BlockActorDataPacket.h:19
Definition BlockActor.h:32
Definition BlockLegacy.h:88
Definition BlockSource.h:67
Definition CompoundTag.h:13
Definition Container.h:30
Definition DataLoadHelper.h:20
Definition ItemDescriptor.h:22
Definition ItemStack.h:25
Definition MobEffect.h:27
Definition SaveContext.h:5
Definition BeaconBeamSection.h:5