Skip to content
LeviMC
Home
Projects
Docs
6
LeviLamina
Mod loader for Minecraft Bedrock Edition
LegacyScriptEngine
Runs LLSE script plugins on LeviLamina
lip
General package installer
LeviLauncher
Bedrock launcher for Windows and Android
Be.D.D.
Scripted client input for mod tests
bedboo
Bedrock bots with a mineflayer-compatible API
All repositories on GitHub
Mods
Blog
Community
About
English
English
简体中文
繁體中文
Auto
Light
Dark
Auto
Light
Dark
LeviLamina
User Guides
Developer Guides
API Guides
API Reference
Maintainer Guides
Resources
LeviLamina on GitHub
LeviMC
Home
Projects
Docs
6
LeviLamina
Mod loader for Minecraft Bedrock Edition
LegacyScriptEngine
Runs LLSE script plugins on LeviLamina
lip
General package installer
LeviLauncher
Bedrock launcher for Windows and Android
Be.D.D.
Scripted client input for mod tests
bedboo
Bedrock bots with a mineflayer-compatible API
All repositories on GitHub
Mods
Blog
Community
About
API Reference
On this page
LeviLamina
User Guides
Developer Guides
API Guides
API Reference
Maintainer Guides
Search
Ctrl
K
Loading...
Searching...
No Matches
SpawnMobEvent.h
1
#pragma once
2
3
#include "ll/api/event/Cancellable.h"
4
#include "ll/api/event/world/WorldEvent.h"
5
6
#include "mc/deps/core/math/Vec3.h"
7
#include "mc/world/actor/ActorDefinitionIdentifier.h"
8
#include "mc/world/actor/Mob.h"
9
#include "mc/world/item/ItemStack.h"
10
11
namespace
ll::event::inline world {
12
13
class
SpawnMobEvent :
public
WorldEvent {
14
protected
:
15
ActorDefinitionIdentifier
const
& mIdentifier;
16
optional_ref<Actor>
mSpawner;
17
Vec3
const
& mPos;
18
bool
& mNaturalSpawn;
19
bool
& mSurface;
20
bool
& mFromSpawner;
21
22
constexpr
explicit
SpawnMobEvent(
23
BlockSource
& blockSource,
24
ActorDefinitionIdentifier
const
& identifier,
25
optional_ref<Actor>
spawner,
26
Vec3
const
& pos,
27
bool
& naturalSpawn,
28
bool
& surface,
29
bool
& fromSpawner
30
)
31
: WorldEvent(blockSource),
32
mIdentifier(identifier),
33
mSpawner(spawner),
34
mPos(pos),
35
mNaturalSpawn(naturalSpawn),
36
mSurface(surface),
37
mFromSpawner(fromSpawner) {}
38
39
public
:
40
LLAPI
void
serialize(
CompoundTag
&)
const override
;
41
42
LLNDAPI
ActorDefinitionIdentifier
const
& identifier()
const
;
43
LLNDAPI
optional_ref<Actor>
spawner()
const
;
44
LLNDAPI
Vec3
const
& pos()
const
;
45
LLNDAPI
bool
const
& naturalSpawn()
const
;
46
LLNDAPI
bool
const
& surface()
const
;
47
LLNDAPI
bool
const
& fromSpawner()
const
;
48
};
49
class
SpawningMobEvent final :
public
Cancellable<SpawnMobEvent> {
50
public
:
51
constexpr
explicit
SpawningMobEvent(
52
BlockSource
& blockSource,
53
ActorDefinitionIdentifier
const
& identifier,
54
optional_ref<Actor>
spawner,
55
Vec3
const
& pos,
56
bool
& naturalSpawn,
57
bool
& surface,
58
bool
& fromSpawner
59
)
60
: Cancellable(blockSource, identifier, spawner, pos, naturalSpawn, surface, fromSpawner) {}
61
62
public
:
63
LLAPI
void
deserialize(
CompoundTag
const
&)
override
;
64
65
LLNDAPI
bool
& naturalSpawn()
const
;
66
LLNDAPI
bool
& surface()
const
;
67
LLNDAPI
bool
& fromSpawner()
const
;
68
};
69
class
SpawnedMobEvent final :
public
SpawnMobEvent {
70
optional_ref<Mob>
mMob;
71
72
public
:
73
constexpr
explicit
SpawnedMobEvent(
74
optional_ref<Mob>
mob,
75
BlockSource
& blockSource,
76
ActorDefinitionIdentifier
const
& identifier,
77
optional_ref<Actor>
spawner,
78
Vec3
const
& pos,
79
bool
& naturalSpawn,
80
bool
& surface,
81
bool
& fromSpawner
82
)
83
: SpawnMobEvent(blockSource, identifier, spawner, pos, naturalSpawn, surface, fromSpawner),
84
mMob(mob) {}
85
86
public
:
87
LLAPI
void
serialize(
CompoundTag
&)
const override
;
88
89
LLNDAPI
optional_ref<Mob>
mob()
const
;
90
};
91
}
// namespace ll::event::inline world
BlockSource
Definition
BlockSource.h:72
CompoundTag
Definition
CompoundTag.h:18
Vec3
Definition
Vec3.h:10
optional_ref
Definition
optional_ref.h:10
ActorDefinitionIdentifier
Definition
ActorDefinitionIdentifier.h:15
src
ll
api
event
world
SpawnMobEvent.h
Generated on
for LeviLamina by
1.16.1