3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/entity/components/MovePredictionType.h"
7#include "mc/entity/components/PredictedMovementValues.h"
8#include "mc/platform/brstd/bitset.h"
33 struct HistoryTimestampData {
44 HistoryTimestampData& operator=(HistoryTimestampData
const&);
45 HistoryTimestampData(HistoryTimestampData
const&);
46 HistoryTimestampData();
58 enum class ItemType :
int {
74 HistoryItem& operator=(HistoryItem
const&);
75 HistoryItem(HistoryItem
const&);
81 virtual ~HistoryItem() =
default;
83 virtual bool isValidStartItem()
const = 0;
85 virtual bool isAddedActorItem()
const = 0;
87 virtual bool isMotionHintItem()
const = 0;
89 virtual ::std::string toString()
const;
91 virtual ::Vec3
const& getPos()
const = 0;
93 virtual ::Vec2
const& getRot()
const = 0;
95 virtual float getYHeadRot()
const = 0;
97 virtual bool isOnGround()
const = 0;
109 struct PredictionDbgWindowData {
128 PredictionDbgWindowData& operator=(PredictionDbgWindowData
const&);
129 PredictionDbgWindowData(PredictionDbgWindowData
const&);
130 PredictionDbgWindowData();
133 struct PredictionDbgData {
147 PredictionDbgData& operator=(PredictionDbgData
const&);
148 PredictionDbgData(PredictionDbgData
const&);
152 struct RuntimePredictionData {
160 struct LerpedInterval {
172 LerpedInterval& operator=(LerpedInterval
const&);
173 LerpedInterval(LerpedInterval
const&);
195 RuntimePredictionData& operator=(RuntimePredictionData
const&);
196 RuntimePredictionData(RuntimePredictionData
const&);
197 RuntimePredictionData();
202 virtual ~RuntimePredictionData() =
default;
230 HistoryCache& operator=(HistoryCache
const&);
231 HistoryCache(HistoryCache
const&);
241 ::std::chrono::steady_clock::time_point
const& receiveTimepoint
263 MotionHistoryItem& operator=(MotionHistoryItem
const&);
264 MotionHistoryItem(MotionHistoryItem
const&);
270 virtual bool isValidStartItem()
const ;
272 virtual bool isAddedActorItem()
const ;
274 virtual bool isMotionHintItem()
const ;
276 virtual ::Vec3
const& getPos()
const ;
278 virtual ::Vec2
const& getRot()
const ;
280 virtual float getYHeadRot()
const ;
282 virtual bool isOnGround()
const ;
299 MoveHistoryItem& operator=(MoveHistoryItem
const&);
300 MoveHistoryItem(MoveHistoryItem
const&);
306 virtual bool isValidStartItem()
const ;
308 virtual bool isAddedActorItem()
const ;
310 virtual bool isMotionHintItem()
const ;
312 virtual ::Vec3
const& getPos()
const ;
314 virtual ::Vec2
const& getRot()
const ;
316 virtual float getYHeadRot()
const ;
318 virtual bool isOnGround()
const ;
348 using PredictionEventsListenerFunction = ::std::function<void(::MovePredictionType)>;
353 ::ll::TypedStorage<1, 1, ::brstd::bitset<2, uchar>> mDisableConditions;
354 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PredictedMovementComponent::RuntimePredictionData>>
355 mRuntimePredictionData;
356 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::PredictedMovementComponent::HistoryItem const>> mLastStartItem;
357 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::PredictedMovementComponent::HistoryItem const>> mLastEndItem;
358 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PredictedMovementComponent::HistoryCache>> mHistoryCache;
359 ::ll::TypedStorage<1, 1, bool> mForceTeleportAfterResuming;
360 ::ll::TypedStorage<1, 1, bool> mAllowTeleportingWithoutRegion;
361 ::ll::TypedStorage<4, 4, uint> mLastCompletedInterpolationSequenceID;
362 ::ll::TypedStorage<8, 64, ::std::function<void(::MovePredictionType)>> mPredictionEventsListenerFunc;
363 ::ll::TypedStorage<8, 16, ::PredictedMovementValues> mPredictedMovementValues;
387 MCNAPI static ::std::unique_ptr<::PredictedMovementComponent::RuntimePredictionData>&
Definition MoveActorAbsoluteData.h:14
Definition PredictedMovementComponent.h:218
MCAPI void _clearHistory()
MCAPI void addHistory(::MoveActorAbsoluteData const &moveData, ::std::chrono::steady_clock::time_point const &receiveTimepoint)
MCAPI void _debugLog(::PredictedMovementSystemParams ¶ms, ::PredictedMovementComponent::PredictionDbgData const &debugData) const
MCAPI ~PredictedMovementComponent()
static MCAPI ::std::unique_ptr<::PredictedMovementComponent::RuntimePredictionData > & mGlobalRuntimePredictionData()
MCAPI PredictedMovementComponent()
MCAPI void tickNextPosition(::PredictedMovementSystemParams ¶ms, ::std::chrono::steady_clock::time_point const &timepoint)
Definition PredictedMovementComponent.h:55
MCAPI::std::string $toString() const
Definition PredictedMovementComponent.h:33
static MCAPI uint & mSequenceIdGenerator()
Definition PredictedMovementComponent.h:246
Definition PredictedMovementComponent.h:286
MCAPI::Vec2 const & $getRot() const
MCAPI bool $isAddedActorItem() const
MCAPI bool $isOnGround() const
MCAPI::Vec3 const & $getPos() const
MCAPI bool $isMotionHintItem() const
MCAPI float $getYHeadRot() const
MCAPI bool $isValidStartItem() const
Definition PredictedMovementComponent.h:133
Definition PredictedMovementComponent.h:109
Definition PredictedMovementComponent.h:160
Definition PredictedMovementComponent.h:152
static MCAPI void ** $vftable()
Definition PredictedMovementSystemParams.h:5