39 [[nodiscard]]
bool operator>(
BlockTick const& other)
const {
return mData > other.mData; }
53 :
public ::MovePriorityQueue<::BlockTickingQueue::BlockTick, ::std::greater<::BlockTickingQueue::BlockTick>> {
57 MCAPI
void _pruneQueueForMemory();
64 ::ll::TypedStorage<8, 8, ::LevelChunk*> mOwningChunk;
65 ::ll::TypedStorage<8, 8, ::Tick> mCurrentTick;
66 ::ll::TypedStorage<8, 24, ::BlockTickingQueue::TickDataSet> mNextTickQueue;
67 ::ll::TypedStorage<8, 24, ::BlockTickingQueue::TickDataSet> mActiveTickQueue;
68 ::ll::TypedStorage<8, 24, ::BlockTickingQueue::TickDataSet> mDeferredTicks;
69 ::ll::TypedStorage<1, 1, ::TickingQueueType> mQueueType;
70 ::ll::TypedStorage<1, 1, bool> mInstaTick;
78 MCAPI
void _addToNextTickQueue(
::BlockPos const& pos,
::Block const& block,
int tickDelay,
int priorityOffset);
93 MCAPI
void addTickToLevelChunk(
101 MCAPI
void eliminateAllTicksZeroAndAbove();
103 MCAPI
void eliminateDuplicatesOf(
::BlockType const& block);
105 MCAPI
void finishInstaticking();
109 MCAPI ::std::optional<::Tick> getTickDelayForNextTickUpdateAtPos(
::BlockPos const& pos)
const;
111 MCAPI ::std::unordered_multimap<::BlockPos, ::TickDelayBlock>
114 MCAPI
bool hasTickInPendingTicks(
::BlockPos const& pos)
const;
116 MCAPI
bool isEmpty()
const;
118 MCAPI
bool isInNextTickQueue(
::BlockPos const& pos,
::BlockType const& blockType,
int tickDelay)
const;
130 MCAPI
void tickAllPendingTicks(
::BlockSource& region, uint64 maximumTicksAllowed);
132 MCAPI
bool tickPendingTicks(
::BlockSource& region,
::Tick const& until,
int max,
bool instaTick_);
134 MCAPI
int ticksFromNow(
int offset)
const;