Commented main game's functionality to better track what's happening.

This commit is contained in:
Henry 2025-12-24 13:29:59 +00:00
parent aa7cdc90d6
commit be3919acd7
2 changed files with 29 additions and 15 deletions

26
main.gd
View file

@ -17,7 +17,7 @@ func _ready():
func spawn_enemies():
get_tree().call_group("enemies", "queue_free")
for x in range(9):
for y in range(3):
var e = enemy.instantiate()
@ -25,7 +25,7 @@ func spawn_enemies():
add_child(e)
e.start(pos)
enemy_count = get_tree().get_nodes_in_group("enemies").size()
print(enemy_count)
print("Remaining enemies: ", enemy_count)
func _on_enemy_died(value: int):
@ -41,6 +41,7 @@ func _on_player_died():
# get_tree().call_group("enemies", "queue_free")
EventBus.enemy_win.emit()
# $Player.set_process(false)
# get_tree().call_group("enemies", "set_process", false)
instance.queue_free()
game_over.show()
await get_tree().create_timer(2).timeout
@ -49,23 +50,32 @@ func _on_player_died():
playing = false
func new_game():
# Ensure enemies are cleared.
enemy_count = 0
get_tree().call_group("enemies", "queue_free")
get_tree().call_group("enemy_bullets", "queue_free")
# get_node("player").start()
print("Number of enemies at new_game: ",enemy_count)
# Reset score.
Global.score = 0
$CanvasLayer/UI.update_score(Global.score)
EventBus.initialize_shieldbar.emit()
# instantiate the Player
instance = player.instantiate()
add_child(instance)
$Player.shader_active = false
$Player.start()
$CanvasLayer/UI.update_score(Global.score)
# Tell the shield to recharge.
EventBus.initialize_shieldbar.emit()
# Tell the enemies to spawn!
spawn_enemies()
# Tell the game we're playing.
playing = true
print("New game started!")
func _input(EventInput):
if EventInput.is_action_pressed("shoot") and playing == false:
print("Input detected!")
@ -79,7 +89,7 @@ func _on_start_pressed():
func win_game():
playing = false
game_over.show()
$Player._on_game_over()
$Player._on_player_victory()
await get_tree().create_timer(2).timeout
game_over.hide()
start_button.show()

View file

@ -9,7 +9,7 @@ signal damage_taken
@export var cooldown: float = 0.25
@export var bullet_scene : PackedScene
@export var max_shield: int = 10
var shield: int = 0:
var shield: int = 1:
set = set_shield
var can_shoot = false
@ -24,11 +24,11 @@ var clamp_shield = clamp(shield, 0, max_shield)
func _ready():
set_process(false)
print(shield)
$Ship.hide()
# start()
func start():
print(shield)
shader_active = false
$Ship.frame = 1
$Ship.show()
position = Vector2(screensize.x / 2, screensize.y)
@ -76,12 +76,14 @@ func set_shield(value: int):
EventBus.shield_changed.emit(max_shield, old_value, shield)
print("Shield set to:", shield)
if shield <= 0:
print("Shader deactivated!")
EventBus.player_died.emit()
set_process(false)
$Ship.hide()
$Explosion.show()
$Explosion/AnimationPlayer.play("explosion-one-shot")
await $Explosion/AnimationPlayer.animation_finished
shader_active = false
func _on_gun_cooldown_timeout() -> void:
can_shoot = true
@ -96,18 +98,20 @@ func _on_area_entered(area):
func _on_damage_taken() -> void:
# emit_signal("shield_ui")
shader_active = true
print("Shader active!")
$Ship.material.set_shader_parameter("toggle", 1.0)
await get_tree().create_timer(1).timeout
$Ship.material.set_shader_parameter("toggle", 0.0)
shader_active = false
print("Shader deactivated!")
func _on_game_over() -> void:
print("Game over!")
# set_process(false)
monitoring = false
func _on_player_victory() -> void:
print("Victory!")
set_process(false)
$Ship.frame = 1
await get_tree().create_timer(2).timeout
var tween = create_tween()
tween.tween_property(self, "position:y", 60 * -1, .25).set_ease(tween.EASE_IN)
await tween.finished
queue_free()