Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
SpatialActorNetworkData.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/entity/components/ForceSendSpatialDataValue.h"
7#include "mc/legacy/ActorUniqueID.h"
8#include "mc/network/NetworkIdentifierWithSubId.h"
9#include "mc/network/packet/MoveActorAbsoluteData.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
14class ActorRuntimeID;
15class Player;
16class Vec2;
17class Vec3;
18struct Tick;
19// clang-format on
20
21class SpatialActorNetworkData {
22public:
23 // SpatialActorNetworkData inner types declare
24 // clang-format off
27 struct PlayerUpdateTarget;
28 // clang-format on
29
30 // SpatialActorNetworkData inner types define
32 public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<4, 4, int> mSendEveryNPackets;
36 ::ll::TypedStorage<4, 4, int> mDropPacketChance;
37 ::ll::TypedStorage<1, 1, bool> mDrawDebugLines;
38 // NOLINTEND
39 };
40
42 public:
43 // member variables
44 // NOLINTBEGIN
45 ::ll::TypedStorage<8, 8, uint64> mCurrentSentSpatialPackets;
46 ::ll::TypedStorage<8, 8, uint64> mExpectedSentSpatialPackets;
47 ::ll::TypedStorage<8, 8, uint64> mCurrentSentMotionPredictionHintsPackets;
48 ::ll::TypedStorage<1, 1, bool> mUseValueOverrides;
49 ::ll::TypedStorage<1, 1, bool> mUseScoreOverride;
50 ::ll::TypedStorage<4, 4, float> mOverridemMaxOptimizedDistance;
51 ::ll::TypedStorage<8, 8, uint64> mOverridemMaxDroppedTicks;
52 ::ll::TypedStorage<8, 8, uint64> mOverrideScoreValue;
53 ::ll::TypedStorage<1, 1, bool> mOverridemUseMotionPredictionHints;
54 // NOLINTEND
55 };
56
58 public:
59 // member variables
60 // NOLINTBEGIN
61 ::ll::TypedStorage<8, 184, ::NetworkIdentifierWithSubId> mNetworkIdentifierWithSubId;
62 ::ll::TypedStorage<8, 8, uint64> mTicks;
63 // NOLINTEND
64 };
65
66public:
67 // member variables
68 // NOLINTBEGIN
69 ::ll::TypedStorage<8, 8, ::Actor&> mEntity;
70 ::ll::TypedStorage<1, 1, bool> mHasInitializedLastSent;
71 ::ll::TypedStorage<1, 1, bool> mAutoSend;
72 ::ll::TypedStorage<8, 40, ::MoveActorAbsoluteData> mLastSentMoveData;
73 ::ll::TypedStorage<8, 40, ::MoveActorAbsoluteData> mLastReceivedMoveData;
74 ::ll::TypedStorage<4, 4, ::ForceSendSpatialDataValue> mLastForceSendSpatialDataValue;
75 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ActorUniqueID, ::Tick>> mLastSpatialUpdateTicks;
76 // NOLINTEND
77
78public:
79 // prevent constructor by default
80 SpatialActorNetworkData& operator=(SpatialActorNetworkData const&);
81 SpatialActorNetworkData(SpatialActorNetworkData const&);
82 SpatialActorNetworkData();
83
84public:
85 // member functions
86 // NOLINTBEGIN
87 MCAPI ::std::optional<uint64> _getOptimizationUpdateInterval(::Player& player) const;
88
89#ifdef LL_PLAT_C
90 MCAPI void handleServerData(
91 ::MoveActorAbsoluteData const& moveData,
92 ::std::chrono::steady_clock::time_point const& receiveTimepoint,
93 bool isPredictableProjectile
94 );
95#endif
96
97 MCAPI void sendUpdate(bool forceMove, bool forceMoveLocalEntity, bool forceAbsoluteMovement, bool forceCompletion);
98
99#ifdef LL_PLAT_C
100 MCAPI void setLastReceivedMoveDataForAddedEntity(
101 ::ActorRuntimeID runtimeId,
102 ::Vec3 position,
103 ::Vec2 rotation,
104 float yHeadRotation
105 );
106#endif
107
108 MCAPI void teleportEntity(::Vec3 const& pos, ::Vec2 const& rot, float yHeadRot);
109 // NOLINTEND
110
111public:
112 // static variables
113 // NOLINTBEGIN
114 MCAPI static ::SpatialActorNetworkData::DebugSpatialPacketModifiers& mDebugSpatialPacketModifiers();
115 // NOLINTEND
116};
Definition ActorRuntimeID.h:5
Definition Actor.h:116
Definition MoveActorAbsoluteData.h:14
Definition Player.h:131
Definition Vec2.h:5
Definition Vec3.h:10
Definition SpatialActorNetworkData.h:31
Definition SpatialActorNetworkData.h:41
Definition SpatialActorNetworkData.h:57
Definition Tick.h:5