diff options
| author | qwasdrizzel <145519042+qwasdrizzel@users.noreply.github.com> | 2026-03-16 21:44:26 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-16 21:44:26 -0500 |
| commit | ce739f6045ec72127491286ea3f3f21e537c1b55 (patch) | |
| tree | f33bd42a47c1b4a7b2153a7fb77127ee3b407db9 /Minecraft.World/ZonedChunkStorage.cpp | |
| parent | 255a18fe8e9b57377975f82e2b227afe2a12eda0 (diff) | |
| parent | 5a59f5d146b43811dde6a5a0245ee9875d7b5cd1 (diff) | |
Merge branch 'smartcmd:main' into main
Diffstat (limited to 'Minecraft.World/ZonedChunkStorage.cpp')
| -rw-r--r-- | Minecraft.World/ZonedChunkStorage.cpp | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/Minecraft.World/ZonedChunkStorage.cpp b/Minecraft.World/ZonedChunkStorage.cpp index 5c6bf192..75df6a0c 100644 --- a/Minecraft.World/ZonedChunkStorage.cpp +++ b/Minecraft.World/ZonedChunkStorage.cpp @@ -50,7 +50,7 @@ ZoneFile *ZonedChunkStorage::getZoneFile(int x, int z, bool create) int xZone = x >> CHUNKS_PER_ZONE_BITS; int zZone = z >> CHUNKS_PER_ZONE_BITS; - __int64 key = xZone + (zZone << 20l); + int64_t key = xZone + (zZone << 20l); // 4J - was !zoneFiles.containsKey(key) if (zoneFiles.find(key) == zoneFiles.end()) { @@ -62,8 +62,8 @@ ZoneFile *ZonedChunkStorage::getZoneFile(int x, int z, bool create) if ( !file.exists() ) { - if (!create) return NULL; - HANDLE ch = CreateFile(wstringtofilename(file.getPath()), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); + if (!create) return nullptr; + HANDLE ch = CreateFile(wstringtofilename(file.getPath()), GENERIC_READ | GENERIC_WRITE, 0, nullptr, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, nullptr); CloseHandle(ch); } @@ -76,7 +76,7 @@ ZoneFile *ZonedChunkStorage::getZoneFile(int x, int z, bool create) zoneFile->lastUse = tickCount; if (!zoneFile->containsSlot(slot)) { - if (!create) return NULL; + if (!create) return nullptr; } return zoneFile; @@ -85,14 +85,14 @@ ZoneFile *ZonedChunkStorage::getZoneFile(int x, int z, bool create) ZoneIo *ZonedChunkStorage::getBuffer(int x, int z, bool create) { ZoneFile *zoneFile = getZoneFile(x, z, create); - if (zoneFile == NULL) return NULL; + if (zoneFile == nullptr) return nullptr; return zoneFile->getZoneIo(getSlot(x, z)); } LevelChunk *ZonedChunkStorage::load(Level *level, int x, int z) { ZoneIo *zoneIo = getBuffer(x, z, false); - if (zoneIo == NULL) return NULL; + if (zoneIo == nullptr) return nullptr; LevelChunk *lc = new LevelChunk(level, x, z); lc->unsaved = false; @@ -107,8 +107,8 @@ LevelChunk *ZonedChunkStorage::load(Level *level, int x, int z) header->flip(); int xOrg = header->getInt(); int zOrg = header->getInt(); - __int64 time = header->getLong(); - __int64 flags = header->getLong(); + int64_t time = header->getLong(); + int64_t flags = header->getLong(); lc->terrainPopulated = (flags & BIT_TERRAIN_POPULATED) != 0; @@ -121,7 +121,7 @@ LevelChunk *ZonedChunkStorage::load(Level *level, int x, int z) void ZonedChunkStorage::save(Level *level, LevelChunk *lc) { - __int64 flags = 0; + int64_t flags = 0; if (lc->terrainPopulated) flags |= BIT_TERRAIN_POPULATED; ByteBuffer *header = ByteBuffer::allocate(CHUNK_HEADER_SIZE); @@ -176,7 +176,7 @@ void ZonedChunkStorage::flush() for ( auto& it : zoneFiles ) { ZoneFile *zoneFile = it.second; - if ( zoneFile ) + if ( zoneFile ) zoneFile->close(); } zoneFiles.clear(); @@ -194,7 +194,11 @@ void ZonedChunkStorage::loadEntities(Level *level, LevelChunk *lc) if (type == 0) { shared_ptr<Entity> e = EntityIO::loadStatic(tag, level); - if (e != nullptr) lc->addEntity(e); + if (e != nullptr) + { + lc->addEntity(e); + lc->addRidingEntities(e, tag); + } } else if (type == 1) { |
