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