diff --git a/src/console_cmds.cpp b/src/console_cmds.cpp index e3dace4e9f..a91212f414 100644 --- a/src/console_cmds.cpp +++ b/src/console_cmds.cpp @@ -2855,6 +2855,7 @@ DEF_CONSOLE_CMD(ConMiscDebug) if (argc < 1 || argc > 2) { IConsoleHelp("Debug: misc flags. Usage: 'misc_debug []'"); IConsoleHelp(" 1: MDF_OVERHEAT_BREAKDOWN_OPEN_WIN"); + IConsoleHelp(" 2: MDF_ZONING_RS_WATER_FLOOD_STATE"); return true; } diff --git a/src/debug_settings.h b/src/debug_settings.h index fb78e9478f..a31b3833c4 100644 --- a/src/debug_settings.h +++ b/src/debug_settings.h @@ -25,6 +25,7 @@ inline bool HasChickenBit(ChickenBitFlags flag) enum MiscDebugFlags { MDF_OVERHEAT_BREAKDOWN_OPEN_WIN, + MDF_ZONING_RS_WATER_FLOOD_STATE, }; extern uint32 _misc_debug_flags; diff --git a/src/zoning_cmd.cpp b/src/zoning_cmd.cpp index 9dbad99a36..68963a3235 100644 --- a/src/zoning_cmd.cpp +++ b/src/zoning_cmd.cpp @@ -26,6 +26,7 @@ #include "zoning.h" #include "viewport_func.h" #include "road_map.h" +#include "debug_settings.h" #include "3rdparty/cpp-btree/btree_set.h" Zoning _zoning; @@ -252,6 +253,9 @@ SpriteID TileZoneCheckTraceRestrictEvaluation(TileIndex tile, Owner owner) if (IsTileType(tile, MP_RAILWAY) && HasSignals(tile) && IsRestrictedSignal(tile)) { return SPR_ZONING_INNER_HIGHLIGHT_RED; } + if (unlikely(HasBit(_misc_debug_flags, MDF_ZONING_RS_WATER_FLOOD_STATE)) && IsNonFloodingWaterTile(tile)) { + return SPR_ZONING_INNER_HIGHLIGHT_YELLOW; + } return ZONING_INVALID_SPRITE_ID; }