diff options
Diffstat (limited to 'scripts/wave_spawner.gd')
-rw-r--r-- | scripts/wave_spawner.gd | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/scripts/wave_spawner.gd b/scripts/wave_spawner.gd index eea656f..725f3e1 100644 --- a/scripts/wave_spawner.gd +++ b/scripts/wave_spawner.gd @@ -4,6 +4,7 @@ extends Node2D @onready var game_stats_config = preload("res://resources/game_stats_config.tres") @onready var fodder_enemy = preload("res://scenes/fodder.tscn") @onready var soldier_enemy = preload("res://scenes/soldier.tscn") +@onready var gnome_enemy = preload("res://scenes/gnome.tscn") @onready var map = get_node("../Map") @onready var _wave_timer = $Timer @@ -12,9 +13,11 @@ extends Node2D func _ready() -> void: _wave_pool = [ - [fodder_enemy , soldier_enemy], + [fodder_enemy, soldier_enemy], + [soldier_enemy, fodder_enemy, gnome_enemy], + [gnome_enemy, gnome_enemy], ] - _wave_timer = game_stats_config.wave_time + _wave_timer.wait_time = game_stats_config.wave_time var curve : Curve2D = Curve2D.new() var points : Array[Vector2i] = map.get_enemy_path() @@ -32,7 +35,7 @@ func _ready() -> void: func _on_timer_timeout(): var current_wave : int = GameData.get_current_wave() # TODO win screen should play instead - if current_wave > 1: + if current_wave > game_stats_config.max_wave: return spawn_wave(current_wave) @@ -41,7 +44,7 @@ func _on_timer_timeout(): func spawn_wave(current_wave): var selected_crawlers: Array = [] var total_worth : int = 0 - var target_worth : int = game_stats_config.wave_targets[current_wave] + var target_worth : int = game_stats_config.wave_targets[current_wave - 1] while total_worth < target_worth: var crawler_type = _select_crawler(current_wave) @@ -58,8 +61,7 @@ func spawn_wave(current_wave): func _select_crawler(current_wave) -> PackedScene: var curr_wave_pool = _wave_pool[current_wave - 1] - print(curr_wave_pool) - if randi() % 100 < 70: + if randi() % 100 < 80: # spawn fodder return curr_wave_pool[0] else: @@ -68,7 +70,6 @@ func _select_crawler(current_wave) -> PackedScene: func _spawn_crawler(crawler : PackedScene): var follow_path : PathFollow2D = PathFollow2D.new() - follow_path.set_progress(0) follow_path.rotates = false follow_path.loop = false _path.add_child(follow_path) |