LeviLamina
Loading...
Searching...
No Matches
CameraCommand.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/EasingType.h"
7#include "mc/server/commands/Command.h"
8#include "mc/server/commands/CommandPositionFloat.h"
9#include "mc/server/commands/CommandSelector.h"
10#include "mc/server/commands/RelativeFloat.h"
11
12// auto generated forward declare list
13// clang-format off
14class Actor;
15class BaseGameVersion;
16class CameraPresets;
17class CommandOrigin;
18class CommandOutput;
19class CommandRegistry;
20class Experiments;
21class Player;
24namespace SharedTypes::v1_21_90 { struct CameraPreset; }
25// clang-format on
26
27class CameraCommand : public ::Command {
28public:
29 // CameraCommand inner types define
30 enum class CameraCommandOption : uchar {
31 None = 0,
32 Set = 1,
33 Ease = 2,
34 Pos = 3,
35 Rot = 4,
36 FovSet = 5,
37 FovClear = 6,
38 Facing = 7,
39 AttachToEntity = 8,
40 DetachFromEntity = 9,
41 PlaySpline = 10,
42 TargetEntity = 11,
43 TargetOffset = 12,
44 RemoveTarget = 13,
45 ViewOffset = 14,
46 EntityOffset = 15,
47 Default = 16,
48 Clear = 17,
49 Fade = 18,
50 Time = 19,
51 Color = 20,
52 };
53
54public:
55 // member variables
56 // NOLINTBEGIN
57 ::ll::TypedStorage<8, 200, ::CommandSelector<::Player>> mPlayerTargets;
58 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mCommandMode;
59 ::ll::TypedStorage<8, 32, ::std::string> mCameraPresetName;
60 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mEasingOption;
61 ::ll::TypedStorage<4, 4, ::EasingType> mEasingType;
62 ::ll::TypedStorage<4, 4, float> mEasingTime;
63 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mPosOption;
64 ::ll::TypedStorage<4, 16, ::CommandPositionFloat> mPos;
65 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mRotOption;
66 ::ll::TypedStorage<4, 8, ::RelativeFloat> mRotX;
67 ::ll::TypedStorage<4, 8, ::RelativeFloat> mRotY;
68 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mFacingOption;
69 ::ll::TypedStorage<8, 200, ::CommandSelector<::Actor>> mFacingEntity;
70 ::ll::TypedStorage<4, 16, ::CommandPositionFloat> mFacingPos;
71 ::ll::TypedStorage<1, 1, bool> mFacingIsPosition;
72 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mDefaultOption;
73 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mViewOffsetOption;
74 ::ll::TypedStorage<4, 4, float> mViewOffsetX;
75 ::ll::TypedStorage<4, 4, float> mViewOffsetY;
76 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mEntityOffsetOption;
77 ::ll::TypedStorage<4, 4, float> mEntityOffsetX;
78 ::ll::TypedStorage<4, 4, float> mEntityOffsetY;
79 ::ll::TypedStorage<4, 4, float> mEntityOffsetZ;
80 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mAttachOption;
81 ::ll::TypedStorage<8, 200, ::CommandSelector<::Actor>> mAttachToEntity;
82 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mTargetEntityOption;
83 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mTargetOffsetOption;
84 ::ll::TypedStorage<8, 200, ::CommandSelector<::Actor>> mTargetEntity;
85 ::ll::TypedStorage<4, 4, float> mTargetCenterOffsetX;
86 ::ll::TypedStorage<4, 4, float> mTargetCenterOffsetY;
87 ::ll::TypedStorage<4, 4, float> mTargetCenterOffsetZ;
88 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mTimeOption;
89 ::ll::TypedStorage<4, 4, float> mFadeInSeconds;
90 ::ll::TypedStorage<4, 4, float> mHoldSeconds;
91 ::ll::TypedStorage<4, 4, float> mFadeOutSeconds;
92 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mColorOption;
93 ::ll::TypedStorage<4, 4, int> mFadeColorR;
94 ::ll::TypedStorage<4, 4, int> mFadeColorG;
95 ::ll::TypedStorage<4, 4, int> mFadeColorB;
96 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mFovOption;
97 ::ll::TypedStorage<4, 4, ::EasingType> mFovEasingType;
98 ::ll::TypedStorage<4, 4, float> mFieldOfView;
99 ::ll::TypedStorage<4, 4, float> mFovEasingTime;
100 ::ll::TypedStorage<1, 1, ::CameraCommand::CameraCommandOption> mSplineOption;
101 ::ll::TypedStorage<8, 32, ::std::string> mSplineName;
102 // NOLINTEND
103
104public:
105 // virtual functions
106 // NOLINTBEGIN
107 virtual void execute(::CommandOrigin const& origin, ::CommandOutput& output) const /*override*/;
108
109#ifdef LL_PLAT_S
110 virtual ~CameraCommand() /*override*/;
111#else // LL_PLAT_C
112 virtual ~CameraCommand() /*override*/ = default;
113#endif
114
115 // NOLINTEND
116
117public:
118 // member functions
119 // NOLINTBEGIN
120 MCAPI CameraCommand();
121
122 MCAPI void forEachSelectedPlayersCameraStates(
123 ::CommandOrigin const& origin,
124 ::std::function<void(::ServerCameraStatesComponent&)> callback
125 ) const;
126
127 MCAPI bool prepareInstruction(
128 ::CameraInstruction& cameraInstruction,
129 ::CameraPresets const& cameraPresets,
130 ::CommandOrigin const& origin,
131 ::CommandOutput& output,
132 ::Experiments const& experiments,
133 ::BaseGameVersion const& baseGameVersion
134 ) const;
135 // NOLINTEND
136
137public:
138 // static functions
139 // NOLINTBEGIN
140 MCAPI static bool resolveInheritance(
141 ::std::string& currentPresetName,
142 ::std::string const& parentToStopAt,
143 ::std::vector<::SharedTypes::v1_21_90::CameraPreset> const& presetList
144 );
145
146 MCAPI static void setup(::CommandRegistry& registry);
147 // NOLINTEND
148
149public:
150 // static variables
151 // NOLINTBEGIN
152 MCAPI static ::BaseGameVersion const& REMOVE_IGNORE_STARTING_VALUE_COMPONENT_VERSION();
153 // NOLINTEND
154
155public:
156 // constructor thunks
157 // NOLINTBEGIN
158 MCAPI void* $ctor();
159 // NOLINTEND
160
161public:
162 // destructor thunk
163 // NOLINTBEGIN
164 MCAPI void $dtor();
165 // NOLINTEND
166
167public:
168 // virtual function thunks
169 // NOLINTBEGIN
170 MCAPI void $execute(::CommandOrigin const& origin, ::CommandOutput& output) const;
171
172
173 // NOLINTEND
174
175public:
176 // vftables
177 // NOLINTBEGIN
178 MCNAPI static void** $vftable();
179 // NOLINTEND
180};
Definition Actor.h:106
Definition BaseGameVersion.h:8
static MCAPI void ** $vftable()
Definition CameraPresets.h:20
Definition CommandOrigin.h:32
Definition CommandOutput.h:20
Definition CommandRegistry.h:50
Definition Command.h:17
Definition Experiments.h:14
Definition Player.h:129
Definition Pos.h:5
Definition CameraInstruction.h:18
Definition ServerCameraStatesComponent.h:10
Definition CameraPreset.h:20