LeviLamina
Loading...
Searching...
No Matches
CameraAPI.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/game_refs/WeakRef.h"
7#include "mc/deps/minecraft_camera/ICameraAPI.h"
8#include "mc/deps/shared_types/legacy/actor/ActorLocation.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class EntityContext;
14class EntityRegistry;
15class IClientInstance;
16class Vec2;
17class Vec3;
18// clang-format on
19
20class CameraAPI : public ::ICameraAPI {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 8, ::IClientInstance&> mClientInstance;
25 // NOLINTEND
26
27public:
28 // prevent constructor by default
29 CameraAPI& operator=(CameraAPI const&);
30 CameraAPI(CameraAPI const&);
31 CameraAPI();
32
33public:
34 // virtual functions
35 // NOLINTBEGIN
36 virtual ::std::optional<::Vec3> tryGetActorRelativeLocation(
37 ::WeakRef<::EntityContext> const actorRef,
38 ::SharedTypes::Legacy::ActorLocation actorLoc
39 ) const /*override*/;
40
41 virtual ::std::optional<::Vec3>
42 tryGetActorInterpolatedPosition(::WeakRef<::EntityContext> const actorRef, float interpolationFactor) const
43 /*override*/;
44
45 virtual ::std::optional<::Vec2> tryGetActorRotation(::WeakRef<::EntityContext const> const actorRef) const
46 /*override*/;
47
48 virtual ::std::optional<::Vec3> tryGetActorPositionDelta(::WeakRef<::EntityContext> const actorRef) const
49 /*override*/;
50
51 virtual ::std::optional<::ICameraAPI::ShakeParameters> tryGetShakeParameters(
52 ::WeakRef<::EntityContext> actorRef,
53 float noiseMultiplier,
54 float frequency,
55 float amplitude
56 ) const /*override*/;
57
58 virtual ::std::optional<float> tryGetFOV() const /*override*/;
59
60 virtual ::ICameraAPI::CameraMovementData getCameraMovementVector() const /*override*/;
61
62 virtual float getSecondsSinceProgramStart() const /*override*/;
63
64 virtual ::WeakRef<::EntityContext> getDefaultCameraTarget() const /*override*/;
65
66 virtual ::WeakRef<::EntityContext> getWeakEntity(int64 actorId) const /*override*/;
67
68 virtual ::WeakRef<::EntityRegistry> getRegistryWeakEntity_DONOTUSE() const /*override*/;
69
70 virtual float getFrameAlpha() const /*override*/;
71
72 virtual ::glm::vec2 getViewportSize() const /*override*/;
73
74 virtual ::std::optional<::Vec3> clip(::glm::vec3 const& A, ::glm::vec3 const& B) /*override*/;
75
76 virtual bool isInWall(::Vec3 const& pos) const /*override*/;
77
78 virtual bool isAlive(::WeakRef<::EntityContext> const actorRef) const /*override*/;
79 // NOLINTEND
80
81public:
82 // member functions
83 // NOLINTBEGIN
84 MCAPI explicit CameraAPI(::IClientInstance& client);
85
86 MCFOLD ::Actor const* _getActor(::WeakRef<::EntityContext> actorRef) const;
87 // NOLINTEND
88
89public:
90 // constructor thunks
91 // NOLINTBEGIN
92 MCAPI void* $ctor(::IClientInstance& client);
93 // NOLINTEND
94
95public:
96 // virtual function thunks
97 // NOLINTBEGIN
98 MCAPI ::std::optional<::Vec3> $tryGetActorRelativeLocation(
99 ::WeakRef<::EntityContext> const actorRef,
100 ::SharedTypes::Legacy::ActorLocation actorLoc
101 ) const;
102
103 MCAPI ::std::optional<::Vec3>
104 $tryGetActorInterpolatedPosition(::WeakRef<::EntityContext> const actorRef, float interpolationFactor) const;
105
106 MCAPI ::std::optional<::Vec2> $tryGetActorRotation(::WeakRef<::EntityContext const> const actorRef) const;
107
108 MCAPI ::std::optional<::Vec3> $tryGetActorPositionDelta(::WeakRef<::EntityContext> const actorRef) const;
109
110 MCAPI ::std::optional<::ICameraAPI::ShakeParameters> $tryGetShakeParameters(
111 ::WeakRef<::EntityContext> actorRef,
112 float noiseMultiplier,
113 float frequency,
114 float amplitude
115 ) const;
116
117 MCAPI ::std::optional<float> $tryGetFOV() const;
118
119 MCAPI ::ICameraAPI::CameraMovementData $getCameraMovementVector() const;
120
121 MCFOLD float $getSecondsSinceProgramStart() const;
122
123 MCAPI ::WeakRef<::EntityContext> $getDefaultCameraTarget() const;
124
125 MCAPI ::WeakRef<::EntityContext> $getWeakEntity(int64 actorId) const;
126
127 MCAPI ::WeakRef<::EntityRegistry> $getRegistryWeakEntity_DONOTUSE() const;
128
129 MCFOLD float $getFrameAlpha() const;
130
131 MCAPI ::glm::vec2 $getViewportSize() const;
132
133 MCAPI ::std::optional<::Vec3> $clip(::glm::vec3 const& A, ::glm::vec3 const& B);
134
135 MCAPI bool $isInWall(::Vec3 const& pos) const;
136
137 MCAPI bool $isAlive(::WeakRef<::EntityContext> const actorRef) const;
138 // NOLINTEND
139
140public:
141 // vftables
142 // NOLINTBEGIN
143 MCNAPI static void** $vftable();
144 // NOLINTEND
145};
Definition Actor.h:125
Definition CameraAPI.h:5
static MCAPI void ** $vftable()
Definition EntityContext.h:17
Definition EntityRegistry.h:11
Definition ICameraAPI.h:5
Definition IClientInstance.h:5
Definition Vec2.h:5
Definition Vec3.h:10
Definition ICameraAPI.h:18
Definition ICameraAPI.h:16