diff options
| author | daoge_cmd <3523206925@qq.com> | 2026-03-01 12:16:08 +0800 |
|---|---|---|
| committer | daoge_cmd <3523206925@qq.com> | 2026-03-01 12:16:08 +0800 |
| commit | b691c43c44ff180d10e7d4a9afc83b98551ff586 (patch) | |
| tree | 3e9849222cbc6ba49f2f1fc6e5fe7179632c7390 /Minecraft.Client/DirtyChunkSorter.cpp | |
| parent | def8cb415354ac390b7e89052a50605285f1aca9 (diff) | |
Initial commit
Diffstat (limited to 'Minecraft.Client/DirtyChunkSorter.cpp')
| -rw-r--r-- | Minecraft.Client/DirtyChunkSorter.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Minecraft.Client/DirtyChunkSorter.cpp b/Minecraft.Client/DirtyChunkSorter.cpp new file mode 100644 index 00000000..1a7c10cc --- /dev/null +++ b/Minecraft.Client/DirtyChunkSorter.cpp @@ -0,0 +1,26 @@ +#include "stdafx.h" +#include "DirtyChunkSorter.h" +#include "../Minecraft.World/net.minecraft.world.entity.player.h" +#include "Chunk.h" + +DirtyChunkSorter::DirtyChunkSorter(shared_ptr<Mob> cameraEntity, int playerIndex) // 4J - added player index +{ + this->cameraEntity = cameraEntity; + this->playerIndex = playerIndex; +} + +bool DirtyChunkSorter::operator()(const Chunk *c0, const Chunk *c1) const +{ + bool i0 = c0->clipChunk->visible; + bool i1 = c1->clipChunk->visible; + if (i0 && !i1) return false; + if (i1 && !i0) return true; + + double d0 = c0->distanceToSqr(cameraEntity); + double d1 = c1->distanceToSqr(cameraEntity); + + if (d0 < d1) return false; + if (d0 > d1) return true; + + return c0->id >= c1->id; // 4J - was c0.id < c1.id ? 1 : -1 +}
\ No newline at end of file |
