From 7dce28398c46bb4d12d943e4fe5001a1fe5bb2dd Mon Sep 17 00:00:00 2001 From: grimsace Date: Thu, 21 May 2026 13:26:41 -0500 Subject: [PATCH] fixed a bug with trap and monster marker generation --- src/layout/generation/markers.rs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/layout/generation/markers.rs b/src/layout/generation/markers.rs index fffce91..80221e4 100644 --- a/src/layout/generation/markers.rs +++ b/src/layout/generation/markers.rs @@ -22,13 +22,13 @@ pub fn populate_random_markers(mut layout: DungeonLayout, settings: &UiSettings) } let start_count = random_range_inclusive( - settings.min_start_marker_count, - settings.max_start_marker_count, + settings.min_start_marker_count.max(1), + settings.max_start_marker_count.max(1), seed::derive_seed(settings.seed, 10_001), ); let end_count = random_range_inclusive( - settings.min_end_marker_count, - settings.max_end_marker_count, + settings.min_end_marker_count.max(1), + settings.max_end_marker_count.max(1), seed::derive_seed(settings.seed, 10_002), ); let pair_count = start_count.min(end_count); @@ -89,7 +89,9 @@ pub fn populate_random_markers(mut layout: DungeonLayout, settings: &UiSettings) // Generates range inclusive. pub fn random_range_inclusive(min: usize, max: usize, seed_value: u64) -> usize { - let min = min.max(1); + if max == 0 { + return 0; + } let max = max.max(min); let span = max - min + 1; min + (seed_value as usize % span)