LeviLamina
Loading...
Searching...
No Matches
Player.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/deps/certificates/Certificate.h"
5#include "mc/entity/components/UserEntityIdentifierComponent.h"
6#include "mc/network/NetworkPeer.h"
7#include "mc/world/inventory/EnderChestContainer.h"
8
9// auto generated inclusion list
10#include "mc/certificates/identity/PlayerAuthenticationType.h"
11#include "mc/common/SubClientId.h"
12#include "mc/deps/core/math/Vec3.h"
13#include "mc/deps/core/platform/BuildPlatform.h"
14#include "mc/deps/core/timing/Stopwatch.h"
15#include "mc/deps/core/utility/NonOwnerPointer.h"
16#include "mc/deps/core/utility/optional_ref.h"
17#include "mc/deps/core/utility/pub_sub/Publisher.h"
18#include "mc/deps/game_refs/OwnerPtr.h"
19#include "mc/deps/game_refs/StackRefResult.h"
20#include "mc/deps/shared_types/legacy/ContainerType.h"
21#include "mc/deps/shared_types/legacy/LevelSoundEvent.h"
22#include "mc/deps/shared_types/legacy/actor/ActorDamageCause.h"
23#include "mc/deps/shared_types/legacy/actor/ArmorSlot.h"
24#include "mc/entity/components/PlayerPositionModeComponent.h"
25#include "mc/legacy/ActorUniqueID.h"
26#include "mc/server/commands/CommandPermissionLevel.h"
27#include "mc/server/commands/PlayerPermissionLevel.h"
28#include "mc/world/ContainerID.h"
29#include "mc/world/PlayerUIContainer.h"
30#include "mc/world/actor/ActorEvent.h"
31#include "mc/world/actor/ActorInitializationMethod.h"
32#include "mc/world/actor/ActorResetRule.h"
33#include "mc/world/actor/ActorType.h"
34#include "mc/world/actor/Mob.h"
35#include "mc/world/actor/MobSpawnMethod.h"
36#include "mc/world/actor/bhave/BehaviorStatus.h"
37#include "mc/world/actor/player/AbilitiesIndex.h"
38#include "mc/world/actor/player/BedSleepingResult.h"
39#include "mc/world/actor/player/PlayerItemInUse.h"
40#include "mc/world/actor/player/PlayerSpawnFallbackType.h"
41#include "mc/world/actor/player/PlayerUISlot.h"
42#include "mc/world/inventory/FurnaceOptions.h"
43#include "mc/world/inventory/InventoryOptions.h"
44#include "mc/world/inventory/transaction/InventoryTransactionManager.h"
45#include "mc/world/item/HandSlot.h"
46#include "mc/world/item/ItemGroup.h"
47#include "mc/world/item/ItemInstance.h"
48#include "mc/world/item/ItemUseMethod.h"
49#include "mc/world/level/BlockPos.h"
50#include "mc/world/level/GameType.h"
51#include "mc/world/level/dimension/DimensionType.h"
52
53// auto generated forward declare list
54// clang-format off
55class AABB;
56class Actor;
58class ActorHurtResult;
60class Agent;
62class Attribute;
63class Block;
64class BlockActor;
65class BlockSource;
66class BodyControl;
68class ChunkPos;
69class ChunkSource;
70class ChunkViewSource;
72class CompoundTag;
73class Container;
76class DataLoadHelper;
78class EntityContext;
79class GameMode;
81class HashedString;
88class ILevel;
93class Item;
94class ItemDescriptor;
95class ItemStack;
96class ItemStackBase;
102class Packet;
103class PacketSender;
104class PersonaPiece;
106class PlayerInventory;
110class ShieldItem;
111class SubChunkPos;
112class TextObjectRoot;
113class Vec2;
114struct AABBShapeComponent;
116struct BiomeIdType;
117struct INpcDialogueData;
119struct PlayerComponent;
122struct PlayerPartyInfo;
124struct Tick;
126namespace Bedrock::PubSub::ThreadModel { struct SingleThreaded; }
127namespace Editor { class IEditorPlayer; }
128namespace mce { class Color; }
129namespace mce { class UUID; }
131class PlayerListener;
132// clang-format on
133
135class Inventory;
136
137class Player : public ::Mob {
138public:
139 // Player inner types declare
140 // clang-format off
141 struct AttackParameters;
142 struct CachedSpawnData;
145 struct PlayerSpawnPoint;
146 // clang-format on
147
148 // Player inner types define
149 enum class SpawnPositionSource : int {
150 Randomizer = 0,
151 Respawn = 1,
152 Teleport = 2,
153 Static = 3,
154 };
155
156 enum class SpawnPositionState : int {
157 InitializeSpawnPositionRandomizer = 0,
158 WaitForClientAck = 1,
159 DetermineDimension = 2,
160 ChangeDimension = 3,
161 WaitForDimension = 4,
162 ChooseSpawnArea = 5,
163 CheckLoadedChunk = 6,
164 ChooseSpawnPosition = 7,
165 SpawnComplete = 8,
166 };
167
169 public:
170 // AttackParameters inner types define
171 enum class Sound : int {
172 None = 0,
173 Predictive = 1,
174 NonPredictive = 2,
175 };
176
177 public:
178 // member variables
179 // NOLINTBEGIN
180 ::ll::TypedStorage<4, 4, ::Player::AttackParameters::Sound> mSound;
181 ::ll::TypedStorage<1, 1, bool> mTriggerCooldown;
182 ::ll::TypedStorage<1, 1, bool> mCanCrit;
183 // NOLINTEND
184 };
185
187 public:
188 // member variables
189 // NOLINTBEGIN
190 ::ll::TypedStorage<4, 4, ::DimensionType> mRespawnDimensionId;
191 ::ll::TypedStorage<4, 12, ::Vec3> mActualRespawnPosition;
192 ::ll::TypedStorage<4, 12, ::BlockPos> mRequestedRespawnPosition;
193 ::ll::TypedStorage<1, 1, bool> mHasRespawnPosition;
194 ::ll::TypedStorage<4, 12, ::BlockPos> mSharedSpawnPosition;
195 ::ll::TypedStorage<1, 1, bool> mRespawnReady;
196 ::ll::TypedStorage<4, 12, ::Vec3> mPlayerPos;
197 ::ll::TypedStorage<1, 1, bool> mIsForcedRespawn;
198 ::ll::TypedStorage<1, 1, bool> mIsAdventure;
199 ::ll::TypedStorage<1, 1, bool> mIsFlyingOrNotOverworld;
200 ::ll::TypedStorage<1, 1, bool> mPositionLoadedFromSave;
201 // NOLINTEND
202 };
203
205 public:
206 // member variables
207 // NOLINTBEGIN
208 ::ll::TypedStorage<4, 12, ::Vec3> mPosition;
209 ::ll::TypedStorage<4, 4, ::PlayerSpawnFallbackType> mSpawnFallbackType;
210 // NOLINTEND
211 };
212
214 public:
215 // member variables
216 // NOLINTBEGIN
217 ::ll::TypedStorage<4, 12, ::Vec3> mPosition;
218 ::ll::TypedStorage<1, 1, bool> mIsAboveLeaves;
219 // NOLINTEND
220 };
221
223 public:
224 // member variables
225 // NOLINTBEGIN
226 ::ll::TypedStorage<4, 12, ::BlockPos> mSpawnBlockPos;
227 ::ll::TypedStorage<4, 12, ::BlockPos> mPlayerPosition;
228 ::ll::TypedStorage<4, 4, ::DimensionType> mDimension;
229 // NOLINTEND
230 };
231
232 using PlayerFlagIDType = schar;
233
234 using PlayerListenerList = ::std::vector<::PlayerListener*>;
235
236public:
237 LLNDAPI UserEntityIdentifierComponent const& getUserEntityIdentifier() const;
238
239 LLNDAPI UserEntityIdentifierComponent& getUserEntityIdentifier();
240
241 LLNDAPI optional_ref<ConnectionRequest const> getConnectionRequest() const;
242
243 LLNDAPI NetworkIdentifier const& getNetworkIdentifier() const;
244
245 LLNDAPI SubClientId const& getClientSubId() const;
246
247 LLNDAPI int getSelectedItemSlot() const;
248
253 LLNDAPI mce::UUID const& getUuid() const;
254
259 LLNDAPI std::string getIPAndPort() const;
260
265 LLNDAPI std::string getRealName() const;
266
273 LLNDAPI std::string getLocaleCode() const;
274
275 LLNDAPI std::optional<NetworkPeer::NetworkStatus> getNetworkStatus() const;
276
280 LLAPI void disconnect(std::string_view reason) const;
284 LLAPI void sendMessage(std::string_view msg) const;
285
286 LLAPI void setAbility(::AbilitiesIndex index, bool value);
287
295 LLNDAPI bool isOperator() const;
296
307 LLAPI bool addAndRefresh(class ItemStack& item);
308
309 LLNDAPI optional_ref<EnderChestContainer> getEnderChestContainer() const;
310
311 LLNDAPI Inventory& getInventory() const;
312
313 LLNDAPI static Player* tryGetFromEntity(::EntityContext& entity, bool includeRemoved);
314
315public:
316 // member variables
317 // NOLINTBEGIN
318 ::ll::TypedStorage<8, 24, ::std::vector<ushort>> mFroglights;
319 ::ll::TypedStorage<4, 4, float const> mSneakHeight;
320 ::ll::TypedStorage<4, 4, float const> mSneakOffset;
321 ::ll::TypedStorage<4, 4, int> mScore;
322 ::ll::TypedStorage<4, 4, ::BuildPlatform> mBuildPlatform;
323 ::ll::TypedStorage<8, 32, ::std::string> mUniqueName;
324 ::ll::TypedStorage<8, 32, ::std::string> mServerId;
325 ::ll::TypedStorage<8, 32, ::std::string> mSelfSignedId;
326 ::ll::TypedStorage<8, 32, ::std::string> mPlatformOfflineId;
327 ::ll::TypedStorage<8, 8, uint64> mClientRandomId;
328 ::ll::TypedStorage<8, 32, ::std::string> mPlatformId;
329 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mPendingVehicleID;
330 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mPendingLeftShoulderPassengerID;
331 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mPendingRightShoulderPassengerID;
332 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mInteractTarget;
333 ::ll::TypedStorage<4, 12, ::Vec3> mInteractTargetPos;
334 ::ll::TypedStorage<1, 1, bool> mHasFakeInventory;
335 ::ll::TypedStorage<1, 1, bool> mIsRegionSuspended;
336 ::ll::TypedStorage<1, 1, bool> mUpdateMobs;
337 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ChunkViewSource>> mChunkSource;
338 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ChunkViewSource>> mSpawnChunkSource;
339 ::ll::TypedStorage<4, 12, ::Vec3> mCapePosO;
340 ::ll::TypedStorage<4, 12, ::Vec3> mCapePos;
341 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ContainerManagerModel>> mContainerManager;
342 ::ll::TypedStorage<
343 8,
344 8,
345 ::std::unique_ptr<
346 ::Bedrock::PubSub::
348 mContainerManagerSubscribers;
349 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PlayerInventory>> mInventory;
350 ::ll::TypedStorage<4, 20, ::InventoryOptions> mInventoryOptions;
351 ::ll::TypedStorage<4, 12, ::FurnaceOptions> mFurnaceOptions;
352 ::ll::TypedStorage<4, 12, ::FurnaceOptions> mBlastFurnaceOptions;
353 ::ll::TypedStorage<4, 12, ::FurnaceOptions> mSmokerOptions;
354 ::ll::TypedStorage<4, 4, float> mDistanceSinceTransformEvent;
355 ::ll::TypedStorage<8, 24, ::std::vector<::ItemInstance>> mCreativeItemList;
356 ::ll::TypedStorage<8, 32, ::std::string> mPlatformOnlineId;
357 ::ll::TypedStorage<4, 4, ::Player::SpawnPositionState> mSpawnPositionState;
358 ::ll::TypedStorage<4, 4, ::Player::SpawnPositionSource> mSpawnPositionSource;
359 ::ll::TypedStorage<4, 12, ::Vec3> mSpawnPositioningTestPosition;
360 ::ll::TypedStorage<4, 4, uint> mRespawnChunkBuilderPolicyHandle;
361 ::ll::TypedStorage<4, 64, ::Player::CachedSpawnData> mCachedSpawnData;
362 ::ll::TypedStorage<8, 16, ::OwnerPtr<::BlockSource>> mSpawnBlockSource;
363 ::ll::TypedStorage<8, 56, ::Stopwatch> mRespawnStopwatch_Searching;
364 ::ll::TypedStorage<4, 12, ::Vec3> mRespawnOriginalPosition;
365 ::ll::TypedStorage<4, 4, ::DimensionType> mRespawnOriginalDimension;
366 ::ll::TypedStorage<8, 32, ::std::string> mRespawnMessage;
367 ::ll::TypedStorage<1, 1, bool> mRespawnReady;
368 ::ll::TypedStorage<1, 1, bool> mIsInitialSpawnDone;
369 ::ll::TypedStorage<1, 1, bool> mRespawningFromTheEnd;
370 ::ll::TypedStorage<1, 1, bool> mPositionLoadedFromSave;
371 ::ll::TypedStorage<1, 1, bool> mBlockRespawnUntilClientMessage;
372 ::ll::TypedStorage<1, 1, bool> mHasSeenCredits;
373 ::ll::TypedStorage<4, 8, ::std::optional<::PlayerSpawnFallbackType>> mSpawnFallbackType;
374 ::ll::TypedStorage<4, 16, ::std::optional<::Vec3>> mSpawnFallbackPosition;
375 ::ll::TypedStorage<8, 168, ::PlayerItemInUse> mItemInUse;
376 ::ll::TypedStorage<4, 4, ::ActorType> mLastHurtBy;
377 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mPreviousInteractEntity;
378 ::ll::TypedStorage<4, 4, int> mPreviousCarriedItem;
379 ::ll::TypedStorage<4, 4, int> mEmoteTicks;
380 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::NetworkChunkPublisher>> mChunkPublisherView;
381 ::ll::TypedStorage<8, 8, ::PacketSender&> mPacketSender;
382 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::HudContainerManagerModel>> mHudContainerManagerModel;
383 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::EnderChestContainer>> mEnderChestInventory;
384 ::ll::TypedStorage<8, 24, ::std::vector<::ActorUniqueID>> mTrackedBossIDs;
385 ::ll::TypedStorage<8, 136, ::ItemGroup> mCursorSelectedItemGroup;
386 ::ll::TypedStorage<8, 440, ::PlayerUIContainer> mPlayerUIContainer;
387 ::ll::TypedStorage<8, 48, ::InventoryTransactionManager> mTransactionManager;
388 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::GameMode>> mGameMode;
389 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PlayerRespawnRandomizer>> mSpawnRandomizer;
390 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SerializedSkinRef>> mSkin;
391 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ItemStackNetManagerBase>> mItemStackNetManager;
392 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::AnimationComponent>> mUIAnimationComponent;
393 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::AnimationComponent>> mMapAnimationComponent;
394 ::ll::TypedStorage<4, 28, ::Player::PlayerSpawnPoint> mPlayerRespawnPoint;
395 ::ll::TypedStorage<4, 4, float> mServerBuildRatio;
396 ::ll::TypedStorage<1, 1, ::SubClientId> mClientId;
397 ::ll::TypedStorage<1, 1, bool> mInteractDataDirty;
398 ::ll::TypedStorage<1, 1, bool> mShouldClientGenerateChunks;
399 ::ll::TypedStorage<8, 24, ::std::vector<::BiomeIdType>> mOceanBiomes;
400 ::ll::TypedStorage<1, 1, bool> mUseMapAnimationComponent;
401 ::ll::TypedStorage<1, 1, bool> mIsDeferredRenderingFirstPersonObjects;
402 ::ll::TypedStorage<1, 1, bool> mDestroyingBlock;
403 ::ll::TypedStorage<1, 1, bool> mPlayerLevelChanged;
404 ::ll::TypedStorage<4, 4, int> mPreviousLevelRequirement;
405 ::ll::TypedStorage<4, 4, int> mLastLevelUpTime;
406 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::AnimationComponent>> mFirstPersonAnimationComponent;
407 ::ll::TypedStorage<8, 24, ::std::vector<::PlayerListener*>> mListeners;
408 ::ll::TypedStorage<4, 12, ::Vec3> mRespawnPositionCandidate;
409 ::ll::TypedStorage<4, 12, ::Vec3> mPreDimensionTransferSpawnPosition;
410 ::ll::TypedStorage<4, 4, int> mEnchantmentSeed;
411 ::ll::TypedStorage<8, 24, ::std::vector<uint>> mOnScreenAnimationTextures;
412 ::ll::TypedStorage<4, 4, int> mOnScreenAnimationTicks;
413 ::ll::TypedStorage<4, 4, uint> mChunkRadius;
414 ::ll::TypedStorage<4, 4, int> mMapIndex;
415 ::ll::TypedStorage<4, 4, float> mElytraVolume;
416 ::ll::TypedStorage<8, 8, uint64> mElytraLoop;
417 ::ll::TypedStorage<8, 8, int64> mStartedBlockingTimeStamp;
418 ::ll::TypedStorage<8, 8, int64> mBlockedUsingShieldTimeStamp;
419 ::ll::TypedStorage<8, 8, int64> mBlockedUsingDamagedShieldTimeStamp;
420 ::ll::TypedStorage<8, 32, ::std::string> mName;
421 ::ll::TypedStorage<8, 40, ::std::optional<::std::string>> mChatNamePrefix;
422 ::ll::TypedStorage<8, 40, ::std::optional<::std::string>> mChatNameSuffix;
423 ::ll::TypedStorage<8, 40, ::std::optional<::std::string>> mChatMessagePrefix;
424 ::ll::TypedStorage<8, 32, ::std::string> mLastEmotePlayed;
425 ::ll::TypedStorage<8, 8, int64> mEmoteEasterEggEndTime;
426 ::ll::TypedStorage<4, 4, uint> mEmoteMessageCount;
427 ::ll::TypedStorage<8, 32, ::std::string> mDeviceId;
428 ::ll::TypedStorage<1, 1, bool> mFlagClientForBAIReset;
429 ::ll::TypedStorage<1, 1, bool> mSendInventoryOptionsToClient;
430 ::ll::TypedStorage<1, 1, bool> mIsHostingPlayer;
431 ::ll::TypedStorage<1, 1, bool> mPrevBlockedUsingShield;
432 ::ll::TypedStorage<1, 1, bool> mPrevBlockedUsingDamagedShield;
433 ::ll::TypedStorage<1, 1, bool> mUsedPotion;
434 ::ll::TypedStorage<8, 8, ::PlayerDestroyProgressCacheComponent&> mDestroyProgressCache;
435 // NOLINTEND
436
437public:
438 // prevent constructor by default
439 Player& operator=(Player const&);
440 Player(Player const&);
441 Player();
442
443public:
444 // virtual functions
445 // NOLINTBEGIN
446 virtual ~Player() /*override*/;
447
448 virtual void
449 initializeComponents(::ActorInitializationMethod method, ::VariantParameterList const& params) /*override*/;
450
451 virtual void reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params) /*override*/;
452
453 virtual void prepareRegion(::ChunkSource& mainChunkSource);
454
455 virtual void destroyRegion();
456
457 virtual void suspendRegion();
458
459 virtual void _fireDimensionChanged();
460
461 virtual bool canChangeDimensionsUsingPortal() const /*override*/;
462
463 virtual void changeDimensionWithCredits(::DimensionType dimension);
464
465 virtual void tickWorld(::Tick const& currentTick);
466
467 virtual void frameUpdate(::FrameUpdateContextBase&) = 0;
468
469 virtual ::std::vector<::ChunkPos> const& getTickingOffsets() const;
470
471 virtual void normalTick() /*override*/;
472
473 virtual void moveView();
474
475 virtual void moveSpawnView(::Vec3 const& spawnPosition, ::DimensionType dimensionType);
476
477 virtual void onSynchedDataUpdate(int dataId) /*override*/;
478
479 virtual void aiStep() /*override*/;
480
481 virtual bool isFireImmune() const /*override*/;
482
483 virtual void checkMovementStats(::Vec3 const& d);
484
485 virtual ::HashedString getCurrentStructureFeature() const;
486
487 virtual bool isAutoJumpEnabled() const;
488
489 virtual ::Vec3 getInterpolatedRidingOffset(float, int const) const /*override*/;
490
491 virtual void passengerTick() /*override*/;
492
493 virtual void die(::ActorDamageSource const& source) /*override*/;
494
495 virtual void remove() /*override*/;
496
497 virtual void respawn();
498
499 virtual bool shouldDropDeathLoot() const /*override*/;
500
501 virtual void dropEquipmentOnDeath(::ActorDamageSource const& source) /*override*/;
502
503 virtual void dropEquipmentOnDeath() /*override*/;
504
505 virtual void clearVanishEnchantedItemsOnDeath() /*override*/;
506
507 virtual bool drop(::ItemStack const& item, bool const randomly) /*override*/;
508
509 virtual void resetRot();
510
511 virtual void resetUserPos(::ActorResetRule resetRule) /*override*/;
512
513 virtual bool isInTrialMode();
514
515 virtual void setSpeed(float _speed) /*override*/;
516
517 virtual int getItemUseDuration() const /*override*/;
518
519 virtual float getItemUseStartupProgress() const /*override*/;
520
521 virtual float getItemUseIntervalProgress() const /*override*/;
522
523 virtual bool isBlocking() const /*override*/;
524
525 virtual bool isDamageBlocked(::ActorDamageSource const& source) const /*override*/;
526
527 virtual void handleEntityEvent(::ActorEvent id, int data) /*override*/;
528
529 virtual ::std::vector<::ItemStack const*> getAllHandEquipment() const /*override*/;
530
531 virtual ::std::vector<::ItemStack const*> getAllEquipment() const /*override*/;
532
533 virtual bool add(::ItemStack& item) /*override*/;
534
535 virtual ::CommandPermissionLevel getCommandPermissionLevel() const /*override*/;
536
537 virtual ::ActorHurtResult attack(::Actor& actor, ::SharedTypes::Legacy::ActorDamageCause const& cause) /*override*/;
538
539 virtual ::ItemStack const& getCarriedItem() const /*override*/;
540
541 virtual void setCarriedItem(::ItemStack const& item) /*override*/;
542
543 virtual void damageCarriedItemOnAttack(::Actor& target, float damageDealtToTarget) /*override*/;
544
545 virtual void openPortfolio();
546
547 virtual void openBook(int bookSlot, bool editable, int page, ::BlockActor* lectern);
548
549 virtual void openTrading(::ActorUniqueID const& uniqueID, bool useNewScreen);
550
551 virtual void openChalkboard(::ChalkboardBlockActor& chalkboard, bool showLockToggle);
552
553#ifdef LL_PLAT_S
554 virtual void openNpcInteractScreen(::std::shared_ptr<::INpcDialogueData> npc);
555#else // LL_PLAT_C
556 virtual void openNpcInteractScreen(::std::shared_ptr<::INpcDialogueData> data);
557#endif
558
559 virtual void openInventory();
560
561 virtual void displayChatMessage(
562 ::std::string const& author,
563 ::std::string const& message,
564 ::std::optional<::std::string> const filteredMessage
565 );
566
567 virtual void
568 displayClientMessage(::std::string const& message, ::std::optional<::std::string> const filteredMessage);
569
570 virtual void displayTextObjectMessage(
571 ::TextObjectRoot const& textObject,
572 ::std::string const& fromXuid,
573 ::std::string const& fromPlatformId
574 );
575
576 virtual void displayTextObjectWhisperMessage(
577 ::ResolvedTextObject const& resolvedTextObject,
578 ::std::string const& xuid,
579 ::std::string const& platformId
580 );
581
582 virtual void displayTextObjectWhisperMessage(
583 ::std::string const& message,
584 ::std::string const& xuid,
585 ::std::string const& platformId
586 );
587
588 virtual void displayWhisperMessage(
589 ::std::string const& author,
590 ::std::string const& message,
591 ::std::optional<::std::string> const filteredMessage,
592 ::std::string const& xuid,
593 ::std::string const& platformId
594 );
595
596 virtual float getShadowRadius() const /*override*/;
597
598 virtual bool isSleeping() const /*override*/;
599
600 virtual void setSleeping(bool val) /*override*/;
601
602 virtual ::BedSleepingResult startSleepInBed(::BlockPos const& bedBlockPos);
603
604 virtual void stopSleepInBed(bool forcefulWakeUp, bool updateLevelList);
605
606 virtual bool canStartSleepInBed();
607
608 virtual void sendInventory(bool shouldSelectSlot) /*override*/;
609
610 virtual void openSign(::BlockPos const& position, bool isFrontSide);
611
612 virtual void playEmote(::std::string const& pieceId, bool const playChatMessage);
613
614 virtual bool isSilentObserver() const /*override*/;
615
616 virtual void useItem(::ItemStackBase& instance, ::ItemUseMethod itemUseMethod, bool consumeItem) /*override*/;
617
618 virtual bool isLoading() const;
619
620 virtual bool isPlayerInitialized() const;
621
622 virtual void stopLoading();
623
624 virtual float getSpeed() const /*override*/;
625
626 virtual void setPlayerGameType(::GameType gameType);
627
628 virtual void initHUDContainerManager();
629
630 virtual void emitCriticalHitParticles(::Actor const& target, int particleCount);
631
632 virtual bool isImmobile() const /*override*/;
633
634 virtual void sendMotionPacketIfNeeded() /*override*/;
635
636 virtual ::IMinecraftEventing* getEventing() const;
637
638 virtual uint getUserId() const;
639
640 virtual void addExperience(int xp);
641
642 virtual void addLevels(int levels);
643
644 virtual void setArmor(::SharedTypes::Legacy::ArmorSlot slot, ::ItemStack const& item) /*override*/;
645
646 virtual void setOffhandSlot(::ItemStack const& item) /*override*/;
647
648 virtual ::std::unique_ptr<::Packet> tryCreateAddActorPacket() /*override*/;
649
650 virtual bool isInvulnerableTo(::ActorDamageSource const& source) const /*override*/;
651
652 virtual void setContainerData(::IContainerManager& menu, int id, int value) = 0;
653
654 virtual void slotChanged(::IContainerManager&, ::Container&, int, ::ItemStack const&, ::ItemStack const&, bool) = 0;
655
656 virtual void refreshContainer(::IContainerManager& menu) = 0;
657
658 virtual void deleteContainerManager();
659
660 virtual ::ItemStack const& getEquippedTotem() const /*override*/;
661
662 virtual bool consumeTotem() /*override*/;
663
664 virtual bool isActorRelevant(::Actor const& actor);
665
666 virtual float getMapDecorationRotation() const /*override*/;
667
668 virtual void teleportTo(
669 ::Vec3 const& pos,
670 bool shouldStopRiding,
671 int cause,
672 int sourceEntityType,
673 bool keepVelocity
674 ) /*override*/;
675
676 virtual bool startRiding(::Actor& vehicle, bool forceRiding) /*override*/;
677
678 virtual void startSwimming() /*override*/;
679
680 virtual void stopSwimming() /*override*/;
681
682 virtual bool isTeacher() const = 0;
683
684 virtual void onSuspension();
685
686 virtual void onLinkedSlotsChanged();
687
688 virtual bool canBePulledIntoVehicle() const /*override*/;
689
690 virtual void feed(int itemId) /*override*/;
691
692 virtual void sendInventoryTransaction(::InventoryTransaction const& transaction) const = 0;
693
694 virtual void
695 sendComplexInventoryTransaction(::std::unique_ptr<::ComplexInventoryTransaction> transaction) const = 0;
696
697 virtual void sendNetworkPacket(::Packet& packet) const;
698
699 virtual bool canExistWhenDisallowMob() const /*override*/;
700
701 virtual ::mce::Color getNameTagTextColor() const /*override*/;
702
703 virtual bool canAddPassenger(::Actor& passenger) const /*override*/;
704
705 virtual ::PlayerEventCoordinator& getPlayerEventCoordinator() = 0;
706
707 virtual bool isSimulated() const;
708
709 virtual ::std::string getXuid() const;
710
711 virtual ::PlayerMovementSettings const& getMovementSettings() const;
712
713 virtual bool canFreeze() const /*override*/;
714
715 virtual bool canInteractWithOtherEntitiesInGame() const /*override*/;
716
717 virtual bool canObstructSpawningAndBlockPlacement() const /*override*/;
718
719 virtual ::std::optional<::BlockPos> getLastDeathPos() const /*override*/;
720
721 virtual ::std::optional<::DimensionType> getLastDeathDimension() const /*override*/;
722
723 virtual bool hasDiedBefore() const /*override*/;
724
725 virtual void doEnterWaterSplashEffect() /*override*/;
726
727 virtual void doExitWaterSplashEffect() /*override*/;
728
729 virtual ::std::optional<::PlayerPartyInfo> getPartyInfo_UNTRUSTED() const;
730
731 virtual void requestMissingSubChunk(::SubChunkPos const& scp);
732
733 virtual uchar getMaxChunkBuildRadius() const;
734
735 virtual float causeFallDamageToActor(float distance, float multiplier, ::ActorDamageSource source) /*override*/;
736
737 virtual void setBehaviorCommandStatus(::std::string const& name, ::BehaviorStatus status);
738
739#ifdef LL_PLAT_S
740 virtual void setRemotePlayerTicked(bool);
741#else // LL_PLAT_C
742 virtual void setRemotePlayerTicked(bool ticked);
743#endif
744
745 virtual ::std::unique_ptr<::ISparseContainerSetListener> createSparseContainerListener();
746
747 virtual ::ActorHurtResult
748 _hurt(::ActorDamageSource const& source, float damage, bool knock, bool ignite) /*override*/;
749
750 virtual void readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
751
752 virtual void addAdditionalSaveData(::CompoundTag& entityTag) const /*override*/;
753
754 virtual void onMovePlayerPacketNormal(::Vec3 const& pos, ::Vec2 const& rot, float yHeadRot);
755
756 virtual bool _shouldProvideFeedbackOnHandContainerItemSet(::HandSlot handSlot, ::ItemStack const& item) const
757 /*override*/;
758
759 virtual bool _shouldProvideFeedbackOnArmorSet(::SharedTypes::Legacy::ArmorSlot slot, ::ItemStack const& item) const
760 /*override*/;
761
762 virtual ::std::shared_ptr<::ChunkViewSource> _createChunkSource(::ChunkSource& mainChunkSource);
763
764 virtual void setAbilities(::LayeredAbilities const& newAbilities);
765
766 virtual ::AnimationComponent& getAnimationComponent() /*override*/;
767
768 virtual ::HashedString const& getActorRendererId() const /*override*/;
769
770 virtual ::Bedrock::NonOwnerPointer<::Editor::IEditorPlayer> getEditorPlayer() const = 0;
771
772 virtual void destroyEditorPlayer() = 0;
773
774 virtual void _serverInitItemStackIds() /*override*/;
775
776 virtual ::std::unique_ptr<::BodyControl> initBodyControl() /*override*/;
777 // NOLINTEND
778
779public:
780 // member functions
781 // NOLINTBEGIN
782 MCAPI Player(
783 ::ILevel& level,
784 ::PacketSender& packetSender,
785 ::GameType playerGameType,
786 bool isHostingPlayer,
787 ::NetworkIdentifier const& owner,
788 ::SubClientId subid,
789 ::mce::UUID uuid,
790 ::std::string const& deviceId,
791 ::PlayerAuthenticationType authType,
792 ::PlayerAuthenticationInfo const& authInfo,
793 ::EntityContext& entityContext,
794 ::std::string const& platformId,
795 ::std::string const& platformOnlineId
796 );
797
798 MCAPI void _addLevels(int levels);
799
800 MCAPI bool _blockUsingShield(::ActorDamageSource const& source, float damage);
801
802 MCAPI bool _canChangeGameType(::GameType newGameType) const;
803
804 MCAPI bool _checkAndFixSpawnPosition(
805 ::Vec3& spawnPosition,
806 ::std::vector<::gsl::not_null<::BlockSource*>> regions,
807 bool adjustYToSolidGround,
808 bool searchUp,
809 bool positionFromSave
810 );
811
812 MCAPI void _checkMovementShouldStopEmoting();
813
814 MCAPI void _chooseSpawnArea();
815
816 MCAPI bool _chooseSpawnPositionWithinArea();
817
818 MCAPI bool _findFallbackSpawnPosition(
819 ::Vec3& spawnPosition,
820 ::std::vector<::gsl::not_null<::BlockSource*>> regions,
821 uint maxDistance,
822 bool checkStoredFallback
823 );
824
825 MCAPI void _fireWillChangeDimension();
826
827 MCAPI bool _fixup4JBedSpawnPosition(::Vec3& pos);
828
829 MCAPI void _handleCarriedItemInteractText();
830
831 MCAPI bool _isChunkSourceLoaded(::Vec3 const& spawnPosition, ::BlockSource const& region) const;
832
833 MCAPI void _loadBlastFurnaceOptions(::CompoundTag const& tag);
834
835 MCAPI void _loadFurnaceOptions(::CompoundTag const& tag);
836
837 MCAPI void _loadInventoryOptions(::CompoundTag const& tag);
838
839 MCAPI void _loadSmokerOptions(::CompoundTag const& tag);
840
841 MCAPI void _preSpawnBuildSpawnDataCache();
842
843 MCAPI void _registerElytraLoopSound();
844
845 MCAPI void _registerPlayerAttributes();
846
847 MCAPI void _resetClientAnimations();
848
849 MCAPI void _saveInventoryOptions(::CompoundTag& tag) const;
850
851 MCAPI void _sendShieldUpdatePacket(
852 ::ShieldItem const& shieldItem,
853 ::ItemStack const& before,
854 ::ItemStack const& after,
855 ::ContainerID container,
856 int slot
857 );
858
859 MCAPI void _setPlayerGameType(::GameType gameType);
860
861 MCAPI void _setPreDimensionTransferSpawnPosition(::Vec3 pos);
862
863#ifdef LL_PLAT_C
864 MCAPI void _setStartedBlockingTimeStamp(int64 timeStamp);
865#endif
866
867 MCAPI bool _shouldCrit(::Actor const& target) const;
868
869 MCAPI void _tickItemCooldowns();
870
871 MCAPI bool _updateFroglightCountAndTestForAchievement(::ItemStack const& oldItem, ::ItemStack const& newItem);
872
873 MCAPI void _updateInteraction();
874
875 MCAPI bool _validateSpawnPositionAvailability(
876 ::Vec3 const& pos,
877 ::BlockSource* blockSourceChunkCheck,
878 ::Vec3 const* const AABBoffset
879 ) const;
880
881#ifdef LL_PLAT_C
882 MCAPI void addListener(::PlayerListener& listener);
883#endif
884
885 MCAPI ::ActorHurtResult attack(
886 ::Actor& actor,
887 ::SharedTypes::Legacy::ActorDamageCause const& cause,
888 ::Player::AttackParameters const& parameters
889 );
890
891 MCAPI void broadcastPlayerSpawnedMobEvent(::ActorType spawnedType, ::MobSpawnMethod spawnMethod);
892
893 MCAPI bool canBeSeenOnMap() const;
894
895 MCAPI bool canJump();
896
897 MCAPI bool canOpenContainerScreen();
898
899 MCAPI bool canSleep() const;
900
901 MCAPI bool canStackInOffhand(::ItemStack const& item) const;
902
903 MCAPI bool canUseAbility(::AbilitiesIndex abilityIndex) const;
904
905 MCAPI bool canUseOperatorBlocks() const;
906
907 MCAPI void causeFoodExhaustion(float exhaustionAmount);
908
909 MCAPI bool checkBed(::BlockSource* spawnBlockSource, ::Vec3 const* const positionToCheck);
910
911 MCAPI bool checkNeedAutoJump(float inputMoveX, float inputMoveZ);
912
913 MCAPI bool checkSpawnBlock(::BlockSource const& region) const;
914
915 MCAPI void clearRespawnPosition();
916
917 MCAPI void completeUsingItem();
918
919#ifdef LL_PLAT_C
920 MCAPI void crackBlock(::BlockPos const& pos, uchar face);
921#endif
922
923 MCAPI void eat(::ItemStack const& instance);
924
925 MCAPI void eat(int hungerValue, float saturationModifier);
926
927 MCAPI bool equippedArmorItemCanBeMoved(::ItemStack const& item) const;
928
929 MCAPI void fireDimensionChangedEvent(::DimensionType fromDimension, ::DimensionType toDimension);
930
931 MCAPI bool forceAllowEating() const;
932
933 MCFOLD ::LayeredAbilities const& getAbilities() const;
934
935 MCFOLD ::LayeredAbilities& getAbilities();
936
937 MCAPI ::Agent* getAgent() const;
938
939 MCAPI ::ActorUniqueID getAgentID() const;
940
941 MCAPI ::Agent* getAgentIfAllowed(bool callerCanAccessOtherAgents, ::ActorUniqueID callerAgentID) const;
942
943 MCAPI ::SharedTypes::Legacy::LevelSoundEvent getAttackHitSound() const;
944
945 MCAPI ::SharedTypes::Legacy::LevelSoundEvent getAttackMissSound() const;
946
947 MCFOLD ::BlockPos const& getBedPosition() const;
948
949#ifdef LL_PLAT_C
950 MCAPI ::FurnaceOptions const& getBlastFurnaceOptions() const;
951#endif
952
953 MCAPI int64 getBlockedUsingDamagedShieldTimeStamp() const;
954
955 MCAPI int64 getBlockedUsingShieldTimeStamp() const;
956
957 MCAPI int64 getBlockingStartTimeStamp() const;
958
959 MCAPI ::Vec3 getCapePos(float a);
960
961 MCAPI ::std::string getChatDisplayName() const;
962
963 MCAPI ::std::optional<::std::string> const& getChatMessagePrefix() const;
964
965 MCAPI ::std::optional<::std::string> const& getChatNamePrefix() const;
966
967 MCAPI ::std::optional<::std::string> const& getChatNameSuffix() const;
968
969 MCAPI uint getChunkRadius() const;
970
971 MCFOLD ::std::weak_ptr<::IContainerManager> getContainerManager() const;
972
973#ifdef LL_PLAT_C
974 MCFOLD ::std::weak_ptr<::ContainerManagerModel> getContainerManagerModel() const;
975#endif
976
977 MCAPI ::gsl::not_null<::StackRefResult<::IContainerRegistryAccess>> getContainerRegistryAccess() const;
978
979 MCAPI ::gsl::not_null<::StackRefResult<::IContainerRegistryTracker>> getContainerRegistryTracker() const;
980
981#ifdef LL_PLAT_C
982 MCAPI ::std::vector<::ItemInstance> const& getCreativeItemList() const;
983#endif
984
985 MCAPI ::ItemStack const& getCurrentActiveShield() const;
986
987#ifdef LL_PLAT_C
988 MCAPI uint getCurrentOnScreenAnimationEffectID() const;
989#endif
990
991 MCAPI float getDestroyProgress(::Block const& block);
992
993 MCAPI int getDirection() const;
994
995 MCAPI ::gsl::not_null<::StackRefResult<::IDynamicContainerSerialization>> getDynamicContainerSerialization() const;
996
997 MCAPI int getEnchantmentSeed() const;
998
999 MCAPI ::DimensionType getExpectedSpawnDimensionId() const;
1000
1001 MCAPI ::BlockPos const& getExpectedSpawnPosition() const;
1002
1003#ifdef LL_PLAT_C
1004 MCAPI ::FurnaceOptions const& getFurnaceOptions() const;
1005#endif
1006
1007 MCAPI ::GameMode& getGameMode() const;
1008
1009#ifdef LL_PLAT_C
1010 MCAPI ::std::weak_ptr<::HudContainerManagerModel> getHudContainerManagerModel() const;
1011#endif
1012
1013 MCAPI ::std::string getInteractText() const;
1014
1015#ifdef LL_PLAT_C
1016 MCAPI ::std::string const& getInteractTextKey() const;
1017#endif
1018
1019 MCAPI ::Container& getInventory();
1020
1021#ifdef LL_PLAT_C
1022 MCAPI ::InventoryOptions const& getInventoryOptions() const;
1023#endif
1024
1025 MCAPI ::ItemStack const& getItem(int slot) const;
1026
1027 MCAPI int getItemCooldownLeft(::HashedString const& category) const;
1028
1029 MCAPI int getItemCooldownLeft(uint64 categoryHash) const;
1030
1031#ifdef LL_PLAT_C
1032 MCAPI float getItemCooldownProgress(::HashedString const& category) const;
1033#endif
1034
1035 MCFOLD ::ItemStack const& getItemInUse() const;
1036
1037 MCAPI int getItemInUseSlot() const;
1038
1039 MCAPI ::std::string getItemInteractText(::Item const& item) const;
1040
1041 MCFOLD ::ItemStackNetManagerBase const* getItemStackNetManager() const;
1042
1043 MCFOLD ::ItemStackNetManagerBase* getItemStackNetManager();
1044
1045#ifdef LL_PLAT_C
1046 MCAPI ::ActorType getLastHurtBy() const;
1047
1048 MCAPI float getLevelProgress() const;
1049#endif
1050
1051 MCAPI float getLuck();
1052
1053 MCAPI int getMapIndex();
1054
1055 MCAPI int getMaxItemCooldownLeft() const;
1056
1057 MCAPI ::std::string const& getName() const;
1058
1059 MCAPI void getNewEnchantmentSeed();
1060
1061#ifdef LL_PLAT_C
1062 MCFOLD ::std::vector<::BiomeIdType>& getOceanBiomes();
1063
1064 MCAPI int getOnScreenAnimationTicks() const;
1065#endif
1066
1067 MCAPI ::AABB getPickupArea() const;
1068
1069 MCAPI ::BuildPlatform getPlatform() const;
1070
1071 MCAPI ::std::string const& getPlatformOnlineId() const;
1072
1073 MCAPI ::GameType getPlayerGameType() const;
1074
1075 MCAPI int getPlayerIndex() const;
1076
1077 MCAPI int getPlayerLevel() const;
1078
1079 MCAPI ::PlayerPermissionLevel getPlayerPermissionLevel() const;
1080
1081 MCAPI ::std::string const& getPlayerSessionId() const;
1082
1083 MCAPI ::ItemStack const& getPlayerUIItem(::PlayerUISlot slot);
1084
1085 MCFOLD ::BlockPos const& getRespawnAnchorPosition() const;
1086
1087 MCFOLD ::ItemStack const& getSelectedItem() const;
1088
1089 MCAPI ::SerializedSkinRef const& getSkin() const;
1090
1091 MCAPI float getSleepRotation() const;
1092
1093#ifdef LL_PLAT_C
1094 MCAPI ::FurnaceOptions const& getSmokerOptions() const;
1095#endif
1096
1097 MCAPI ::DimensionType getSpawnDimension() const;
1098
1099 MCAPI ::BlockPos const& getSpawnPosition() const;
1100
1101 MCFOLD ::PlayerInventory const& getSupplies() const;
1102
1103 MCFOLD ::PlayerInventory& getSupplies();
1104
1105#ifdef LL_PLAT_C
1106 MCAPI int getTicksUsingItem() const;
1107#endif
1108
1109 MCAPI ::std::vector<::ActorUniqueID> const& getTrackedBosses() const;
1110
1111 MCAPI bool getUsedPotion();
1112
1113 MCAPI int getXpEarnedAtCurrentLevel() const;
1114
1115 MCAPI uint getXpNeededForLevelRange(int startlevel, int endlevel) const;
1116
1117 MCAPI int getXpNeededForNextLevel() const;
1118
1119#ifdef LL_PLAT_C
1120 MCAPI void handleMovePlayerPacket(
1121 ::PlayerPositionModeComponent::PositionMode mode,
1122 ::Vec3 const& pos,
1123 ::Vec2 const& rot,
1124 float yHeadRot,
1125 int cause,
1126 int sourceEntityType
1127 );
1128#endif
1129
1130 MCAPI bool hasBedPosition() const;
1131
1132 MCAPI bool hasOpenContainer() const;
1133
1134 MCAPI bool hasOpenContainerOfContainerType(::SharedTypes::Legacy::ContainerType containerType) const;
1135
1136 MCAPI bool hasOwnedChunkSource() const;
1137
1138 MCAPI bool hasResource(::ItemDescriptor const& resource);
1139
1140 MCAPI bool hasRespawnAnchorPosition() const;
1141
1142 MCFOLD bool hasRespawnPosition() const;
1143
1144#ifdef LL_PLAT_C
1145 MCFOLD bool hasSleepFlagSet();
1146#endif
1147
1148 MCAPI ::InteractionResult interact(::Actor& actor, ::Vec3 const& location);
1149
1150 MCAPI void inventoryChanged(
1151 ::Container&,
1152 int slot,
1153 ::ItemStack const& oldItem,
1154 ::ItemStack const& newItem,
1155 bool forceBalanced
1156 );
1157
1158 MCAPI bool is2DPositionRelevant(::DimensionType dimension, ::BlockPos const& position);
1159
1160#ifdef LL_PLAT_C
1161 MCAPI bool isCrawling();
1162#endif
1163
1164 MCAPI bool isCurrentSkinTrusted() const;
1165
1166#ifdef LL_PLAT_C
1167 MCAPI bool isEmoteMessageEasterEgg() const;
1168#endif
1169
1170 MCAPI bool isEmoting() const;
1171
1172 MCAPI bool isEquipmentHidden() const;
1173
1174 MCAPI bool isFlying() const;
1175
1176 MCAPI bool isForcedRespawn() const;
1177
1178 MCAPI bool isHiddenFrom(::Mob& target) const;
1179
1180 MCAPI bool isHostingPlayer() const;
1181
1182 MCAPI bool isHungry() const;
1183
1184 MCAPI bool isHurt();
1185
1186 MCAPI bool isInRaid() const;
1187
1188 MCAPI bool isItemOnCooldown(::HashedString const& category) const;
1189
1190 MCAPI bool isItemOnCooldown(::Item const& item) const;
1191
1192 MCAPI bool isRespawningFromTheEnd() const;
1193
1194#ifdef LL_PLAT_C
1195 MCAPI bool isScoping() const;
1196#endif
1197
1198 MCAPI bool isSleepingLongEnough() const;
1199
1200 MCAPI bool isSpawned() const;
1201
1202 MCAPI bool isUsingItem() const;
1203
1204 MCFOLD bool isValidSpawn() const;
1205
1206 MCAPI void loadLastDeathLocation(::CompoundTag const& tag);
1207
1208#ifdef LL_PLAT_C
1209 MCAPI void onMobStatusChanged(::ActorUniqueID mob);
1210
1211 MCAPI void onResetBAI(int);
1212#endif
1213
1214 MCAPI void passengerCheckMovementStats();
1215
1216 MCAPI void playFallOrLandSound(int expectedDamage, ::Block const& onBlock, ::Block const& blockAbove);
1217
1218 MCAPI void playPredictiveSynchronizedSound(
1219 ::SharedTypes::Legacy::LevelSoundEvent type,
1220 ::Vec3 const& pos,
1221 int data,
1222 bool isGlobal
1223 );
1224
1225#ifdef LL_PLAT_C
1226 MCAPI void queueOnScreenTextureAnimation(uint effectID);
1227#endif
1228
1229 MCAPI void recheckSpawnPosition();
1230
1231 MCAPI void registerTrackedBoss(::ActorUniqueID mob);
1232
1233 MCAPI void releaseUsingItem();
1234
1235#ifdef LL_PLAT_C
1236 MCAPI void removeListener(::PlayerListener& listener);
1237#endif
1238
1239 MCAPI void resendAllChunks();
1240
1241#ifdef LL_PLAT_C
1242 MCAPI void resetEmoteMessageData();
1243
1244 MCAPI void resetOnScreenAnimationTicks();
1245#endif
1246
1247 MCAPI void resetPlayerLevel();
1248
1249 MCAPI void resetPublisherInitialSpawn();
1250
1251 MCAPI void resetToDefaultGameMode();
1252
1253 MCAPI void saveLastDeathLocation(::CompoundTag& tag) const;
1254
1255 MCAPI void sendEventPacket(::LegacyTelemetryEventPacket& packet) const;
1256
1257 MCAPI void sendPlayerTeleported();
1258
1259 MCAPI void sendSpawnExperienceOrbPacketToServer(::Vec3 const& pos, int count);
1260
1261 MCAPI void setAgent(::Agent* agent);
1262
1263 MCAPI void setBedRespawnPosition(::BlockPos const& bedPosition);
1264
1265#ifdef LL_PLAT_C
1266 MCAPI void setBlastFurnaceOptions(::FurnaceOptions const& options);
1267#endif
1268
1269 MCAPI void setBlockRespawnUntilClientMessage(bool val);
1270
1271 MCAPI void setChatMessagePrefix(::std::optional<::std::string> prefix);
1272
1273 MCAPI void setChatNamePrefix(::std::optional<::std::string> prefix);
1274
1275 MCAPI void setChatNameSuffix(::std::optional<::std::string> suffix);
1276
1277 MCAPI void setChunkRadius(uint chunkRadius);
1278
1279 MCAPI void setCommandPermissions(::CommandPermissionLevel permissions);
1280
1281 MCAPI void setContainerManagerModel(::std::shared_ptr<::ContainerManagerModel> manager);
1282
1283 MCAPI void setCursorSelectedItem(::ItemStack const& item);
1284
1285 MCAPI void setCursorSelectedItemGroup(::ItemGroup const& itemGroup);
1286
1287 MCAPI void setEmotingStatus(uint emoteTicks);
1288
1289 MCAPI void setEnchantmentSeed(int newSeed);
1290
1291#ifdef LL_PLAT_C
1292 MCAPI void setFurnaceOptions(::FurnaceOptions const& options);
1293#endif
1294
1295 MCAPI void setHasSeenCredits(bool value);
1296
1297 MCAPI void setInventoryOptions(::InventoryOptions const& options);
1298
1299#ifdef LL_PLAT_C
1300 MCAPI void setIsDeferredRenderingFirstPersonObjects(bool isRenderingDeferredFirstPersonObjects);
1301#endif
1302
1303 MCAPI void setItem(::ItemStack const& item, int slot);
1304
1305#ifdef LL_PLAT_C
1306 MCAPI void setLastHurtBy(::ActorType lastHurtBy);
1307#endif
1308
1309 MCAPI void setMapIndex(int mapIndex);
1310
1311 MCAPI void setName(::std::string const& newName);
1312
1313#ifdef LL_PLAT_C
1314 MCAPI void setPlatform(::BuildPlatform platform);
1315#endif
1316
1317 MCAPI void setPlatformOnlineId(::std::string const& platformOnlineId);
1318
1319 MCAPI void setPlayerIndex(int index);
1320
1321 MCAPI void setPlayerUIItem(::PlayerUISlot slot, ::ItemStack const& item, bool forceBalance);
1322
1323 MCAPI void setRespawnPosition(::BlockPos const& inRespawnPosition, ::DimensionType dimension);
1324
1325#ifdef LL_PLAT_C
1326 MCAPI void
1327 setRespawnPosition(::BlockPos const& respawnPosition, ::DimensionType dimension, ::BlockPos const& spawnBlockPos);
1328#endif
1329
1330 MCAPI void setRespawnPositionCandidate();
1331
1332 MCAPI void setRespawnReady(::Vec3 const& respawnPosition);
1333
1334 MCAPI void setSelectedItem(::ItemStack const& item);
1335
1336 MCAPI ::ItemStack const& setSelectedSlot(int slot);
1337
1338#ifdef LL_PLAT_C
1339 MCAPI void setSmokerOptions(::FurnaceOptions const& options);
1340#endif
1341
1342 MCAPI bool setSpawnBlockRespawnPosition(::BlockPos const& spawnBlockPosition, ::DimensionType dimension);
1343
1344 MCAPI void setUsedPotion(bool used);
1345
1346 MCAPI bool shouldShowCredits() const;
1347
1348 MCAPI void startDestroying();
1349
1350 MCAPI void startGliding();
1351
1352 MCAPI void startItemCooldown(::Item const& item, bool updateClient);
1353
1354 MCAPI void startItemCooldown(::HashedString const& type, int tickDuration, bool updateClient);
1355
1356 MCAPI void
1357 startItemUseOn(uchar face, ::BlockPos const& blockPos, ::BlockPos const& buildBlockPos, ::ItemStack const& item);
1358
1359 MCAPI void startUsingItem(::ItemStack const& instance, int duration);
1360
1361 MCAPI void stopDestroying();
1362
1363 MCAPI void stopGliding();
1364
1365 MCAPI void stopItemUseOn(::BlockPos const& blockPos, ::ItemStack const& item);
1366
1367 MCAPI void stopUsingItem();
1368
1369 MCAPI bool take(::Actor& actor, int favoredSlot, int);
1370
1371 MCAPI void tickArmor();
1372
1373 MCAPI void tryDisableShield();
1374
1375 MCAPI bool tryStartGliding();
1376
1377 MCAPI void unRegisterTrackedBoss(::ActorUniqueID mob);
1378
1379#ifdef LL_PLAT_C
1380 MCAPI void updateCreativeItemList(::CreativeItemRegistry const& creativeItemRegistry);
1381
1382 MCAPI bool updateEmoteMessageData(::PersonaPiece const& emotePiece);
1383#endif
1384
1385 MCAPI void updateInventoryTransactions();
1386
1387 MCAPI void updateSkin(::SerializedSkinRef const& skin, int clientSubID);
1388
1389 MCAPI void updateTouch();
1390
1391 MCAPI void updateTrackedBosses();
1392
1393#ifdef LL_PLAT_C
1394 MCAPI void useMapAnimationComponent(bool InMap);
1395#endif
1396
1397 MCAPI void useSelectedItem(::ItemUseMethod itemUseMethod, bool consumeItem);
1398 // NOLINTEND
1399
1400public:
1401 // static functions
1402 // NOLINTBEGIN
1403#ifdef LL_PLAT_C
1404 MCAPI static ::PlayerSpawnFallbackType
1405 _findSpawnFallbackType(::Vec3 const& spawnPosition, ::gsl::not_null<::BlockSource*>& region);
1406#endif
1407
1408 MCAPI static bool _isDangerousBlockForSpawn(::Block const& block);
1409
1410 MCAPI static bool _isDangerousBlock_DEPRECATED(::Block const& block, bool checkForLava);
1411
1412#ifdef LL_PLAT_C
1413 MCAPI static ::std::optional<::Player::FixedSpawnPositionData> checkAndFixSpawnPosition(
1414 ::Vec3 const& spawnPosition,
1415 ::std::vector<::gsl::not_null<::BlockSource*>> regions,
1416 ::AABB aabb,
1417 bool adjustYToSolidGround,
1418 bool searchUp,
1419 bool positionFromSave,
1420 bool spawningAtForcedSpawn,
1421 short dimensionHeight
1422 );
1423#endif
1424
1425 MCAPI static ::std::optional<::Player::FixedSpawnPositionData_DEPRECATED> checkAndFixSpawnPosition_DEPRECATED(
1426 ::Vec3 const& spawnPosition,
1427 ::std::vector<::gsl::not_null<::BlockSource*>> regions,
1428 ::AABB aabb,
1429 bool adjustYToSolidGround,
1430 bool searchUp,
1431 bool positionFromSave,
1432 bool spawningAtForcedSpawn,
1433 bool dimensionHeight,
1434 short
1435 );
1436
1437 MCAPI static bool checkNeedAutoJump(
1438 ::IConstBlockSource const& region,
1439 ::AABBShapeComponent const& aabbShape,
1440 ::ActorRotationComponent const& actorRotation,
1441 float movementSpeed,
1442 ::StateVectorComponent const& stateVector,
1444 float inputMoveX,
1445 float inputMoveZ
1446 );
1447
1448 MCAPI static ::std::optional<::SharedTypes::Legacy::LevelSoundEvent>
1449 getCustomHurtSound(::Mob const& mob, ::SharedTypes::Legacy::ActorDamageCause cause);
1450
1451 MCAPI static bool isDangerousVolumeForSpawn(::BlockSource& region, ::AABB const& centeredAABB);
1452
1453 MCFOLD static ::Player const*
1454 tryGetFromComponent(::PlayerComponent const&, ::ActorOwnerComponent const& actor, bool includeRemoved);
1455
1456 MCFOLD static ::Player*
1457 tryGetFromComponent(::PlayerComponent const&, ::ActorOwnerComponent& actor, bool includeRemoved);
1458
1459 MCAPI static ::Player* tryGetFromEntity(::StackRefResult<::EntityContext> entity, bool includeRemoved);
1460
1461 MCAPI static void
1462 updatePlayerGameTypeEntityData(::EntityContext& entity, ::GameType gameType, ::GameType defaultGameType);
1463 // NOLINTEND
1464
1465public:
1466 // static variables
1467 // NOLINTBEGIN
1468 MCAPI static float const& DEFAULT_BB_HEIGHT();
1469
1470 MCAPI static float const& DEFAULT_BB_WIDTH();
1471
1472 MCAPI static float const& DEFAULT_PLAYER_EYE_OFFSET();
1473
1474 MCAPI static float const& DEFAULT_PLAYER_HEIGHT_OFFSET();
1475
1476 MCAPI static float const& DISTANCE_TO_TRANSFORM_EVENT();
1477
1478 MCAPI static float const& DISTANCE_TO_TRAVELLED_EVENT();
1479
1480 MCAPI static ::Attribute const& EXHAUSTION();
1481
1482 MCAPI static ::Attribute const& EXPERIENCE();
1483
1484 MCAPI static int const& GLIDE_STOP_DELAY();
1485
1486 MCAPI static ::Attribute const& HUNGER();
1487
1488 MCAPI static ::Attribute const& LEVEL();
1489
1490 MCAPI static float const& PLAYER_SLEEPING_HEIGHT();
1491
1492 MCAPI static ::Attribute const& SATURATION();
1493 // NOLINTEND
1494
1495public:
1496 // constructor thunks
1497 // NOLINTBEGIN
1498 MCAPI void* $ctor(
1499 ::ILevel& level,
1500 ::PacketSender& packetSender,
1501 ::GameType playerGameType,
1502 bool isHostingPlayer,
1503 ::NetworkIdentifier const& owner,
1504 ::SubClientId subid,
1505 ::mce::UUID uuid,
1506 ::std::string const& deviceId,
1507 ::PlayerAuthenticationType authType,
1508 ::PlayerAuthenticationInfo const& authInfo,
1509 ::EntityContext& entityContext,
1510 ::std::string const& platformId,
1511 ::std::string const& platformOnlineId
1512 );
1513 // NOLINTEND
1514
1515public:
1516 // destructor thunk
1517 // NOLINTBEGIN
1518 MCAPI void $dtor();
1519 // NOLINTEND
1520
1521public:
1522 // virtual function thunks
1523 // NOLINTBEGIN
1524 MCAPI void $initializeComponents(::ActorInitializationMethod method, ::VariantParameterList const& params);
1525
1526 MCAPI void $reloadHardcoded(::ActorInitializationMethod method, ::VariantParameterList const& params);
1527
1528 MCAPI void $prepareRegion(::ChunkSource& mainChunkSource);
1529
1530 MCAPI void $destroyRegion();
1531
1532 MCAPI void $suspendRegion();
1533
1534 MCAPI void $_fireDimensionChanged();
1535
1536 MCAPI bool $canChangeDimensionsUsingPortal() const;
1537
1538 MCFOLD void $changeDimensionWithCredits(::DimensionType dimension);
1539
1540 MCAPI void $tickWorld(::Tick const& currentTick);
1541
1542 MCAPI ::std::vector<::ChunkPos> const& $getTickingOffsets() const;
1543
1544 MCAPI void $normalTick();
1545
1546 MCAPI void $moveView();
1547
1548 MCAPI void $moveSpawnView(::Vec3 const& spawnPosition, ::DimensionType dimensionType);
1549
1550 MCFOLD void $onSynchedDataUpdate(int dataId);
1551
1552 MCAPI void $aiStep();
1553
1554 MCAPI bool $isFireImmune() const;
1555
1556 MCFOLD void $checkMovementStats(::Vec3 const& d);
1557
1558 MCFOLD ::HashedString $getCurrentStructureFeature() const;
1559
1560 MCFOLD bool $isAutoJumpEnabled() const;
1561
1562 MCAPI ::Vec3 $getInterpolatedRidingOffset(float, int const) const;
1563
1564 MCAPI void $passengerTick();
1565
1566 MCAPI void $die(::ActorDamageSource const& source);
1567
1568 MCAPI void $remove();
1569
1570 MCAPI void $respawn();
1571
1572 MCAPI bool $shouldDropDeathLoot() const;
1573
1574 MCAPI void $dropEquipmentOnDeath(::ActorDamageSource const& source);
1575
1576 MCAPI void $dropEquipmentOnDeath();
1577
1578 MCFOLD void $clearVanishEnchantedItemsOnDeath();
1579
1580 MCAPI bool $drop(::ItemStack const& item, bool const randomly);
1581
1582 MCFOLD void $resetRot();
1583
1584 MCAPI void $resetUserPos(::ActorResetRule resetRule);
1585
1586 MCFOLD bool $isInTrialMode();
1587
1588 MCAPI void $setSpeed(float _speed);
1589
1590 MCAPI int $getItemUseDuration() const;
1591
1592 MCAPI float $getItemUseStartupProgress() const;
1593
1594 MCAPI float $getItemUseIntervalProgress() const;
1595
1596 MCAPI bool $isBlocking() const;
1597
1598 MCAPI bool $isDamageBlocked(::ActorDamageSource const& source) const;
1599
1600 MCAPI void $handleEntityEvent(::ActorEvent id, int data);
1601
1602 MCAPI ::std::vector<::ItemStack const*> $getAllHandEquipment() const;
1603
1604 MCAPI ::std::vector<::ItemStack const*> $getAllEquipment() const;
1605
1606 MCAPI bool $add(::ItemStack& item);
1607
1608 MCAPI ::CommandPermissionLevel $getCommandPermissionLevel() const;
1609
1610 MCAPI ::ActorHurtResult $attack(::Actor& actor, ::SharedTypes::Legacy::ActorDamageCause const& cause);
1611
1612 MCFOLD ::ItemStack const& $getCarriedItem() const;
1613
1614 MCAPI void $setCarriedItem(::ItemStack const& item);
1615
1616 MCAPI void $damageCarriedItemOnAttack(::Actor& target, float damageDealtToTarget);
1617
1618 MCFOLD void $openPortfolio();
1619
1620 MCFOLD void $openBook(int bookSlot, bool editable, int page, ::BlockActor* lectern);
1621
1622 MCFOLD void $openTrading(::ActorUniqueID const& uniqueID, bool useNewScreen);
1623
1624 MCFOLD void $openChalkboard(::ChalkboardBlockActor& chalkboard, bool showLockToggle);
1625
1626 MCFOLD void $openNpcInteractScreen(::std::shared_ptr<::INpcDialogueData> npc);
1627
1628 MCFOLD void $openInventory();
1629
1630 MCFOLD void $displayChatMessage(
1631 ::std::string const& author,
1632 ::std::string const& message,
1633 ::std::optional<::std::string> const filteredMessage
1634 );
1635
1636 MCAPI void
1637 $displayClientMessage(::std::string const& message, ::std::optional<::std::string> const filteredMessage);
1638
1639 MCFOLD void $displayTextObjectMessage(
1640 ::TextObjectRoot const& textObject,
1641 ::std::string const& fromXuid,
1642 ::std::string const& fromPlatformId
1643 );
1644
1645 MCFOLD void $displayTextObjectWhisperMessage(
1646 ::ResolvedTextObject const& resolvedTextObject,
1647 ::std::string const& xuid,
1648 ::std::string const& platformId
1649 );
1650
1651 MCFOLD void $displayTextObjectWhisperMessage(
1652 ::std::string const& message,
1653 ::std::string const& xuid,
1654 ::std::string const& platformId
1655 );
1656
1657 MCFOLD void $displayWhisperMessage(
1658 ::std::string const& author,
1659 ::std::string const& message,
1660 ::std::optional<::std::string> const filteredMessage,
1661 ::std::string const& xuid,
1662 ::std::string const& platformId
1663 );
1664
1665 MCAPI float $getShadowRadius() const;
1666
1667 MCAPI bool $isSleeping() const;
1668
1669 MCAPI void $setSleeping(bool val);
1670
1671 MCAPI ::BedSleepingResult $startSleepInBed(::BlockPos const& bedBlockPos);
1672
1673 MCAPI void $stopSleepInBed(bool forcefulWakeUp, bool updateLevelList);
1674
1675 MCAPI bool $canStartSleepInBed();
1676
1677 MCFOLD void $sendInventory(bool shouldSelectSlot);
1678
1679 MCFOLD void $openSign(::BlockPos const& position, bool isFrontSide);
1680
1681 MCFOLD void $playEmote(::std::string const& pieceId, bool const playChatMessage);
1682
1683 MCAPI bool $isSilentObserver() const;
1684
1685 MCAPI void $useItem(::ItemStackBase& instance, ::ItemUseMethod itemUseMethod, bool consumeItem);
1686
1687 MCFOLD bool $isLoading() const;
1688
1689 MCFOLD bool $isPlayerInitialized() const;
1690
1691 MCFOLD void $stopLoading();
1692
1693 MCAPI float $getSpeed() const;
1694
1695 MCAPI void $setPlayerGameType(::GameType gameType);
1696
1697 MCAPI void $initHUDContainerManager();
1698
1699 MCAPI void $emitCriticalHitParticles(::Actor const& target, int particleCount);
1700
1701 MCAPI bool $isImmobile() const;
1702
1703 MCFOLD void $sendMotionPacketIfNeeded();
1704
1705 MCAPI ::IMinecraftEventing* $getEventing() const;
1706
1707 MCFOLD uint $getUserId() const;
1708
1709 MCAPI void $addExperience(int xp);
1710
1711 MCAPI void $addLevels(int levels);
1712
1713 MCAPI void $setArmor(::SharedTypes::Legacy::ArmorSlot slot, ::ItemStack const& item);
1714
1715 MCAPI void $setOffhandSlot(::ItemStack const& item);
1716
1717 MCAPI ::std::unique_ptr<::Packet> $tryCreateAddActorPacket();
1718
1719 MCAPI bool $isInvulnerableTo(::ActorDamageSource const& source) const;
1720
1721 MCAPI void $deleteContainerManager();
1722
1723 MCAPI ::ItemStack const& $getEquippedTotem() const;
1724
1725 MCAPI bool $consumeTotem();
1726
1727 MCFOLD bool $isActorRelevant(::Actor const& actor);
1728
1729 MCAPI float $getMapDecorationRotation() const;
1730
1731 MCAPI void
1732 $teleportTo(::Vec3 const& pos, bool shouldStopRiding, int cause, int sourceEntityType, bool keepVelocity);
1733
1734 MCAPI bool $startRiding(::Actor& vehicle, bool forceRiding);
1735
1736 MCAPI void $startSwimming();
1737
1738 MCAPI void $stopSwimming();
1739
1740 MCFOLD void $onSuspension();
1741
1742 MCFOLD void $onLinkedSlotsChanged();
1743
1744 MCFOLD bool $canBePulledIntoVehicle() const;
1745
1746 MCAPI void $feed(int itemId);
1747
1748 MCFOLD void $sendNetworkPacket(::Packet& packet) const;
1749
1750 MCFOLD bool $canExistWhenDisallowMob() const;
1751
1752 MCAPI ::mce::Color $getNameTagTextColor() const;
1753
1754 MCAPI bool $canAddPassenger(::Actor& passenger) const;
1755
1756 MCFOLD bool $isSimulated() const;
1757
1758 MCAPI ::std::string $getXuid() const;
1759
1760 MCAPI ::PlayerMovementSettings const& $getMovementSettings() const;
1761
1762 MCAPI bool $canFreeze() const;
1763
1764 MCAPI bool $canInteractWithOtherEntitiesInGame() const;
1765
1766 MCAPI bool $canObstructSpawningAndBlockPlacement() const;
1767
1768 MCAPI ::std::optional<::BlockPos> $getLastDeathPos() const;
1769
1770 MCAPI ::std::optional<::DimensionType> $getLastDeathDimension() const;
1771
1772 MCAPI bool $hasDiedBefore() const;
1773
1774 MCAPI void $doEnterWaterSplashEffect();
1775
1776 MCAPI void $doExitWaterSplashEffect();
1777
1778 MCFOLD ::std::optional<::PlayerPartyInfo> $getPartyInfo_UNTRUSTED() const;
1779
1780 MCFOLD void $requestMissingSubChunk(::SubChunkPos const& scp);
1781
1782 MCAPI uchar $getMaxChunkBuildRadius() const;
1783
1784 MCAPI float $causeFallDamageToActor(float distance, float multiplier, ::ActorDamageSource source);
1785
1786 MCFOLD void $setBehaviorCommandStatus(::std::string const& name, ::BehaviorStatus status);
1787
1788 MCFOLD void $setRemotePlayerTicked(bool);
1789
1790 MCFOLD ::std::unique_ptr<::ISparseContainerSetListener> $createSparseContainerListener();
1791
1792 MCAPI ::ActorHurtResult $_hurt(::ActorDamageSource const& source, float damage, bool knock, bool ignite);
1793
1794 MCAPI void $readAdditionalSaveData(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
1795
1796 MCAPI void $addAdditionalSaveData(::CompoundTag& entityTag) const;
1797
1798 MCAPI void $onMovePlayerPacketNormal(::Vec3 const& pos, ::Vec2 const& rot, float yHeadRot);
1799
1800 MCAPI bool $_shouldProvideFeedbackOnHandContainerItemSet(::HandSlot handSlot, ::ItemStack const& item) const;
1801
1802 MCAPI bool $_shouldProvideFeedbackOnArmorSet(::SharedTypes::Legacy::ArmorSlot slot, ::ItemStack const& item) const;
1803
1804 MCAPI ::std::shared_ptr<::ChunkViewSource> $_createChunkSource(::ChunkSource& mainChunkSource);
1805
1806 MCAPI void $setAbilities(::LayeredAbilities const& newAbilities);
1807
1808 MCAPI ::AnimationComponent& $getAnimationComponent();
1809
1810 MCAPI ::HashedString const& $getActorRendererId() const;
1811
1812 MCFOLD void $_serverInitItemStackIds();
1813
1814 MCAPI ::std::unique_ptr<::BodyControl> $initBodyControl();
1815
1816
1817 // NOLINTEND
1818
1819public:
1820 // vftables
1821 // NOLINTBEGIN
1822 MCAPI static void** $vftable();
1823 // NOLINTEND
1824};
Definition AABB.h:18
Definition ActorDamageSource.h:18
Definition ActorHurtResult.h:5
Definition ActorOwnerComponent.h:10
Definition Actor.h:125
Definition Agent.h:34
Definition AnimationComponent.h:37
Definition Attribute.h:9
Definition BlockActor.h:30
Definition BlockPos.h:21
Definition BlockSource.h:73
Definition Block.h:69
Definition BodyControl.h:13
Definition ChalkboardBlockActor.h:26
Definition ChunkPos.h:11
Definition ChunkSource.h:37
Definition ChunkViewSource.h:23
Definition ComplexInventoryTransaction.h:21
Definition CompoundTag.h:23
Definition ConnectionRequest.h:20
Definition ContainerManagerModel.h:34
Definition Container.h:34
Definition CreativeItemRegistry.h:23
Definition DataLoadHelper.h:20
Definition IEditorPlayer.h:16
Definition EnderChestContainer.h:15
Definition EntityContext.h:17
Definition FrameUpdateContextBase.h:5
Definition GameMode.h:24
Definition GetCollisionShapeInterface.h:13
Definition HashedString.h:5
Definition HudContainerManagerModel.h:19
Definition IConstBlockSource.h:24
Definition IContainerManager.h:16
Definition IContainerRegistryAccess.h:14
Definition IContainerRegistryTracker.h:15
Definition IDynamicContainerSerialization.h:12
Definition ILevel.h:219
Definition IMinecraftEventing.h:138
Definition ISparseContainerSetListener.h:11
Definition InteractionResult.h:5
Definition InventoryTransaction.h:22
Definition Inventory.h:14
Definition ItemDescriptor.h:25
Definition ItemGroup.h:8
Definition ItemStackBase.h:52
Definition ItemStackNetManagerBase.h:28
Definition ItemStack.h:35
Definition Item.h:71
Definition LayeredAbilities.h:21
Definition LegacyTelemetryEventPacket.h:19
Definition NetworkChunkPublisher.h:27
Definition NetworkIdentifier.h:10
Definition PacketSender.h:17
Definition Packet.h:31
Definition PersonaPiece.h:20
Definition PlayerEventCoordinator.h:28
Definition PlayerInventory.h:19
Definition PlayerListener.h:5
Definition PlayerRespawnRandomizer.h:11
LLNDAPI std::string getIPAndPort() const
Get the player's IP and port.
LLNDAPI std::string getLocaleCode() const
Get the name of the player's langtext.
LLAPI void sendMessage(std::string_view msg) const
Send a message to player.
LLAPI bool addAndRefresh(class ItemStack &item)
Give player item and refresh.
LLNDAPI mce::UUID const & getUuid() const
Get the player's uuid.
LLNDAPI bool isOperator() const
Determine if a player is an administrator of the server.
LLNDAPI std::string getRealName() const
Get the player's real in-game nickname.
LLAPI void disconnect(std::string_view reason) const
Disconnect player's client.
Definition ResolvedTextObject.h:10
Definition SerializedSkinRef.h:31
Definition ShieldItem.h:31
Definition StackRefResult.h:7
Definition SubChunkPos.h:5
Definition TextObjectRoot.h:17
Definition UserEntityIdentifierComponent.h:17
Definition Vec2.h:5
Definition Vec3.h:10
Definition Color.h:13
Definition UUID.h:7
Definition optional_ref.h:10
STL namespace.
Definition AABBShapeComponent.h:9
Definition ActorRotationComponent.h:8
Definition ActorUniqueID.h:10
Definition BiomeIdType.h:8
Definition DimensionType.h:5
Definition FurnaceOptions.h:5
Definition INpcDialogueData.h:12
Definition InventoryOptions.h:10
Definition PlayerAuthenticationInfo.h:9
Definition PlayerComponent.h:5
Definition PlayerDestroyProgressCacheComponent.h:8
Definition PlayerMovementSettings.h:14
Definition PlayerPartyInfo.h:5
Definition Player.h:168
Definition Player.h:186
Definition Player.h:204
Definition Player.h:222
Definition StateVectorComponent.h:8
Definition Tick.h:5
Definition VariantParameterList.h:14