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