LeviLamina
Loading...
Searching...
No Matches
FunctionAction.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/chunk/IRequestAction.h"
7
8// auto generated forward declare list
9// clang-format off
10class CommandOrigin;
11class CompoundTag;
12class Dimension;
14class ServerLevel;
15// clang-format on
16
17class FunctionAction : public ::IRequestAction {
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::CommandOrigin>> mCommandOrigin;
22 ::ll::TypedStorage<8, 32, ::std::string> mFilePath;
23 // NOLINTEND
24
25public:
26 // prevent constructor by default
27 FunctionAction();
28
29public:
30 // virtual functions
31 // NOLINTBEGIN
32 virtual ~FunctionAction() /*override*/;
33
34 virtual void execute(::ServerLevel& level, ::Dimension& dimension) /*override*/;
35
36 virtual void serialize(::CompoundTag& tag) /*override*/;
37
38 virtual bool operator==(::IRequestAction const& action) const /*override*/;
39 // NOLINTEND
40
41public:
42 // member functions
43 // NOLINTBEGIN
44 MCAPI FunctionAction(::std::string const& filePath, ::std::unique_ptr<::CommandOrigin> commandOrigin);
45
46 MCAPI void _printOriginInvalidError(::ServerLevel& level);
47
48 MCAPI void _printOutput(::ServerLevel& level, int successCount);
49
50 MCFOLD ::std::string const& getFilePath() const;
51 // NOLINTEND
52
53public:
54 // static functions
55 // NOLINTBEGIN
56 MCAPI static bool isValidTag(::CompoundTag const& tag);
57
58 MCAPI static ::std::unique_ptr<::FunctionAction> load(::CompoundTag const& tag, ::ICommandOriginLoader& loader);
59 // NOLINTEND
60
61public:
62 // constructor thunks
63 // NOLINTBEGIN
64 MCAPI void* $ctor(::std::string const& filePath, ::std::unique_ptr<::CommandOrigin> commandOrigin);
65 // NOLINTEND
66
67public:
68 // destructor thunk
69 // NOLINTBEGIN
70 MCAPI void $dtor();
71 // NOLINTEND
72
73public:
74 // virtual function thunks
75 // NOLINTBEGIN
76 MCAPI void $execute(::ServerLevel& level, ::Dimension& dimension);
77
78 MCAPI void $serialize(::CompoundTag& tag);
79
80
81 // NOLINTEND
82
83public:
84 // vftables
85 // NOLINTBEGIN
86 MCNAPI static void** $vftable();
87 // NOLINTEND
88};
Definition CommandOrigin.h:32
Definition CompoundTag.h:23
Definition Dimension.h:88
static MCAPI void ** $vftable()
Definition ICommandOriginLoader.h:11
Definition ServerLevel.h:59