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::vector<::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 ::Actor const* _getActor(::WeakRef<::EntityContext> const actorRef) const;
85 // NOLINTEND
86
87public:
88 // virtual function thunks
89 // NOLINTBEGIN
90 MCAPI ::std::optional<::Vec3> $tryGetActorRelativeLocation(
91 ::WeakRef<::EntityContext> const actorRef,
92 ::SharedTypes::Legacy::ActorLocation actorLoc
93 ) const;
94
95 MCAPI ::std::optional<::Vec3>
96 $tryGetActorInterpolatedPosition(::WeakRef<::EntityContext> const actorRef, float interpolationFactor) const;
97
98 MCAPI ::std::optional<::Vec2> $tryGetActorRotation(::WeakRef<::EntityContext const> const actorRef) const;
99
100 MCAPI ::std::optional<::Vec3> $tryGetActorPositionDelta(::WeakRef<::EntityContext> const actorRef) const;
101
102 MCAPI ::std::vector<::ICameraAPI::ShakeParameters> $tryGetShakeParameters(
103 ::WeakRef<::EntityContext> actorRef,
104 float noiseMultiplier,
105 float frequency,
106 float amplitude
107 ) const;
108
109 MCAPI ::std::optional<float> $tryGetFOV() const;
110
111 MCAPI ::ICameraAPI::CameraMovementData $getCameraMovementVector() const;
112
113 MCFOLD float $getSecondsSinceProgramStart() const;
114
115 MCAPI ::WeakRef<::EntityContext> $getDefaultCameraTarget() const;
116
117 MCAPI ::WeakRef<::EntityContext> $getWeakEntity(int64 actorId) const;
118
119 MCAPI ::WeakRef<::EntityRegistry> $getRegistryWeakEntity_DONOTUSE() const;
120
121 MCFOLD float $getFrameAlpha() const;
122
123 MCAPI ::glm::vec2 $getViewportSize() const;
124
125 MCAPI ::std::optional<::Vec3> $clip(::glm::vec3 const& A, ::glm::vec3 const& B);
126
127 MCAPI bool $isInWall(::Vec3 const& pos) const;
128
129 MCAPI bool $isAlive(::WeakRef<::EntityContext> const actorRef) const;
130 // NOLINTEND
131
132public:
133 // vftables
134 // NOLINTBEGIN
135 MCNAPI static void** $vftable();
136 // NOLINTEND
137};
Definition Actor.h:113
Definition CameraAPI.h:5
static MCAPI void ** $vftable()
Definition EntityContext.h:15
Definition EntityRegistry.h:10
Definition ICameraAPI.h:5
Definition IClientInstance.h:5
Definition Vec2.h:5
Definition Vec3.h:10
Definition ICameraAPI.h:18
Definition ICameraAPI.h:16