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