LeviLamina
Loading...
Searching...
No Matches
HudArmorRenderer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/controls/renderers/MinecraftUICustomRenderer.h"
7#include "mc/deps/input/RectangleArea.h"
8#include "mc/deps/minecraft_renderer/renderer/Mesh.h"
9#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
10
11// auto generated forward declare list
12// clang-format off
13class IClientInstance;
15class ScreenContext;
16class UIControl;
18class UIScene;
19namespace mce { class TextureGroup; }
20// clang-format on
21
23public:
24 // HudArmorRenderer inner types define
25 enum class ArmorType : int {
26 Full = 0,
27 Half = 1,
28 Empty = 2,
29 Count = 3,
30 };
31
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<1, 1, bool> mHasLoadedTextures;
36 ::ll::TypedStorage<8, 8, uint64> mNumFullIcons;
37 ::ll::TypedStorage<8, 8, uint64> mNumHalfIcons;
38 ::ll::TypedStorage<8, 8, uint64> mNumEmptyIcons;
39 ::ll::TypedStorage<4, 4, float> mArmorHeightOffset;
40 ::ll::TypedStorage<8, 96, ::std::array<::mce::TexturePtr, 3>> mArmorTextures;
41 ::ll::TypedStorage<8, 1584, ::std::array<::mce::Mesh, 3>> mArmorMeshes;
42 ::ll::TypedStorage<4, 120, ::std::array<::glm::vec3, 10>> mIconPosition;
43 ::ll::TypedStorage<4, 16, ::RectangleArea> mRenderAABB;
44 // NOLINTEND
45
46public:
47 // virtual functions
48 // NOLINTBEGIN
49 virtual ~HudArmorRenderer() /*override*/ = default;
50
51 virtual ::std::shared_ptr<::UICustomRenderer> clone() const /*override*/;
52
53 virtual void
54 render(::MinecraftUIRenderContext& renderContext, ::IClientInstance&, ::UIControl& owner, int) /*override*/;
55
56 virtual bool update(::IClientInstance& client, ::UIControl& owner, ::UIScene const& scene) /*override*/;
57 // NOLINTEND
58
59public:
60 // member functions
61 // NOLINTBEGIN
62 MCAPI HudArmorRenderer();
63
64 MCAPI void _loadArmorTextures(::std::shared_ptr<::mce::TextureGroup> textureGroup);
65
66 MCFOLD bool _validateArmorMeshes(::ScreenContext& screenContext);
67 // NOLINTEND
68
69public:
70 // constructor thunks
71 // NOLINTBEGIN
72 MCAPI void* $ctor();
73 // NOLINTEND
74
75public:
76 // virtual function thunks
77 // NOLINTBEGIN
78 MCAPI ::std::shared_ptr<::UICustomRenderer> $clone() const;
79
80 MCAPI void $render(::MinecraftUIRenderContext& renderContext, ::IClientInstance&, ::UIControl& owner, int);
81
82 MCAPI bool $update(::IClientInstance& client, ::UIControl& owner, ::UIScene const& scene);
83 // NOLINTEND
84
85public:
86 // vftables
87 // NOLINTBEGIN
88 MCNAPI static void** $vftable();
89 // NOLINTEND
90};
Definition HudArmorRenderer.h:5
static MCAPI void ** $vftable()
Definition IClientInstance.h:5
Definition MinecraftUICustomRenderer.h:5
Definition MinecraftUIRenderContext.h:5
Definition ScreenContext.h:5
Definition UIControl.h:5
Definition UICustomRenderer.h:5
Definition UIScene.h:5
Definition TextureGroup.h:7