LeviLamina
Loading...
Searching...
No Matches
FogDefinition.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/world/level/fog/FogSetting.h"
7#include "mc/client/world/level/fog/FogVolumetricCoefficientSetting.h"
8#include "mc/client/world/level/fog/FogVolumetricDensitySetting.h"
9#include "mc/client/world/level/fog/FogVolumetricHenyeyGreensteinGSetting.h"
10#include "mc/deps/core/string/HashedString.h"
11#include "mc/util/json_util/JsonSchemaObjectNode.h"
12
13// auto generated forward declare list
14// clang-format off
15class SemVersion;
17namespace JsonUtil { class EmptyClass; }
18// clang-format on
19
20struct FogDefinition {
21public:
22 // FogDefinition inner types define
23 enum class DistanceSettingType : int {
24 Air = 0,
25 Weather = 1,
26 Water = 2,
27 Lava = 3,
28 LavaResist = 4,
29 PowderSnow = 5,
30 };
31
32 enum class DensitySettingType : int {
33 Air = 0,
34 Weather = 1,
35 Water = 2,
36 Lava = 3,
37 LavaResist = 4,
38 };
39
40 enum class CoefficientSettingType : int {
41 Air = 0,
42 Water = 1,
43 Cloud = 2,
44 };
45
46 enum class HenyeyGreensteinGSettingType : int {
47 Air = 0,
48 Water = 1,
49 };
50
51public:
52 // member variables
53 // NOLINTBEGIN
54 ::ll::TypedStorage<8, 48, ::HashedString> mIdentifier;
55 ::ll::TypedStorage<4, 76, ::std::optional<::FogSetting>> mDistanceAirSetting;
56 ::ll::TypedStorage<4, 76, ::std::optional<::FogSetting>> mDistanceWeatherSetting;
57 ::ll::TypedStorage<4, 76, ::std::optional<::FogSetting>> mDistanceWaterSetting;
58 ::ll::TypedStorage<4, 76, ::std::optional<::FogSetting>> mDistanceLavaSetting;
59 ::ll::TypedStorage<4, 76, ::std::optional<::FogSetting>> mDistanceLavaResistanceSetting;
60 ::ll::TypedStorage<4, 76, ::std::optional<::FogSetting>> mDistancePowderSnowSetting;
61 ::ll::TypedStorage<8, 112, ::std::optional<::FogVolumetricDensitySetting>> mVolumeDensityAirSetting;
62 ::ll::TypedStorage<8, 112, ::std::optional<::FogVolumetricDensitySetting>> mVolumeDensityWeatherSetting;
63 ::ll::TypedStorage<8, 112, ::std::optional<::FogVolumetricDensitySetting>> mVolumeDensityWaterSetting;
64 ::ll::TypedStorage<8, 112, ::std::optional<::FogVolumetricDensitySetting>> mVolumeDensityLavaSetting;
65 ::ll::TypedStorage<8, 112, ::std::optional<::FogVolumetricDensitySetting>> mVolumeDensityLavaResistanceSetting;
66 ::ll::TypedStorage<8, 72, ::std::optional<::FogVolumetricCoefficientSetting>> mVolumeCoefficientAirSetting;
67 ::ll::TypedStorage<8, 72, ::std::optional<::FogVolumetricCoefficientSetting>> mVolumeCoefficientWaterSetting;
68 ::ll::TypedStorage<8, 72, ::std::optional<::FogVolumetricCoefficientSetting>> mVolumeCoefficientCloudSetting;
69 ::ll::TypedStorage<8, 40, ::std::optional<::FogVolumetricHenyeyGreensteinGSetting>>
70 mVolumeHenyeyGreensteinGAirSetting;
71 ::ll::TypedStorage<8, 40, ::std::optional<::FogVolumetricHenyeyGreensteinGSetting>>
72 mVolumeHenyeyGreensteinGWaterSetting;
73 // NOLINTEND
74
75public:
76 // prevent constructor by default
77 FogDefinition();
78
79public:
80 // member functions
81 // NOLINTBEGIN
82 MCAPI FogDefinition(
83 ::HashedString identifier,
84 ::std::optional<::FogSetting> distanceAir,
85 ::std::optional<::FogSetting> distanceWeather,
86 ::std::optional<::FogSetting> distanceWater,
87 ::std::optional<::FogSetting> distanceLava,
88 ::std::optional<::FogSetting> distanceLavaResistance,
89 ::std::optional<::FogSetting> distancePowderSnow,
90 ::std::optional<::FogVolumetricDensitySetting> densityAir,
91 ::std::optional<::FogVolumetricDensitySetting> densityWeather,
92 ::std::optional<::FogVolumetricDensitySetting> densityWater,
93 ::std::optional<::FogVolumetricDensitySetting> densityLava,
94 ::std::optional<::FogVolumetricDensitySetting> densityLavaResistance,
95 ::std::optional<::FogVolumetricCoefficientSetting> coefficientAir,
96 ::std::optional<::FogVolumetricCoefficientSetting> coefficientWater,
97 ::std::optional<::FogVolumetricCoefficientSetting> coefficientCloud,
98 ::std::optional<::FogVolumetricHenyeyGreensteinGSetting> henyeyGreensteinGAir,
99 ::std::optional<::FogVolumetricHenyeyGreensteinGSetting> henyeyGreensteinGWater
100 );
101
102 MCAPI ~FogDefinition();
103 // NOLINTEND
104
105public:
106 // static functions
107 // NOLINTBEGIN
108 MCAPI static ::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::FogDefinition>>
109 _buildFogDefinitionSchema_common(::SemVersion version);
110 // NOLINTEND
111
112public:
113 // static variables
114 // NOLINTBEGIN
115 MCAPI static ::FogDistanceSetting const& DEFAULT_DISTANCE_AIR_SETTING();
116
117 MCAPI static ::FogDistanceSetting const& DEFAULT_DISTANCE_LAVA_RESISTANCE_SETTING();
118
119 MCAPI static ::FogDistanceSetting const& DEFAULT_DISTANCE_LAVA_SETTING();
120
121 MCAPI static ::FogDistanceSetting const& DEFAULT_DISTANCE_NETHER_AIR_SETTING();
122
123 MCAPI static ::FogDistanceSetting const& DEFAULT_DISTANCE_POWDER_SNOW_SETTING();
124
125 MCAPI static ::FogDistanceSetting const& DEFAULT_DISTANCE_WATER_SETTING();
126
127 MCAPI static ::FogDistanceSetting const& DEFAULT_DISTANCE_WEATHER_SETTING();
128
129 MCAPI static ::FogSetting const& DEFAULT_FOG_AIR_SETTING();
130
131 MCAPI static ::FogDefinition const& DEFAULT_FOG_DEFINITION();
132
133 MCAPI static ::FogSetting const& DEFAULT_FOG_LAVA_RESISTANCE_SETTING();
134
135 MCAPI static ::FogSetting const& DEFAULT_FOG_LAVA_SETTING();
136
137 MCAPI static ::FogSetting const& DEFAULT_FOG_NETHER_AIR_SETTING();
138
139 MCAPI static ::FogSetting const& DEFAULT_FOG_POWDER_SNOW_SETTING();
140
141 MCAPI static ::FogSetting const& DEFAULT_FOG_WATER_SETTING();
142
143 MCAPI static ::FogSetting const& DEFAULT_FOG_WEATHER_SETTING();
144
145 MCAPI static ::FogVolumetricCoefficientSetting const& DEFAULT_VOLUME_COEFFICIENT_AIR_SETTING();
146
147 MCAPI static ::FogVolumetricCoefficientSetting const& DEFAULT_VOLUME_COEFFICIENT_CLOUD_SETTING();
148
149 MCAPI static ::FogVolumetricCoefficientSetting const& DEFAULT_VOLUME_COEFFICIENT_WATER_SETTING();
150
151 MCAPI static ::FogVolumetricHenyeyGreensteinGSetting const& DEFAULT_VOLUME_HENYEY_GREENSTEIN_G_AIR_SETTING();
152
153 MCAPI static ::FogVolumetricHenyeyGreensteinGSetting const& DEFAULT_VOLUME_HENYEY_GREENSTEIN_G_WATER_SETTING();
154
155 MCAPI static ::FogDefinition const& DEFERRED_DEFAULT_FOG_DEFINITION();
156
157 MCAPI static ::FogVolumetricDensitySetting const& DEFERRED_DEFAULT_VOLUME_DENSITY_AIR_SETTING();
158
159 MCAPI static ::FogVolumetricDensitySetting const& DEFERRED_DEFAULT_VOLUME_DENSITY_WATER_SETTING();
160
161 MCAPI static ::FogVolumetricDensitySetting const& DEFERRED_DEFAULT_VOLUME_DENSITY_WEATHER_SETTING();
162 // NOLINTEND
163
164public:
165 // constructor thunks
166 // NOLINTBEGIN
167 MCAPI void* $ctor(
168 ::HashedString identifier,
169 ::std::optional<::FogSetting> distanceAir,
170 ::std::optional<::FogSetting> distanceWeather,
171 ::std::optional<::FogSetting> distanceWater,
172 ::std::optional<::FogSetting> distanceLava,
173 ::std::optional<::FogSetting> distanceLavaResistance,
174 ::std::optional<::FogSetting> distancePowderSnow,
175 ::std::optional<::FogVolumetricDensitySetting> densityAir,
176 ::std::optional<::FogVolumetricDensitySetting> densityWeather,
177 ::std::optional<::FogVolumetricDensitySetting> densityWater,
178 ::std::optional<::FogVolumetricDensitySetting> densityLava,
179 ::std::optional<::FogVolumetricDensitySetting> densityLavaResistance,
180 ::std::optional<::FogVolumetricCoefficientSetting> coefficientAir,
181 ::std::optional<::FogVolumetricCoefficientSetting> coefficientWater,
182 ::std::optional<::FogVolumetricCoefficientSetting> coefficientCloud,
183 ::std::optional<::FogVolumetricHenyeyGreensteinGSetting> henyeyGreensteinGAir,
184 ::std::optional<::FogVolumetricHenyeyGreensteinGSetting> henyeyGreensteinGWater
185 );
186 // NOLINTEND
187
188public:
189 // destructor thunk
190 // NOLINTBEGIN
191 MCAPI void $dtor();
192 // NOLINTEND
193};
Definition EmptyClass.h:7
Definition SemVersion.h:15
Definition FogDefinition.h:5
Definition FogDistanceSetting.h:5