LeviLamina
Loading...
Searching...
No Matches
NaturalSpawner.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/actor/ActorType.h"
7#include "mc/world/actor/spawn_category/Type.h"
8#include "mc/world/level/Spawner.h"
9
10// auto generated forward declare list
11// clang-format off
13class Biome;
14class BlockPos;
15class BlockSource;
16class ChunkPos;
17class IRandom;
20class Mob;
21class Random;
24class Vec3;
25struct ActorUniqueID;
26struct SpawnSettings;
27namespace br::spawn { class EntityTypeCache; }
28namespace br::spawn { class SpawnPlacements; }
29namespace br::spawn { struct State; }
30// clang-format on
31
32class NaturalSpawner : public ::Spawner {
33public:
34 // member variables
35 // NOLINTBEGIN
42 // NOLINTEND
43
44public:
45 // prevent constructor by default
46 NaturalSpawner& operator=(NaturalSpawner const&);
49
50public:
51 // virtual functions
52 // NOLINTBEGIN
53 // vIndex: 0
54 virtual ~NaturalSpawner() /*override*/ = default;
55
56 // vIndex: 18
57 virtual ::std::tuple<::std::array<::SpawnCategory::Type, 8>, uint64>
58 filteredSpawningCategories(::br::spawn::State const&, bool, bool, bool) const /*override*/;
59
60 // vIndex: 19
61 virtual void spawnForChunk(
65 ::gsl::span<::SpawnCategory::Type>,
67 ) const /*override*/;
68
69 // vIndex: 20
70 virtual void spawnMobsForChunkGeneration(::BlockSource&, ::Biome const&, ::ChunkPos, ::IRandom&) const /*override*/;
71
72 // vIndex: 17
73 virtual ::br::spawn::SpawnPlacements& getSpawnPlacements() /*override*/;
74
75 // vIndex: 1
76 virtual void initializeServerSide(::ResourcePackManager&, ::IWorldRegistriesProvider&) /*override*/;
77
78 // vIndex: 2
79 virtual ::SpawnSettings const& getSpawnSettings() const /*override*/;
80
81 // vIndex: 3
82 virtual void setSpawnSettings(::SpawnSettings const&) /*override*/;
83
84 // vIndex: 4
85 virtual ::ActorSpawnRuleGroup const* getSpawnRules() const /*override*/;
86
87 // vIndex: 5
88 virtual ::ActorSpawnRuleGroup* getSpawnRulesMutable() const /*override*/;
89
90 // vIndex: 6
91 virtual ::SpawnGroupRegistry const* getSpawnGroupRegistry() const /*override*/;
92
93 // vIndex: 7
94 virtual ::br::spawn::EntityTypeCache* getEntityTypeCache() const /*override*/;
95
96 // vIndex: 11
97 virtual void postProcessSpawnMobs(::BlockSource&, int, int, ::Random&) /*override*/;
98
99 // vIndex: 12
100 virtual void tick(::BlockSource&, ::LevelChunkVolumeData const&, ::ChunkPos const) /*override*/;
101
102 // vIndex: 13
103 virtual void tickMobCount() /*override*/;
104
105 // vIndex: 14
106 virtual void incrementSpawnableTickedMob() /*override*/;
107
108 // vIndex: 15
109 virtual uint getSpawnableTickedMobCountPrevious() const /*override*/;
110
111 // vIndex: 16
112 virtual ::std::unordered_set<::ActorUniqueID> spawnMobGroup(
114 ::std::string const&,
115 ::Vec3 const&,
116 bool,
117 bool,
118 ::std::function<void(::Mob&)>&&
119 ) /*override*/;
120 // NOLINTEND
121
122public:
123 // virtual function thunks
124 // NOLINTBEGIN
125
126 // NOLINTEND
127};
Definition ActorSpawnRuleGroup.h:17
Definition Biome.h:26
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition ChunkPos.h:11
Definition IRandom.h:10
Definition IWorldRegistriesProvider.h:26
Definition LevelChunkVolumeData.h:18
Definition Mob.h:47
Definition NaturalSpawner.h:32
Definition Random.h:11
Definition ResourcePackManager.h:23
Definition SpawnGroupRegistry.h:15
Definition Spawner.h:40
Definition Vec3.h:10
Definition ActorUniqueID.h:5
Definition SpawnSettings.h:14
Definition State.h:10
Definition Alias.h:14