Merge branch 'upstream-dev' into cleanup/nullptr-replacement

# Conflicts:
#	Minecraft.Client/Network/PlayerChunkMap.cpp
#	Minecraft.Client/Network/PlayerList.cpp
#	Minecraft.Client/Network/ServerChunkCache.cpp
#	Minecraft.Client/Platform/Common/Consoles_App.cpp
#	Minecraft.Client/Platform/Common/DLC/DLCManager.cpp
#	Minecraft.Client/Platform/Common/GameRules/LevelGenerationOptions.cpp
#	Minecraft.Client/Platform/Common/GameRules/LevelRuleset.cpp
#	Minecraft.Client/Platform/Common/Tutorial/Tutorial.cpp
#	Minecraft.Client/Platform/Common/Tutorial/TutorialTask.cpp
#	Minecraft.Client/Platform/Common/UI/IUIScene_CreativeMenu.cpp
#	Minecraft.Client/Platform/Common/UI/UIComponent_Panorama.cpp
#	Minecraft.Client/Platform/Common/UI/UIController.cpp
#	Minecraft.Client/Platform/Common/UI/UIController.h
#	Minecraft.Client/Platform/Extrax64Stubs.cpp
#	Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Input.h
#	Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Storage.h
#	Minecraft.Client/Player/EntityTracker.cpp
#	Minecraft.Client/Player/ServerPlayer.cpp
#	Minecraft.Client/Rendering/EntityRenderers/PlayerRenderer.cpp
#	Minecraft.Client/Textures/Packs/DLCTexturePack.cpp
#	Minecraft.Client/Textures/Stitching/StitchedTexture.cpp
#	Minecraft.Client/Textures/Stitching/TextureMap.cpp
#	Minecraft.Client/Textures/Textures.cpp
#	Minecraft.World/Blocks/NotGateTile.cpp
#	Minecraft.World/Blocks/PressurePlateTile.cpp
#	Minecraft.World/Blocks/TileEntities/PotionBrewing.cpp
#	Minecraft.World/Enchantments/EnchantmentHelper.cpp
#	Minecraft.World/Entities/HangingEntity.cpp
#	Minecraft.World/Entities/LeashFenceKnotEntity.cpp
#	Minecraft.World/Entities/LivingEntity.cpp
#	Minecraft.World/Entities/Mobs/Boat.cpp
#	Minecraft.World/Entities/Mobs/Minecart.cpp
#	Minecraft.World/Entities/Mobs/Witch.cpp
#	Minecraft.World/Entities/SyncedEntityData.cpp
#	Minecraft.World/Items/LeashItem.cpp
#	Minecraft.World/Items/PotionItem.cpp
#	Minecraft.World/Level/BaseMobSpawner.cpp
#	Minecraft.World/Level/CustomLevelSource.cpp
#	Minecraft.World/Level/Level.cpp
#	Minecraft.World/Level/Storage/DirectoryLevelStorage.cpp
#	Minecraft.World/Level/Storage/McRegionLevelStorage.cpp
#	Minecraft.World/Level/Storage/RegionFileCache.cpp
#	Minecraft.World/Player/Player.cpp
#	Minecraft.World/WorldGen/Biomes/BiomeCache.cpp
#	Minecraft.World/WorldGen/Features/RandomScatteredLargeFeature.cpp
#	Minecraft.World/WorldGen/Layers/BiomeOverrideLayer.cpp
This commit is contained in:
MatthewBeshay
2026-03-30 16:28:40 +11:00
265 changed files with 1408 additions and 1426 deletions

View File

@@ -564,8 +564,8 @@ void LevelRenderer::renderEntities(Vec3* cam, Culler* culler, float a) {
level[playerIndex]->getAllEntities();
totalEntities = (int)entities.size();
AUTO_VAR(itEndGE, level[playerIndex]->globalEntities.end());
for (AUTO_VAR(it, level[playerIndex]->globalEntities.begin());
auto itEndGE = level[playerIndex]->globalEntities.end();
for (auto it = level[playerIndex]->globalEntities.begin();
it != itEndGE; it++) {
std::shared_ptr<Entity> entity = *it; // level->globalEntities[i];
renderedEntities++;
@@ -573,8 +573,8 @@ void LevelRenderer::renderEntities(Vec3* cam, Culler* culler, float a) {
EntityRenderDispatcher::instance->render(entity, a);
}
AUTO_VAR(itEndEnts, entities.end());
for (AUTO_VAR(it, entities.begin()); it != itEndEnts; it++) {
auto itEndEnts = entities.end();
for (auto it = entities.begin(); it != itEndEnts; it++) {
std::shared_ptr<Entity> entity = *it; // entities[i];
bool shouldRender =
@@ -620,13 +620,13 @@ void LevelRenderer::renderEntities(Vec3* cam, Culler* culler, float a) {
// hashmap by chunk/dimension index. The index is calculated in the same way
// as the global flags.
EnterCriticalSection(&m_csRenderableTileEntities);
for (AUTO_VAR(it, renderableTileEntities.begin());
for (auto it = renderableTileEntities.begin();
it != renderableTileEntities.end(); it++) {
int idx = it->first;
// Don't render if it isn't in the same dimension as this player
if (!isGlobalIndexInSameDimension(idx, level[playerIndex])) continue;
for (AUTO_VAR(it2, it->second.tiles.begin());
for (auto it2 = it->second.tiles.begin();
it2 != it->second.tiles.end(); it2++) {
TileEntityRenderDispatcher::instance->render(*it2, a);
}
@@ -854,7 +854,7 @@ void LevelRenderer::tick() {
ticks++;
if ((ticks % SharedConstants::TICKS_PER_SECOND) == 0) {
AUTO_VAR(it, destroyingBlocks.begin());
auto it = destroyingBlocks.begin();
while (it != destroyingBlocks.end()) {
BlockDestructionProgress* block = it->second;
@@ -2153,7 +2153,7 @@ void LevelRenderer::renderDestroyAnimation(Tesselator* t,
t->offset((float)-xo, (float)-yo, (float)-zo);
t->noColor();
AUTO_VAR(it, destroyingBlocks.begin());
auto it = destroyingBlocks.begin();
while (it != destroyingBlocks.end()) {
BlockDestructionProgress* block = it->second;
double xd = block->getX() - xo;
@@ -3578,7 +3578,7 @@ void LevelRenderer::levelEvent(std::shared_ptr<Player> source, int type, int x,
void LevelRenderer::destroyTileProgress(int id, int x, int y, int z,
int progress) {
if (progress < 0 || progress >= 10) {
AUTO_VAR(it, destroyingBlocks.find(id));
auto it = destroyingBlocks.find(id);
if (it != destroyingBlocks.end()) {
delete it->second;
destroyingBlocks.erase(it);
@@ -3587,7 +3587,7 @@ void LevelRenderer::destroyTileProgress(int id, int x, int y, int z,
} else {
BlockDestructionProgress* entry = nullptr;
AUTO_VAR(it, destroyingBlocks.find(id));
auto it = destroyingBlocks.find(id);
if (it != destroyingBlocks.end()) entry = it->second;
if (entry == nullptr || entry->getX() != x || entry->getY() != y ||
@@ -3867,7 +3867,7 @@ void LevelRenderer::fullyFlagRenderableTileEntitiesToBeRemoved() {
if (itChunk == renderableTileEntities.end()) continue;
RenderableTileEntityBucket& bucket = itChunk->second;
for (AUTO_VAR(itPending, itKey->second.begin());
for (auto itPending = itKey->second.begin();
itPending != itKey->second.end(); itPending++) {
if (bucket.indexByTile.find(*itPending) ==
bucket.indexByTile.end()) {