36 struct HistoryTimestampData {
47 HistoryTimestampData& operator=(HistoryTimestampData
const&);
48 HistoryTimestampData(HistoryTimestampData
const&);
49 HistoryTimestampData();
54 MCAPI
static uint& mSequenceIdGenerator();
61 enum class ItemType :
int {
77 HistoryItem& operator=(HistoryItem
const&);
78 HistoryItem(HistoryItem
const&);
85 virtual ~HistoryItem() =
default;
87 virtual ~HistoryItem();
90 virtual bool isValidStartItem()
const = 0;
92 virtual bool isAddedActorItem()
const = 0;
94 virtual bool isMotionHintItem()
const = 0;
96 virtual ::std::string toString()
const;
98 virtual ::Vec3
const& getPos()
const = 0;
100 virtual ::Vec2
const& getRot()
const = 0;
102 virtual float getYHeadRot()
const = 0;
104 virtual bool isOnGround()
const = 0;
116 MCAPI ::std::string $toString()
const;
128 struct PredictionDbgWindowData {
147 PredictionDbgWindowData& operator=(PredictionDbgWindowData
const&);
148 PredictionDbgWindowData(PredictionDbgWindowData
const&);
149 PredictionDbgWindowData();
152 struct PredictionDbgData {
166 PredictionDbgData& operator=(PredictionDbgData
const&);
167 PredictionDbgData(PredictionDbgData
const&);
173 MCAPI ::std::string toString()
const;
175 MCAPI ~PredictionDbgData();
185 struct RuntimePredictionData {
193 struct LerpedInterval {
205 LerpedInterval& operator=(LerpedInterval
const&);
206 LerpedInterval(LerpedInterval
const&);
228 RuntimePredictionData& operator=(RuntimePredictionData
const&);
229 RuntimePredictionData(RuntimePredictionData
const&);
230 RuntimePredictionData();
235 virtual ~RuntimePredictionData() =
default;
244 MCAPI
void updateRuntimeData(
245 ::std::shared_ptr<::PredictedMovementComponent::HistoryItem const>
const& newItem,
246 ::std::shared_ptr<::PredictedMovementComponent::HistoryItem const>
const& prevNewItem,
247 uint64 currentHistoryItemSize
271 HistoryCache& operator=(HistoryCache
const&);
272 HistoryCache(HistoryCache
const&);
278 MCAPI
void _addHistoryItem(::std::shared_ptr<::PredictedMovementComponent::HistoryItem const>
const& item);
280 MCAPI
void _clearHistory();
284 addHistory(
::AddActorPacket const& actorData, ::std::chrono::steady_clock::time_point
const& receiveTimepoint);
286 MCAPI
void addHistory(
288 ::std::chrono::steady_clock::time_point
const& receiveTimepoint
291 MCAPI
void addHistory(
293 ::std::chrono::steady_clock::time_point
const& receiveTimepoint
297 MCAPI
void addHistory(
299 ::std::chrono::steady_clock::time_point
const& receiveTimepoint
302 MCAPI ::std::string toString();
323 MotionHistoryItem& operator=(MotionHistoryItem
const&);
324 MotionHistoryItem(MotionHistoryItem
const&);
330 virtual bool isValidStartItem()
const ;
332 virtual bool isAddedActorItem()
const ;
334 virtual bool isMotionHintItem()
const ;
336 virtual ::Vec3
const& getPos()
const ;
338 virtual ::Vec2
const& getRot()
const ;
340 virtual float getYHeadRot()
const ;
342 virtual bool isOnGround()
const ;
344 virtual ~MotionHistoryItem() =
default;
351 MCAPI MotionHistoryItem(
354 bool isMotionHintItem,
355 ::std::chrono::steady_clock::time_point
const& timepoint,
356 ::std::shared_ptr<::PredictedMovementComponent::MoveHistoryItem const>
const& prevMoveItem,
357 ::std::shared_ptr<::PredictedMovementComponent::MotionHistoryItem const>
const& prevMotionItem,
358 bool didAdjustTimepoint,
359 ::std::chrono::milliseconds
const& timepointDiff
371 bool isMotionHintItem,
372 ::std::chrono::steady_clock::time_point
const& timepoint,
373 ::std::shared_ptr<::PredictedMovementComponent::MoveHistoryItem const>
const& prevMoveItem,
374 ::std::shared_ptr<::PredictedMovementComponent::MotionHistoryItem const>
const& prevMotionItem,
375 bool didAdjustTimepoint,
376 ::std::chrono::milliseconds
const& timepointDiff
385 MCAPI
bool $isValidStartItem()
const;
387 MCAPI
bool $isAddedActorItem()
const;
389 MCAPI
bool $isMotionHintItem()
const;
391 MCFOLD ::Vec3
const& $getPos()
const;
393 MCFOLD ::Vec2
const& $getRot()
const;
395 MCAPI
float $getYHeadRot()
const;
397 MCFOLD
bool $isOnGround()
const;
423 MoveHistoryItem& operator=(MoveHistoryItem
const&);
424 MoveHistoryItem(MoveHistoryItem
const&);
430 virtual bool isValidStartItem()
const ;
432 virtual bool isAddedActorItem()
const ;
434 virtual bool isMotionHintItem()
const ;
436 virtual ::Vec3
const& getPos()
const ;
438 virtual ::Vec2
const& getRot()
const ;
440 virtual float getYHeadRot()
const ;
442 virtual bool isOnGround()
const ;
444 virtual ~MoveHistoryItem() =
default;
450 MCFOLD
bool $isValidStartItem()
const;
452 MCFOLD
bool $isAddedActorItem()
const;
454 MCFOLD
bool $isMotionHintItem()
const;
456 MCFOLD ::Vec3
const& $getPos()
const;
458 MCAPI ::Vec2
const& $getRot()
const;
460 MCAPI
float $getYHeadRot()
const;
462 MCFOLD
bool $isOnGround()
const;
474 using PredictionEventsListenerFunction = ::std::function<void(::MovePredictionType)>;
479 ::ll::TypedStorage<1, 1, ::brstd::bitset<2, uchar>> mDisableConditions;
480 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PredictedMovementComponent::RuntimePredictionData>>
481 mRuntimePredictionData;
482 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::PredictedMovementComponent::HistoryItem const>> mLastStartItem;
483 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::PredictedMovementComponent::HistoryItem const>> mLastEndItem;
484 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PredictedMovementComponent::HistoryCache>> mHistoryCache;
485 ::ll::TypedStorage<1, 1, bool> mForceTeleportAfterResuming;
486 ::ll::TypedStorage<1, 1, bool> mAllowTeleportingWithoutRegion;
487 ::ll::TypedStorage<4, 4, uint> mLastCompletedInterpolationSequenceID;
488 ::ll::TypedStorage<8, 64, ::std::function<void(::MovePredictionType)>> mPredictionEventsListenerFunc;
489 ::ll::TypedStorage<8, 16, ::PredictedMovementValues> mPredictedMovementValues;
495 MCAPI
void _debugLog(
500 MCAPI
bool _tryInterpolate(
502 ::std::chrono::steady_clock::time_point
const& renderTimepoint
514 MCAPI static ::std::unique_ptr<::PredictedMovementComponent::RuntimePredictionData>& mGlobalRuntimePredictionData();
Definition PredictedMovementComponent.h:259
Definition PredictedMovementComponent.h:58
static MCAPI void ** $vftable()
Definition PredictedMovementComponent.h:36
Definition PredictedMovementComponent.h:306
static MCAPI void ** $vftable()
Definition PredictedMovementComponent.h:410
static MCAPI void ** $vftable()