Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
SerializedActorBlockActor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/nbt/CompoundTag.h"
7#include "mc/world/Direction.h"
8#include "mc/world/actor/ActorDefinitionIdentifier.h"
9#include "mc/world/level/block/actor/BlockActorRendererId.h"
10#include "mc/world/level/block/actor/BlockActorType.h"
11#include "mc/world/level/block/actor/VanillaBlockActor.h"
12
13// auto generated forward declare list
14// clang-format off
15class Actor;
16class Block;
18class BlockPos;
19class BlockSource;
20class DataLoadHelper;
21class ILevel;
22class ItemStackBase;
23class SaveContext;
24// clang-format on
25
26class SerializedActorBlockActor : public ::VanillaBlockActor {
27public:
28 // SerializedActorBlockActor inner types declare
29 // clang-format off
30 struct SerializedActor;
31 // clang-format on
32
33 // SerializedActorBlockActor inner types define
35 public:
36 // member variables
37 // NOLINTBEGIN
38 ::ll::TypedStorage<8, 176, ::ActorDefinitionIdentifier> mActorIdentifier;
39 ::ll::TypedStorage<8, 24, ::CompoundTag> mSaveData;
40 // NOLINTEND
41 };
42
43public:
44 // member variables
45 // NOLINTBEGIN
46 ::ll::TypedStorage<8, 200, ::SerializedActorBlockActor::SerializedActor> mSerializedActor;
47 ::ll::TypedStorage<4, 4, int> mPose;
48 // NOLINTEND
49
50public:
51 // prevent constructor by default
52 SerializedActorBlockActor();
53
54public:
55 // virtual functions
56 // NOLINTBEGIN
57 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
58
59 virtual void load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
60
61 virtual void onChanged(::BlockSource& region) /*override*/;
62
63 virtual void getDebugText(
64 ::std::vector<::std::string>& outputInfo,
65 ::BlockPos const& debugPos,
66 ::BlockSource const* region
67 ) const /*override*/;
68
69 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(::BlockSource&) /*override*/;
70
71 virtual void _onUpdatePacket(::CompoundTag const& data, ::BlockSource& region) /*override*/;
72 // NOLINTEND
73
74public:
75 // member functions
76 // NOLINTBEGIN
78 ::BlockPos const& pos,
79 ::BlockActorType type,
80 ::BlockActorRendererId rendererId,
81 ::ActorDefinitionIdentifier defaultActorIdentifier
82 );
83
84 MCNAPI void
85 executeEvent(::BlockSource&, ::BlockPos const& pos, ::Block const&, ::std::string const& eventName, ::Actor& actor);
86
87 MCNAPI void saveUserData(::CompoundTag& tag) const;
88
89 MCNAPI ::Actor* spawnActor(::BlockSource& region, ::Direction::Type direction);
90 // NOLINTEND
91
92public:
93 // static functions
94 // NOLINTBEGIN
95 MCNAPI static void savePoseToItemForInventoryRendering(::ItemStackBase& item, int pose);
96 // NOLINTEND
97
98public:
99 // static variables
100 // NOLINTBEGIN
101 MCNAPI static ::std::string_view const& ACTOR_IDENTIFIER_TAG_NAME();
102
103 MCNAPI static ::std::string_view const& ACTOR_TAG_NAME();
104
105 MCNAPI static ::std::string_view const& POSE_TAG_NAME();
106
107 MCNAPI static ::std::string_view const& SAVE_DATA_TAG_NAME();
108 // NOLINTEND
109
110public:
111 // constructor thunks
112 // NOLINTBEGIN
113 MCNAPI void* $ctor(
114 ::BlockPos const& pos,
115 ::BlockActorType type,
116 ::BlockActorRendererId rendererId,
117 ::ActorDefinitionIdentifier defaultActorIdentifier
118 );
119 // NOLINTEND
120
121public:
122 // virtual function thunks
123 // NOLINTBEGIN
124 MCNAPI bool $save(::CompoundTag& tag, ::SaveContext const& saveContext) const;
125
126 MCNAPI void $load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
127
128 MCNAPI void $onChanged(::BlockSource& region);
129
130 MCNAPI void $getDebugText(
131 ::std::vector<::std::string>& outputInfo,
132 ::BlockPos const& debugPos,
133 ::BlockSource const* region
134 ) const;
135
136 MCNAPI ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(::BlockSource&);
137
138 MCNAPI void $_onUpdatePacket(::CompoundTag const& data, ::BlockSource& region);
139
140
141 // NOLINTEND
142
143public:
144 // vftables
145 // NOLINTBEGIN
147
149
150 MCNAPI static void** $vftableForBlockActor();
151
153 // NOLINTEND
154};
Definition Actor.h:116
Definition BlockActorDataPacket.h:19
Definition BlockPos.h:14
Definition BlockSource.h:72
Definition Block.h:42
Definition CompoundTag.h:18
Definition DataLoadHelper.h:20
Definition ILevel.h:223
Definition ItemStackBase.h:45
Definition SaveContext.h:5
static MCAPI void ** $vftableForBlockActor()
MCAPI void * $ctor(::BlockPos const &pos, ::BlockActorType type, ::BlockActorRendererId rendererId, ::ActorDefinitionIdentifier defaultActorIdentifier)
static MCAPI ::std::string_view const & ACTOR_TAG_NAME()
MCAPI void $_onUpdatePacket(::CompoundTag const &data, ::BlockSource &region)
static MCAPI ::std::string_view const & POSE_TAG_NAME()
static MCAPI void savePoseToItemForInventoryRendering(::ItemStackBase &item, int pose)
MCAPI ::std::unique_ptr<::BlockActorDataPacket > $_getUpdatePacket(::BlockSource &)
MCAPI void $load(::ILevel &level, ::CompoundTag const &tag, ::DataLoadHelper &dataLoadHelper)
MCAPI::Actor * spawnActor(::BlockSource &region, ::Direction::Type direction)
static MCAPI void ** $vftableForIVanillaTickBlockActorComponent()
static MCAPI ::std::string_view const & SAVE_DATA_TAG_NAME()
MCAPI void saveUserData(::CompoundTag &tag) const
static MCAPI ::std::string_view const & ACTOR_IDENTIFIER_TAG_NAME()
MCAPI void $onChanged(::BlockSource &region)
MCAPI void executeEvent(::BlockSource &, ::BlockPos const &pos, ::Block const &, ::std::string const &eventName, ::Actor &actor)
MCAPI SerializedActorBlockActor(::BlockPos const &pos, ::BlockActorType type, ::BlockActorRendererId rendererId, ::ActorDefinitionIdentifier defaultActorIdentifier)
static MCAPI void ** $vftableForIVanillaRenderBlockActorComponent()
MCAPI bool $save(::CompoundTag &tag, ::SaveContext const &saveContext) const
MCAPI void $getDebugText(::std::vector<::std::string > &outputInfo, ::BlockPos const &debugPos, ::BlockSource const *region) const
static MCAPI void ** $vftableForIVanillaMainBlockActorComponent()
Definition ActorDefinitionIdentifier.h:15
Definition SerializedActorBlockActor.h:34