LeviLamina
Loading...
Searching...
No Matches
MobSpawnUtils.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/game_refs/OwnerPtr.h"
7#include "mc/world/level/biome/mob_spawn_utils/SurfaceDetectionType.h"
8
9// auto generated forward declare list
10// clang-format off
12class ActorFactory;
13class BlockPos;
14class BlockSource;
15class EntityContext;
16class Level;
17class Mob;
18class Vec2;
19class Vec3;
21// clang-format on
22
23namespace MobSpawnUtils {
24// functions
25// NOLINTBEGIN
26MCAPI void onMobSpawned(::BlockPos const& pos, ::Level& level, ::Mob& mob);
27
28MCAPI ::OwnerPtr<::EntityContext> spawnIfSummonable(
29 ::ActorDefinitionIdentifier const& actorIdentifier,
30 ::ActorDefinitionGroup& actorDefinitions,
31 ::ActorFactory& actorFactory,
32 ::Vec3 const& position,
33 ::Vec2 const& rotation
34);
35
36MCAPI ::Mob* trySpawnMob(
37 ::BlockSource& region,
38 ::ActorDefinitionIdentifier const& actorDefinition,
39 ::BlockPos start,
40 int spawnAttempts,
41 int spawnRangeXZ,
42 int spawnRangeY,
43 ::std::function<bool(::BlockPos)> const& isGoodSpawnPosition,
44 ::MobSpawnUtils::SurfaceDetectionType surfaceDetectionType
45);
46// NOLINTEND
47
48} // namespace MobSpawnUtils
Definition ActorDefinitionGroup.h:27
Definition ActorFactory.h:32
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition EntityContext.h:16
Definition Level.h:234
Definition Mob.h:47
Definition Vec2.h:5
Definition Vec3.h:10
Definition ActorDefinitionIdentifier.h:13