28class BeaconBlockActor :
public ::BlockActor,
public ::Container {
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;
47 ::ll::TypedStorage<1, 1, bool> mPermanentlyRendered;
48 ::ll::TypedStorage<1, 1, bool> mClientRenderingNeedsUpdate;
49 ::ll::TypedStorage<1, 1, bool> mIsBlockBaseLoaded;
59 virtual ~BeaconBlockActor() ;
67 virtual bool hasAlphaLayer()
const ;
69 virtual bool isPermanentlyRendered()
const ;
71 virtual bool isWithinRenderDistance(
::Vec3 const& cameraPosition)
const ;
73 virtual ::ItemStack
const& getItem(
int)
const ;
77 virtual void removeItem(
int slot,
int count) ;
79 virtual ::std::string getName()
const ;
81 virtual int getContainerSize()
const ;
83 virtual int getMaxStackSize()
const ;
85 virtual void startOpen(
::Actor&) ;
87 virtual void stopOpen(
::Actor& actor) ;
90 serverInitItemStackIds(
int onNetIdChanged,
int, ::std::function<
void(
int,
::ItemStack const&)>) ;
92 virtual ::Container* getContainer() ;
94 virtual ::Container
const* getContainer()
const ;
96 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(
::BlockSource&) ;
104 MCAPI BeaconBlockActor(
::BlockPos const& pos,
bool permanentlyRendered);
108 MCAPI
int _getEffectTier(
int effectId)
const;
111 _notifyBeamSectionsChange(
::BlockSource& region, ::std::vector<::BeaconBeamSection>
const& oldBeamSections);
120 MCAPI
bool clientRenderingNeedsUpdate()
const;
126 MCAPI ::CompoundTag getBeaconData(
::SaveContext const& saveContext);
128 MCFOLD ::std::vector<::MobEffect*>
const& getEffects()
const;
130 MCAPI
int getMaxSelections()
const;
133 MCAPI
bool isEffectAvailable(
int effectId)
const;
135 MCAPI
bool isSecondaryAvailable()
const;
137 MCAPI
bool setPrimaryEffect(
int effectId);
139 MCAPI
bool setSecondaryEffect(
int effectId);
145 MCAPI static ::BlockColor _getMediumColor(
::BlockType const& medium);
153 MCAPI
void* $ctor(
::BlockPos const& pos,
bool permanentlyRendered);
171 MCFOLD
bool $hasAlphaLayer()
const;
173 MCAPI
bool $isPermanentlyRendered()
const;
175 MCAPI
bool $isWithinRenderDistance(
::Vec3 const& cameraPosition)
const;
177 MCFOLD ::ItemStack
const& $getItem(
int)
const;
181 MCFOLD
void $removeItem(
int slot,
int count);
183 MCAPI ::std::string $getName()
const;
185 MCFOLD
int $getContainerSize()
const;
187 MCFOLD
int $getMaxStackSize()
const;
189 MCFOLD
void $startOpen(
::Actor&);
191 MCFOLD
void $stopOpen(
::Actor& actor);
193 MCFOLD
void $serverInitItemStackIds(
int onNetIdChanged,
int, ::std::function<
void(
int,
::ItemStack const&)>);
195 MCFOLD ::Container* $getContainer();
197 MCFOLD ::Container
const* $getContainer()
const;
199 MCAPI ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(
::BlockSource&);
209 MCAPI
static void** $vftableForBlockActor();
211 MCAPI
static void** $vftableForContainer();
Definition SaveContext.h:5