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;
30class 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& entity);
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& player, ::Vec2 const& rotation);
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 onPlayerKineticDamageDealt(
145 ::Player& player,
146 ::ActorUniqueID const& target,
147 ::DealKineticDamageComponent const& dealKinematicDamageComponent
148 );
149
150 virtual ::EventResult onEvent(::PlayerNotificationEvent const& event);
151
152 virtual ::EventResult onShowDataDrivenScreen(::LocalPlayer&, ::std::string const&, uint, ::std::optional<uint>);
153
154 virtual ::EventResult onCloseDataDrivenScreen(::LocalPlayer&, uint);
155
156 virtual ::EventResult onCloseAllDataDrivenScreens(::LocalPlayer&);
157 // NOLINTEND
158
159public:
160 // virtual function thunks
161 // NOLINTBEGIN
162 MCFOLD ::EventResult $onPlayerAwardAchievement(::Player& player, ::MinecraftEventing::AchievementIds achievement);
163
164 MCFOLD ::EventResult $onPlayerPortalBuilt(::Player& player, ::DimensionType dimensionBuiltIn);
165
166 MCFOLD ::EventResult
167 $onPlayerPortalUsed(::Player& player, ::DimensionType fromDimension, ::DimensionType toDimension);
168
169 MCFOLD ::EventResult $onPlayerPoweredBeacon(::Player const& player, int const level);
170
171 MCFOLD ::EventResult $onPlayerCaravanChanged(::Actor const& mob, int caravanCount);
172
173 MCFOLD ::EventResult $onPlayerSaved(::Player& player);
174
175 MCFOLD ::EventResult $onPlayerInput(::EntityContext& entity);
176
177 MCFOLD ::EventResult $onPlayerAuthInputReceived(::Player&);
178
179 MCFOLD ::EventResult $onPlayerAuthInputApplied(::Player&);
180
181 MCFOLD ::EventResult $onPlayerTurn(::Player& player, ::Vec2& turnDelta);
182
183 MCFOLD ::EventResult $onCameraSetPlayerRot(::Player& player, ::Vec2 const& rotation);
184
185 MCFOLD ::EventResult $onStartDestroyBlock(::Player& player, ::BlockPos const& pos, uchar& face);
186
187 MCFOLD ::EventResult $onPlayerAction(::Player& player, ::PlayerActionType type, ::BlockPos const& pos, int data);
188
189 MCFOLD ::EventResult $onLocalPlayerDeath(::IClientInstance& client, ::LocalPlayer& player);
190
191 MCFOLD ::EventResult $onLocalPlayerRespawn(::IClientInstance& client, ::LocalPlayer& player);
192
193 MCFOLD ::EventResult $onLocalPlayerOpenInventory(::IClientInstance&, ::LocalPlayer&);
194
195 MCFOLD ::EventResult $onLocalPlayerOpenTrading(::IClientInstance&, ::LocalPlayer&, ::ActorUniqueID const&, bool);
196
197 MCFOLD ::EventResult $onPlayerMove(::Player& player);
198
199 MCFOLD ::EventResult $onPlayerSlide(::Player& player);
200
201 MCFOLD ::EventResult $onPlayerTargetBlockHit(::Player& player, int const signalStrength);
202
203 MCFOLD ::EventResult $onPlayerTick(::Player& player);
204
205 MCFOLD ::EventResult $onPlayerStartRiding(::Player& player, ::Actor& vehicle);
206
207 MCFOLD ::EventResult
208 $onPlayerStopRiding(::Player& player, bool exitFromPassenger, bool entityIsBeingDestroyed, bool switchingVehicles);
209
210 MCFOLD ::EventResult $onPlayerCreated(
211 ::LocalPlayer& player,
212 ::persona::ProfileType const personaSlot,
213 ::std::string const& classicSkinId,
214 bool usingClassicSkin,
215 ::NetworkType networkType
216 );
217
218 MCFOLD ::EventResult $onPlayerTeleported(::Player& player);
219
220 MCFOLD ::EventResult $onPlayerTeleported(::Player&, float);
221
222 MCFOLD ::EventResult $onPlayerAttackedActor(::Player& player, ::Actor& target);
223
224 MCFOLD ::EventResult $onPlayerDestroyedBlock(::Player& player, int x, int y, int z);
225
226 MCFOLD ::EventResult $onPlayerDestroyedBlock(::Player& player, ::Block const& block);
227
228 MCFOLD ::EventResult $onPlayerEquippedArmor(::Player& player, ::ItemDescriptor const& item);
229
230 MCFOLD ::EventResult
231 $onPlayerEnchantedItem(::Player& player, ::ItemStack const& item, ::ItemEnchants const& enchants);
232
233 MCFOLD ::EventResult $onPlayerNamedItem(::Player& player, ::ItemDescriptor const& item);
234
235 MCFOLD ::EventResult $onPlayerItemUseInteraction(::Player& player, ::ItemInstance const& itemBeforeUse);
236
237 MCFOLD ::EventResult $onPlayerItemPlaceInteraction(::Player& player, ::ItemInstance const& itemBeforeUse);
238
239 MCFOLD ::EventResult $onPlayerCraftedItem(
240 ::Player& player,
241 ::ItemInstance const& craftedItem,
242 bool recipeBook,
243 bool hadSearchString,
244 bool craftedAutomatically,
245 int startingTabId,
246 int endingTabId,
247 int numTabsChanged,
248 bool filterOn,
249 bool recipeBookShown,
250 ::std::vector<short> const& ingredientItemIDs
251 );
252
253 MCFOLD ::EventResult $onPlayerSmithiedItem(::Player&, ::ItemDescriptor const&);
254
255 MCFOLD ::EventResult
256 $onPlayerItemEquipped(::Player& player, ::ItemInstance const& equippedItem, int equipmentSlotId);
257
258 MCFOLD ::EventResult
259 $onPlayerPiglinBarter(::Player& player, ::std::string const& item, bool wasTargetingBarteringPlayer);
260
261 MCFOLD ::EventResult $onPlayerWaxOnWaxOff(::Player& player, int const blockID);
262
263 MCFOLD ::EventResult $onPlayerKineticDamageDealt(
264 ::Player& player,
265 ::ActorUniqueID const& target,
266 ::DealKineticDamageComponent const& dealKinematicDamageComponent
267 );
268
269 MCFOLD ::EventResult $onShowDataDrivenScreen(::LocalPlayer&, ::std::string const&, uint, ::std::optional<uint>);
270
271 MCFOLD ::EventResult $onCloseDataDrivenScreen(::LocalPlayer&, uint);
272
273 MCFOLD ::EventResult $onCloseAllDataDrivenScreens(::LocalPlayer&);
274
275#ifdef LL_PLAT_C
276 MCFOLD ::EventResult $onEvent(::PlayerNotificationEvent const& event);
277#endif
278
279
280 // NOLINTEND
281};
Definition Actor.h:106
Definition BlockPos.h:19
Definition Block.h:43
Definition Dimension.h:86
Definition EntityContext.h:16
Definition IClientInstance.h:5
Definition ItemDescriptor.h:24
Definition ItemEnchants.h:17
Definition ItemInstance.h:15
Definition ItemStack.h:26
Definition LocalPlayer.h:5
Definition PlayerEventListener.h:33
Definition Player.h:129
Definition Vec2.h:5
Definition ActorUniqueID.h:5
Definition DealKineticDamageComponent.h:14
Definition PlayerNotificationEvent.h:130