LeviLamina
Loading...
Searching...
No Matches
PlayerEventListener.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/AutomaticID.h"
7#include "mc/events/MinecraftEventing.h"
8#include "mc/events/NetworkType.h"
9#include "mc/network/packet/PlayerActionType.h"
10#include "mc/world/actor/player/persona/ProfileType.h"
11#include "mc/world/events/EventResult.h"
12
13// auto generated forward declare list
14// clang-format off
15class Actor;
16class Block;
17class BlockPos;
18class Dimension;
19class EntityContext;
20class ItemDescriptor;
21class ItemEnchants;
22class ItemInstance;
23class ItemStack;
24class Player;
25class Vec2;
26struct ActorUniqueID;
29class IClientInstance;
30struct LocalPlayer;
31// clang-format on
32
34public:
35 // PlayerEventListener inner types define
36 using EventType = ::PlayerNotificationEvent;
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ~PlayerEventListener() = default;
42
43 virtual ::EventResult onPlayerAwardAchievement(::Player& player, ::MinecraftEventing::AchievementIds achievement);
44
45 virtual ::EventResult onPlayerPortalBuilt(::Player& player, ::DimensionType dimensionBuiltIn);
46
47 virtual ::EventResult
48 onPlayerPortalUsed(::Player& player, ::DimensionType fromDimension, ::DimensionType toDimension);
49
50 virtual ::EventResult onPlayerPoweredBeacon(::Player const& player, int const level);
51
52 virtual ::EventResult onPlayerCaravanChanged(::Actor const& mob, int caravanCount);
53
54 virtual ::EventResult onPlayerSaved(::Player& player);
55
56 virtual ::EventResult onPlayerInput(::EntityContext&);
57
58 virtual ::EventResult onPlayerAuthInputReceived(::Player&);
59
60 virtual ::EventResult onPlayerAuthInputApplied(::Player&);
61
62 virtual ::EventResult onPlayerTurn(::Player& player, ::Vec2& turnDelta);
63
64 virtual ::EventResult onCameraSetPlayerRot(::Player&, ::Vec2 const&);
65
66 virtual ::EventResult onStartDestroyBlock(::Player& player, ::BlockPos const& pos, uchar& face);
67
68 virtual ::EventResult onPlayerAction(::Player& player, ::PlayerActionType type, ::BlockPos const& pos, int data);
69
70 virtual ::EventResult onLocalPlayerDeath(::IClientInstance& client, ::LocalPlayer& player);
71
72 virtual ::EventResult onLocalPlayerRespawn(::IClientInstance& client, ::LocalPlayer& player);
73
74 virtual ::EventResult onLocalPlayerOpenInventory(::IClientInstance&, ::LocalPlayer&);
75
76 virtual ::EventResult onLocalPlayerOpenTrading(::IClientInstance&, ::LocalPlayer&, ::ActorUniqueID const&, bool);
77
78 virtual ::EventResult onPlayerMove(::Player& player);
79
80 virtual ::EventResult onPlayerSlide(::Player& player);
81
82 virtual ::EventResult onPlayerTargetBlockHit(::Player& player, int const signalStrength);
83
84 virtual ::EventResult onPlayerTick(::Player& player);
85
86 virtual ::EventResult onPlayerStartRiding(::Player& player, ::Actor& vehicle);
87
88 virtual ::EventResult
89 onPlayerStopRiding(::Player& player, bool exitFromPassenger, bool entityIsBeingDestroyed, bool switchingVehicles);
90
91 virtual ::EventResult onPlayerCreated(
92 ::LocalPlayer& player,
93 ::persona::ProfileType const personaSlot,
94 ::std::string const& classicSkinId,
95 bool usingClassicSkin,
96 ::NetworkType networkType
97 );
98
99 virtual ::EventResult onPlayerTeleported(::Player& player);
100
101 virtual ::EventResult onPlayerTeleported(::Player&, float);
102
103 virtual ::EventResult onPlayerAttackedActor(::Player& player, ::Actor& target);
104
105 virtual ::EventResult onPlayerDestroyedBlock(::Player& player, int x, int y, int z);
106
107 virtual ::EventResult onPlayerDestroyedBlock(::Player& player, ::Block const& block);
108
109 virtual ::EventResult onPlayerEquippedArmor(::Player& player, ::ItemDescriptor const& item);
110
111 virtual ::EventResult
112 onPlayerEnchantedItem(::Player& player, ::ItemStack const& item, ::ItemEnchants const& enchants);
113
114 virtual ::EventResult onPlayerNamedItem(::Player& player, ::ItemDescriptor const& item);
115
116 virtual ::EventResult onPlayerItemUseInteraction(::Player& player, ::ItemInstance const& itemBeforeUse);
117
118 virtual ::EventResult onPlayerItemPlaceInteraction(::Player& player, ::ItemInstance const& itemBeforeUse);
119
120 virtual ::EventResult onPlayerCraftedItem(
121 ::Player& player,
122 ::ItemInstance const& craftedItem,
123 bool recipeBook,
124 bool hadSearchString,
125 bool craftedAutomatically,
126 int startingTabId,
127 int endingTabId,
128 int numTabsChanged,
129 bool filterOn,
130 bool recipeBookShown,
131 ::std::vector<short> const& ingredientItemIDs
132 );
133
134 virtual ::EventResult onPlayerSmithiedItem(::Player&, ::ItemDescriptor const&);
135
136 virtual ::EventResult
137 onPlayerItemEquipped(::Player& player, ::ItemInstance const& equippedItem, int equipmentSlotId);
138
139 virtual ::EventResult
140 onPlayerPiglinBarter(::Player& player, ::std::string const& item, bool wasTargetingBarteringPlayer);
141
142 virtual ::EventResult onPlayerWaxOnWaxOff(::Player& player, int const blockID);
143
144 virtual ::EventResult
145 onPlayerKineticDamageDealt(::Player&, ::ActorUniqueID const&, ::DealKineticDamageComponent const&);
146
147 virtual ::EventResult onEvent(::PlayerNotificationEvent const& event);
148 // NOLINTEND
149
150public:
151 // virtual function thunks
152 // NOLINTBEGIN
153 MCFOLD ::EventResult $onPlayerAwardAchievement(::Player& player, ::MinecraftEventing::AchievementIds achievement);
154
155 MCFOLD ::EventResult $onPlayerPortalBuilt(::Player& player, ::DimensionType dimensionBuiltIn);
156
157 MCFOLD ::EventResult
158 $onPlayerPortalUsed(::Player& player, ::DimensionType fromDimension, ::DimensionType toDimension);
159
160 MCFOLD ::EventResult $onPlayerPoweredBeacon(::Player const& player, int const level);
161
162 MCFOLD ::EventResult $onPlayerCaravanChanged(::Actor const& mob, int caravanCount);
163
164 MCFOLD ::EventResult $onPlayerSaved(::Player& player);
165
166 MCFOLD ::EventResult $onPlayerInput(::EntityContext&);
167
168 MCFOLD ::EventResult $onPlayerAuthInputReceived(::Player&);
169
170 MCFOLD ::EventResult $onPlayerAuthInputApplied(::Player&);
171
172 MCFOLD ::EventResult $onPlayerTurn(::Player& player, ::Vec2& turnDelta);
173
174 MCFOLD ::EventResult $onCameraSetPlayerRot(::Player&, ::Vec2 const&);
175
176 MCFOLD ::EventResult $onStartDestroyBlock(::Player& player, ::BlockPos const& pos, uchar& face);
177
178 MCFOLD ::EventResult $onPlayerAction(::Player& player, ::PlayerActionType type, ::BlockPos const& pos, int data);
179
180 MCFOLD ::EventResult $onLocalPlayerDeath(::IClientInstance& client, ::LocalPlayer& player);
181
182 MCFOLD ::EventResult $onLocalPlayerRespawn(::IClientInstance& client, ::LocalPlayer& player);
183
184 MCFOLD ::EventResult $onLocalPlayerOpenInventory(::IClientInstance&, ::LocalPlayer&);
185
186 MCFOLD ::EventResult $onLocalPlayerOpenTrading(::IClientInstance&, ::LocalPlayer&, ::ActorUniqueID const&, bool);
187
188 MCFOLD ::EventResult $onPlayerMove(::Player& player);
189
190 MCFOLD ::EventResult $onPlayerSlide(::Player& player);
191
192 MCFOLD ::EventResult $onPlayerTargetBlockHit(::Player& player, int const signalStrength);
193
194 MCFOLD ::EventResult $onPlayerTick(::Player& player);
195
196 MCFOLD ::EventResult $onPlayerStartRiding(::Player& player, ::Actor& vehicle);
197
198 MCFOLD ::EventResult
199 $onPlayerStopRiding(::Player& player, bool exitFromPassenger, bool entityIsBeingDestroyed, bool switchingVehicles);
200
201 MCFOLD ::EventResult $onPlayerCreated(
202 ::LocalPlayer& player,
203 ::persona::ProfileType const personaSlot,
204 ::std::string const& classicSkinId,
205 bool usingClassicSkin,
206 ::NetworkType networkType
207 );
208
209 MCFOLD ::EventResult $onPlayerTeleported(::Player& player);
210
211 MCFOLD ::EventResult $onPlayerTeleported(::Player&, float);
212
213 MCFOLD ::EventResult $onPlayerAttackedActor(::Player& player, ::Actor& target);
214
215 MCFOLD ::EventResult $onPlayerDestroyedBlock(::Player& player, int x, int y, int z);
216
217 MCFOLD ::EventResult $onPlayerDestroyedBlock(::Player& player, ::Block const& block);
218
219 MCFOLD ::EventResult $onPlayerEquippedArmor(::Player& player, ::ItemDescriptor const& item);
220
221 MCFOLD ::EventResult
222 $onPlayerEnchantedItem(::Player& player, ::ItemStack const& item, ::ItemEnchants const& enchants);
223
224 MCFOLD ::EventResult $onPlayerNamedItem(::Player& player, ::ItemDescriptor const& item);
225
226 MCFOLD ::EventResult $onPlayerItemUseInteraction(::Player& player, ::ItemInstance const& itemBeforeUse);
227
228 MCFOLD ::EventResult $onPlayerItemPlaceInteraction(::Player& player, ::ItemInstance const& itemBeforeUse);
229
230 MCFOLD ::EventResult $onPlayerCraftedItem(
231 ::Player& player,
232 ::ItemInstance const& craftedItem,
233 bool recipeBook,
234 bool hadSearchString,
235 bool craftedAutomatically,
236 int startingTabId,
237 int endingTabId,
238 int numTabsChanged,
239 bool filterOn,
240 bool recipeBookShown,
241 ::std::vector<short> const& ingredientItemIDs
242 );
243
244 MCFOLD ::EventResult $onPlayerSmithiedItem(::Player&, ::ItemDescriptor const&);
245
246 MCFOLD ::EventResult
247 $onPlayerItemEquipped(::Player& player, ::ItemInstance const& equippedItem, int equipmentSlotId);
248
249 MCFOLD ::EventResult
250 $onPlayerPiglinBarter(::Player& player, ::std::string const& item, bool wasTargetingBarteringPlayer);
251
252 MCFOLD ::EventResult $onPlayerWaxOnWaxOff(::Player& player, int const blockID);
253
254 MCFOLD ::EventResult
255 $onPlayerKineticDamageDealt(::Player&, ::ActorUniqueID const&, ::DealKineticDamageComponent const&);
256
257#ifdef LL_PLAT_C
258 MCFOLD ::EventResult $onEvent(::PlayerNotificationEvent const& event);
259#endif
260
261
262 // NOLINTEND
263};
Definition Actor.h:105
Definition BlockPos.h:19
Definition Block.h:43
Definition Dimension.h:85
Definition EntityContext.h:16
Definition IClientInstance.h:5
Definition ItemDescriptor.h:23
Definition ItemEnchants.h:17
Definition ItemInstance.h:15
Definition ItemStack.h:26
Definition PlayerEventListener.h:33
Definition Player.h:125
Definition Vec2.h:5
Definition ActorUniqueID.h:5
Definition DealKineticDamageComponent.h:14
Definition LocalPlayer.h:5
Definition PlayerNotificationEvent.h:126