Skip to content

Commit

Permalink
Show status message when changing block bounds (#11556)
Browse files Browse the repository at this point in the history
  • Loading branch information
Wuzzy2 committed Aug 21, 2021
1 parent e7b05be commit 6fd8aed
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 12 deletions.
19 changes: 18 additions & 1 deletion src/client/game.cpp
Expand Up @@ -2193,7 +2193,24 @@ void Game::toggleCinematic()
void Game::toggleBlockBounds()
{
if (client->checkPrivilege("basic_debug")) {
hud->toggleBlockBounds();
enum Hud::BlockBoundsMode newmode = hud->toggleBlockBounds();
switch (newmode) {
case Hud::BLOCK_BOUNDS_OFF:
m_game_ui->showTranslatedStatusText("Block bounds hidden");
break;
case Hud::BLOCK_BOUNDS_CURRENT:
m_game_ui->showTranslatedStatusText("Block bounds shown for current block");
break;
case Hud::BLOCK_BOUNDS_NEAR:
m_game_ui->showTranslatedStatusText("Block bounds shown for nearby blocks");
break;
case Hud::BLOCK_BOUNDS_MAX:
m_game_ui->showTranslatedStatusText("Block bounds shown for all blocks");
break;
default:
break;
}

} else {
m_game_ui->showTranslatedStatusText("Can't show block bounds (need 'basic_debug' privilege)");
}
Expand Down
5 changes: 3 additions & 2 deletions src/client/hud.cpp
Expand Up @@ -857,13 +857,14 @@ void Hud::drawSelectionMesh()
}
}

void Hud::toggleBlockBounds()
enum Hud::BlockBoundsMode Hud::toggleBlockBounds()
{
m_block_bounds_mode = static_cast<BlockBoundsMode>(m_block_bounds_mode + 1);

if (m_block_bounds_mode >= BLOCK_BOUNDS_MAX) {
m_block_bounds_mode = BLOCK_BOUNDS_OFF;
}
return m_block_bounds_mode;
}

void Hud::disableBlockBounds()
Expand All @@ -890,7 +891,7 @@ void Hud::drawBlockBounds()

v3f offset = intToFloat(client->getCamera()->getOffset(), BS);

s8 radius = m_block_bounds_mode == BLOCK_BOUNDS_ALL ? 2 : 0;
s8 radius = m_block_bounds_mode == BLOCK_BOUNDS_NEAR ? 2 : 0;

v3f halfNode = v3f(BS, BS, BS) / 2.0f;

Expand Down
18 changes: 9 additions & 9 deletions src/client/hud.h
Expand Up @@ -35,6 +35,14 @@ struct ItemStack;
class Hud
{
public:
enum BlockBoundsMode
{
BLOCK_BOUNDS_OFF,
BLOCK_BOUNDS_CURRENT,
BLOCK_BOUNDS_NEAR,
BLOCK_BOUNDS_MAX
} m_block_bounds_mode = BLOCK_BOUNDS_OFF;

video::SColor crosshair_argb;
video::SColor selectionbox_argb;

Expand All @@ -51,7 +59,7 @@ class Hud
Inventory *inventory);
~Hud();

void toggleBlockBounds();
enum BlockBoundsMode toggleBlockBounds();
void disableBlockBounds();
void drawBlockBounds();

Expand Down Expand Up @@ -127,14 +135,6 @@ class Hud

scene::SMeshBuffer m_rotation_mesh_buffer;

enum BlockBoundsMode
{
BLOCK_BOUNDS_OFF,
BLOCK_BOUNDS_CURRENT,
BLOCK_BOUNDS_ALL,
BLOCK_BOUNDS_MAX
} m_block_bounds_mode = BLOCK_BOUNDS_OFF;

enum
{
HIGHLIGHT_BOX,
Expand Down

0 comments on commit 6fd8aed

Please sign in to comment.