LeviLamina
Loading...
Searching...
No Matches
SpawnGroupRegistry.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
9class MobSpawnRules;
11class SemVersion;
12class SpawnGroupData;
13// clang-format on
14
15class SpawnGroupRegistry {
16public:
17 // SpawnGroupRegistry inner types define
18 using SpawnGroupLookupMap = ::std::unordered_map<::std::string, ::SpawnGroupData*>;
19
20 using SpawnGroupRegistryMap = ::std::vector<::std::unique_ptr<::SpawnGroupData>>;
21
22 using SpawnRulesHandler =
23 ::std::function<void(::std::string const&, int, ::BiomeFilterGroup&, ::MobSpawnRules&, ::SemVersion const&)>;
24
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::SpawnGroupData>>> mSpawnGroupRegistry;
29 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::SpawnGroupData*>> mSpawnGroupLookupMap;
30 ::ll::TypedStorage<8, 8, ::IMinecraftEventing&> mEventing;
31 // NOLINTEND
32
33public:
34 // prevent constructor by default
35 SpawnGroupRegistry& operator=(SpawnGroupRegistry const&);
36 SpawnGroupRegistry(SpawnGroupRegistry const&);
37 SpawnGroupRegistry();
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 virtual ~SpawnGroupRegistry() = default;
43 // NOLINTEND
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI void _getResources(
49 ::ResourcePackManager& resourcePackManager,
50 ::std::function<void(::std::string const&, int, ::BiomeFilterGroup&, ::MobSpawnRules&, ::SemVersion const&)>
51 callback
52 );
53
54 MCAPI ::SpawnGroupData const* getSpawnGroup(::std::string const& identifier) const;
55 // NOLINTEND
56
57public:
58 // vftables
59 // NOLINTBEGIN
60 MCAPI static void** $vftable();
61 // NOLINTEND
62};
Definition BiomeFilterGroup.h:13
Definition IMinecraftEventing.h:145
Definition MobSpawnRules.h:21
Definition ResourcePackManager.h:38
Definition SemVersion.h:15
Definition SpawnGroupData.h:10