From 0f6253876681955020005e7c29429b59250af601 Mon Sep 17 00:00:00 2001 From: bd Date: Thu, 29 May 2025 14:32:47 -0400 Subject: More advanced wave spawning, player controls advancing of waves --- scripts/game_data.gd | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) (limited to 'scripts/game_data.gd') diff --git a/scripts/game_data.gd b/scripts/game_data.gd index 6850b35..716ff1d 100644 --- a/scripts/game_data.gd +++ b/scripts/game_data.gd @@ -5,14 +5,16 @@ var morale_down = preload("res://assets/morale_down.wav") signal life_changed signal morale_changed +signal wave_started var _life : int var _morale : int var _current_wave : int +var _is_spawning : bool func reset(): _life = game_stats_config.starting_life _morale = game_stats_config.starting_morale - _current_wave = 1 + _current_wave = -1 func get_life() -> int: return _life @@ -41,9 +43,18 @@ func subtract_morale(amount: int): var ap = get_tree().current_scene.get_node("Blips") ap.stream = morale_down ap.play() - -func get_current_wave() -> int: - return _current_wave -func increment_wave(): - _current_wave += 1 +func get_is_spawning() -> bool: + return _is_spawning + +func start_spawning(): + if !_is_spawning && _current_wave < game_stats_config.wave_data.size(): + _current_wave += 1 + _is_spawning = true + emit_signal("wave_started", _current_wave) + +func stop_spawning(): + _is_spawning = false + if (_current_wave > game_stats_config.wave_data.size()): + # TODO + print("win!") -- cgit v1.2.3