Created new functions for wave status, initializing a new wave based on
status, evaluating the agression of the current weave.
This commit is contained in:
parent
674a231847
commit
e3c384c3cd
1 changed files with 36 additions and 15 deletions
51
wave.gd
51
wave.gd
|
|
@ -4,6 +4,8 @@ var wave_count: int = 0
|
|||
var enemy_count: int = 0
|
||||
var enemy = preload("res://scenes/enemy.tscn")
|
||||
|
||||
@export var wave_complete: bool = false
|
||||
|
||||
const COLS: int = 9
|
||||
const ROWS: int = 3
|
||||
|
||||
|
|
@ -27,21 +29,9 @@ func spawn_enemies():
|
|||
|
||||
func _on_enemy_died():
|
||||
enemy_count -= 1
|
||||
print_debug(enemy_count)
|
||||
if enemy_count == 0:
|
||||
print_debug("Remaining enemies: ", enemy_count, ", ", get_tree().get_nodes_in_group("enemies").size())
|
||||
# win_game()
|
||||
await get_tree().create_timer(2).timeout
|
||||
wave_count += 1
|
||||
spawn_enemies()
|
||||
if enemy_count == ROWS * COLS / 2:
|
||||
print_debug("Enemy count is 50%")
|
||||
update_enemy_aggression(2,10)
|
||||
EventBus.goose_talk.emit()
|
||||
if enemy_count == ROWS * COLS / 4:
|
||||
print_debug("Enemy count is 25%")
|
||||
update_enemy_aggression(1,1)
|
||||
|
||||
wave_status()
|
||||
|
||||
|
||||
func update_enemy_aggression(low,high):
|
||||
var nodes = get_tree().get_nodes_in_group("enemies")
|
||||
|
||||
|
|
@ -50,3 +40,34 @@ func update_enemy_aggression(low,high):
|
|||
node.enemy_move_aggression = randf_range(low,high)
|
||||
node.enemy_shoot_aggression = randf_range(low,high)
|
||||
node.tween_speed = min(low,high) - .75
|
||||
|
||||
|
||||
func wave_status():
|
||||
if enemy_count > 0:
|
||||
enemy_aggression_check()
|
||||
wave_complete = false
|
||||
|
||||
else:
|
||||
EventBus.goose_talk.emit()
|
||||
wave_initialize()
|
||||
wave_complete = true
|
||||
|
||||
func wave_initialize():
|
||||
await get_tree().create_timer(2).timeout
|
||||
wave_count += 1
|
||||
spawn_enemies()
|
||||
|
||||
func enemy_aggression_check():
|
||||
if enemy_count == ROWS * COLS / 2:
|
||||
print_debug("Enemy count is 50%")
|
||||
update_enemy_aggression(2,10)
|
||||
EventBus.goose_talk.emit()
|
||||
if enemy_count == ROWS * COLS / 4:
|
||||
print_debug("Enemy count is 25%")
|
||||
update_enemy_aggression(1,1)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue