From 9da242436fb3976e34a7d5d390188ded595cf65e Mon Sep 17 00:00:00 2001 From: Dendy Faist Date: Thu, 5 Mar 2026 13:47:39 +0100 Subject: [PATCH] feat: Increase pedestrian spawn probabilities with the stage count --- level.gd | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/level.gd b/level.gd index 51d5c7b..8af54a8 100644 --- a/level.gd +++ b/level.gd @@ -6,6 +6,8 @@ const BASE_DIMENSION: int = 2 var dimension: int = BASE_DIMENSION @export var ped_spawn_rate: int = 20 +# Spawn Rate = rate - floor(stage_count * stage_mod) +@export var ped_spawn_rate_stage_modifier: float = 0.5 var pedestrian_scn = preload("res://pedestrian.tscn") var chunk_scn = preload("res://chunk.tscn") @@ -126,8 +128,12 @@ func _process(delta: float) -> void: var spawn_radius = $Player/SpawnArea/Collision.shape.radius + randf_range(-5, 5) var rand_unit_vec = Vector3.RIGHT.rotated(Vector3.UP, randf() * TAU) var ped_pos = $Player.position + rand_unit_vec * spawn_radius - if (randi() % ped_spawn_rate == 0): - print("Pedestrian at ", ped_pos) + var final_ped_spawn_rate = int(ped_spawn_rate - floor( + ped_spawn_rate_stage_modifier * float($Player.stage_counter)) + ) + + if (randi() % final_ped_spawn_rate == 0): + print("Pedestrian at ", ped_pos, final_ped_spawn_rate) var new_ped = pedestrian_scn.instantiate() add_child(new_ped) new_ped.position = ped_pos