feat: Increase pedestrian spawn probabilities with the stage count
This commit is contained in:
parent
13c820909b
commit
9da242436f
10
level.gd
10
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
|
||||
|
|
|
|||
Loading…
Reference in New Issue