LeviLamina
Loading...
Searching...
No Matches
CameraShakeComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/minecraft_camera/CameraShakeType.h"
7#include "mc/entity/components/CameraShakeTypeQueue.h"
8
9// auto generated forward declare list
10// clang-format off
11class Random;
12class SimplexNoise;
13class Vec3;
14// clang-format on
15
17public:
18 // CameraShakeComponent inner types define
19 using ShakeQueueArray = ::std::array<::CameraShakeTypeQueue, 2>;
20
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SimplexNoise>> xAxisNoise;
25 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SimplexNoise>> yAxisNoise;
26 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SimplexNoise>> zAxisNoise;
27 ::ll::TypedStorage<8, 8, double> mLastUpdatedTime;
28 ::ll::TypedStorage<4, 4, float> mNoiseTime;
29 ::ll::TypedStorage<4, 4, float> mDecayRate;
30 ::ll::TypedStorage<8, 64, ::std::array<::CameraShakeTypeQueue, 2>> mShakeTypeQueues;
31 ::ll::TypedStorage<1, 1, bool> mWasShaking;
32 // NOLINTEND
33
34public:
35 // member functions
36 // NOLINTBEGIN
37#ifdef LL_PLAT_C
38 MCAPI ::std::vector<::CameraShakeType> getActiveShakeTypes() const;
39
40 MCAPI ::Vec3
41 getShakeVector(::CameraShakeType shakeType, float noiseMultiplier, float frequency, float amplitude) const;
42
43 MCAPI void initialize(::Random& random);
44
45 MCAPI bool queueShakeEvent(::CameraShakeType shakeType, float intensity, float duration);
46
48#endif
49 // NOLINTEND
50
51public:
52 // destructor thunk
53 // NOLINTBEGIN
54#ifdef LL_PLAT_C
55 MCAPI void $dtor();
56#endif
57 // NOLINTEND
58};
Definition CameraShakeComponent.h:16
Definition Random.h:10
Definition SimplexNoise.h:13
Definition Vec3.h:10