summaryrefslogtreecommitdiff
path: root/scripts/game_data.gd
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/game_data.gd')
-rw-r--r--scripts/game_data.gd23
1 files changed, 17 insertions, 6 deletions
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!")