From 7d4b999d64a933878e918bdfcf1229b9936ac7ab Mon Sep 17 00:00:00 2001 From: proller Date: Sat, 14 Feb 2026 02:12:59 +0100 Subject: [PATCH] wip --- src/client/fm_far_container.cpp | 8 +++++--- src/client/fm_farmesh.cpp | 2 +- util/autotest/auto.pl | 14 +++++++++++--- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/src/client/fm_far_container.cpp b/src/client/fm_far_container.cpp index 75d553d8d..b8c6a9c49 100644 --- a/src/client/fm_far_container.cpp +++ b/src/client/fm_far_container.cpp @@ -26,7 +26,8 @@ const MapNode &FarContainer::getNodeRefUnsafe(const v3pos_t &pos) const auto player_block_pos = getNodeBlockPos(client_map.far_blocks_last_cam_pos); const auto &control = client_map.getControl(); - const auto tree_result = farmesh::getFarParams(control, player_block_pos, block_pos, true); + const auto tree_result = + farmesh::getFarParams(control, player_block_pos, block_pos, true); if (tree_result) { const auto &step = tree_result->step; const v3bpos_t &bpos_aligned = tree_result->pos; @@ -44,8 +45,8 @@ const MapNode &FarContainer::getNodeRefUnsafe(const v3pos_t &pos) const auto loadBlock = [this, &client_map]( const auto &bpos, const auto step) -> MapBlockPtr { - auto *dbase = - GetFarDatabase({}, m_client->far_dbases, m_client->m_world_path, step); + auto *dbase = GetFarDatabase( + {}, m_client->far_dbases, m_client->m_world_path, step); if (!dbase) { return {}; } @@ -100,6 +101,7 @@ const MapNode &FarContainer::getNodeRefUnsafe(const v3pos_t &pos) } } } + if (const auto &v = m_mg->visible_content(pos, use_weather); v.getContent()) { return v; } diff --git a/src/client/fm_farmesh.cpp b/src/client/fm_farmesh.cpp index 5450cfbcc..19e4bbbd8 100644 --- a/src/client/fm_farmesh.cpp +++ b/src/client/fm_farmesh.cpp @@ -97,7 +97,7 @@ void FarMesh::makeFarBlock(const v3bpos_t &blockpos, block_step_t step) for (pos_t y = 0; y < 1 << draw_control.cell_size_pow; ++y) { for (pos_t z = 0; z < 1 << draw_control.cell_size_pow; ++z) { client_map.m_far_blocks_ask.emplace( - blockpos_actual + v3bpos_t{x, y, z}, + blockpos_actual + v3bpos_t{x, y, z} * (1 << step), std::make_pair(step, far_iteration_complete)); } } diff --git a/util/autotest/auto.pl b/util/autotest/auto.pl index 2ed450ba2..e1c6d0d1c 100755 --- a/util/autotest/auto.pl +++ b/util/autotest/auto.pl @@ -415,10 +415,18 @@ $commands = { rename qw(CMakeCache.txt CMakeCache.txt.backup); rename qw(src/cmake_config.h src/cmake_config.backup); sy qq{mkdir -p $build_dir $config->{logdir}}; + + my $self = join(' ', $0, (map { /[()\s"]/ ? "'" . $_ . "'" : $_ } @ARGV), '$*'); file_append( "$config->{logdir}/run.sh", join "\n", - qq{# } . join(' ', $0, map { /[()\s"]/ ? "'" . $_ . "'" : $_ } @ARGV), + "cd ..", + $self, + ); + file_append( + "$config->{logdir}/log.sh", + join "\n", + qq{# } . $self, qq{cd "$build_dir"}, "" ); @@ -924,14 +932,14 @@ sub sig(;$$) { sub sy (@) { say 'running ', join ' ', @_; - file_append("$config->{logdir}/run.sh", join(' ', @_), "\n"); + file_append("$config->{logdir}/log.sh", join(' ', @_), "\n"); return sig system 'bash', '-c', join ' ', @_; } sub sytee (@) { my $tee = pop; say 'running ', join ' ', @_; - file_append("$config->{logdir}/run.sh", join(' ', @_), "\n"); + file_append("$config->{logdir}/log.sh", join(' ', @_), "\n"); my $pid = open my $fh, "-|", "@_ 2>&1" or return "can't open @_: $!"; if ($config->{pid_file}) { unlink $config->{pid_file};