LeviLamina
Loading...
Searching...
No Matches
Structure.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/world/actor/spawn_category/Type.h"
8#include "mc/world/level/levelgen/v2/generation_step/Type.h"
9#include "mc/world/level/levelgen/v2/terrain_adjustment/Type.h"
10
11// auto generated forward declare list
12// clang-format off
13class IRandom;
15struct BiomeIdType;
16namespace br::worldgen { class GenerationStub; }
17namespace br::worldgen { class StructureInstance; }
18namespace br::worldgen { class WorldGenContext; }
19namespace br::worldgen { struct GenerationContext; }
20namespace br::worldgen { struct StructureSpawnOverride; }
21// clang-format on
22
23namespace br::worldgen {
24
25struct Structure {
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<1, 1, ::br::worldgen::TerrainAdjustment::Type> mAdjustment;
30 ::ll::TypedStorage<8, 24, ::std::vector<::BiomeIdType>> mBiomes;
31 ::ll::TypedStorage<8, 32, ::std::string> mKey;
32 ::ll::TypedStorage<8, 64, ::std::unordered_map<::SpawnCategory::Type, ::br::worldgen::StructureSpawnOverride>>
33 mMobs;
34 ::ll::TypedStorage<1, 1, ::br::worldgen::GenerationStep::Type> mStep;
35 ::ll::TypedStorage<8, 48, ::HashedString> mType;
36 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::PoolAliasBinding>>> mPoolAliases;
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
41 Structure& operator=(Structure const&);
42 Structure();
43
44public:
45 // virtual functions
46 // NOLINTBEGIN
47 // vIndex: 0
48 virtual ~Structure();
49
50 // vIndex: 1
51 virtual short originHeight(::IRandom&, ::br::worldgen::WorldGenContext&) const = 0;
52
53 // vIndex: 2
54 virtual ::std::optional<::br::worldgen::GenerationStub>
55 findValidGenerationPoint(::br::worldgen::GenerationContext&) const = 0;
56 // NOLINTEND
57
58public:
59 // member functions
60 // NOLINTBEGIN
62
63 MCAPI ::std::shared_ptr<::br::worldgen::StructureInstance>
65 // NOLINTEND
66
67public:
68 // constructor thunks
69 // NOLINTBEGIN
70 MCAPI void* $ctor(::br::worldgen::Structure const&);
71 // NOLINTEND
72
73public:
74 // destructor thunk
75 // NOLINTBEGIN
76 MCAPI void $dtor();
77 // NOLINTEND
78
79public:
80 // virtual function thunks
81 // NOLINTBEGIN
82
83 // NOLINTEND
84
85public:
86 // vftables
87 // NOLINTBEGIN
88 MCNAPI static void** $vftable();
89 // NOLINTEND
90};
91
92} // namespace br::worldgen
Definition IRandom.h:13
Definition PoolAliasBinding.h:14
Definition WorldGenContext.h:7
Definition BiomeIdType.h:8
Definition WorldGenContext.h:13
Definition GenerationContext.h:17
Definition Structure.h:25
static MCAPI void ** $vftable()
Definition context.h:5