LeviLamina
Loading...
Searching...
No Matches
StructureAnimationAction.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/world/level/levelgen/structure/StructureAnimationData.h"
5
6// auto generated inclusion list
7#include "mc/world/level/BlockPos.h"
8#include "mc/world/level/chunk/IRequestAction.h"
9#include "mc/world/level/dimension/DimensionType.h"
10#include "mc/world/level/levelgen/structure/StructureSettings.h"
11
12// auto generated forward declare list
13// clang-format off
14class CompoundTag;
15class Dimension;
16class ServerLevel;
18// clang-format on
19
20class StructureAnimationAction : public ::IRequestAction {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::StructureAnimationData>> mStructureAnimationData;
25 ::ll::TypedStorage<8, 104, ::StructureSettings> mStructureSettings;
26 ::ll::TypedStorage<4, 4, ::DimensionType> mDimensionType;
27 ::ll::TypedStorage<4, 12, ::BlockPos> mLoadPosition;
28 ::ll::TypedStorage<8, 32, ::std::string> mFullName;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 StructureAnimationAction();
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual void execute(::ServerLevel& level, ::Dimension& dimension) /*override*/;
39
40 virtual bool operator==(::IRequestAction const& action) const /*override*/;
41
42 virtual void serialize(::CompoundTag& tag) /*override*/;
43 // NOLINTEND
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI StructureAnimationAction(
49 ::StructureSettings const& structureSettings,
50 ::DimensionType dimensionType,
51 ::BlockPos const& loadPosition,
52 ::std::string const& fullName
53 );
54 // NOLINTEND
55
56public:
57 // static functions
58 // NOLINTBEGIN
59#ifdef LL_PLAT_S
60 MCAPI static ::std::unique_ptr<::StructureAnimationAction>
61 load(::CompoundTag const& tag, ::std::string const& dimensionPrefix);
62#endif
63 // NOLINTEND
64
65public:
66 // constructor thunks
67 // NOLINTBEGIN
68 MCAPI void* $ctor(
69 ::StructureSettings const& structureSettings,
70 ::DimensionType dimensionType,
71 ::BlockPos const& loadPosition,
72 ::std::string const& fullName
73 );
74 // NOLINTEND
75
76public:
77 // virtual function thunks
78 // NOLINTBEGIN
79 MCAPI void $execute(::ServerLevel& level, ::Dimension& dimension);
80
81 MCAPI void $serialize(::CompoundTag& tag);
82
83
84 // NOLINTEND
85
86public:
87 // vftables
88 // NOLINTBEGIN
89 MCNAPI static void** $vftable();
90 // NOLINTEND
91};
Definition BlockPos.h:17
Definition CompoundTag.h:18
Definition Dimension.h:86
Definition IRequestAction.h:12
Definition ServerLevel.h:57
static MCAPI void ** $vftable()
Definition StructureAnimationData.h:16
Definition StructureSettings.h:18
Definition DimensionType.h:5