Commented main game's functionality to better track what's happening.
This commit is contained in:
parent
aa7cdc90d6
commit
be3919acd7
2 changed files with 29 additions and 15 deletions
26
main.gd
26
main.gd
|
|
@ -17,7 +17,7 @@ func _ready():
|
||||||
|
|
||||||
|
|
||||||
func spawn_enemies():
|
func spawn_enemies():
|
||||||
|
get_tree().call_group("enemies", "queue_free")
|
||||||
for x in range(9):
|
for x in range(9):
|
||||||
for y in range(3):
|
for y in range(3):
|
||||||
var e = enemy.instantiate()
|
var e = enemy.instantiate()
|
||||||
|
|
@ -25,7 +25,7 @@ func spawn_enemies():
|
||||||
add_child(e)
|
add_child(e)
|
||||||
e.start(pos)
|
e.start(pos)
|
||||||
enemy_count = get_tree().get_nodes_in_group("enemies").size()
|
enemy_count = get_tree().get_nodes_in_group("enemies").size()
|
||||||
print(enemy_count)
|
print("Remaining enemies: ", enemy_count)
|
||||||
|
|
||||||
|
|
||||||
func _on_enemy_died(value: int):
|
func _on_enemy_died(value: int):
|
||||||
|
|
@ -41,6 +41,7 @@ func _on_player_died():
|
||||||
# get_tree().call_group("enemies", "queue_free")
|
# get_tree().call_group("enemies", "queue_free")
|
||||||
EventBus.enemy_win.emit()
|
EventBus.enemy_win.emit()
|
||||||
# $Player.set_process(false)
|
# $Player.set_process(false)
|
||||||
|
# get_tree().call_group("enemies", "set_process", false)
|
||||||
instance.queue_free()
|
instance.queue_free()
|
||||||
game_over.show()
|
game_over.show()
|
||||||
await get_tree().create_timer(2).timeout
|
await get_tree().create_timer(2).timeout
|
||||||
|
|
@ -49,23 +50,32 @@ func _on_player_died():
|
||||||
playing = false
|
playing = false
|
||||||
|
|
||||||
func new_game():
|
func new_game():
|
||||||
|
# Ensure enemies are cleared.
|
||||||
|
enemy_count = 0
|
||||||
get_tree().call_group("enemies", "queue_free")
|
get_tree().call_group("enemies", "queue_free")
|
||||||
get_tree().call_group("enemy_bullets", "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
|
Global.score = 0
|
||||||
$CanvasLayer/UI.update_score(Global.score)
|
$CanvasLayer/UI.update_score(Global.score)
|
||||||
EventBus.initialize_shieldbar.emit()
|
|
||||||
|
# instantiate the Player
|
||||||
instance = player.instantiate()
|
instance = player.instantiate()
|
||||||
add_child(instance)
|
add_child(instance)
|
||||||
$Player.shader_active = false
|
|
||||||
$Player.start()
|
$Player.start()
|
||||||
$CanvasLayer/UI.update_score(Global.score)
|
|
||||||
|
# Tell the shield to recharge.
|
||||||
|
EventBus.initialize_shieldbar.emit()
|
||||||
|
|
||||||
|
# Tell the enemies to spawn!
|
||||||
spawn_enemies()
|
spawn_enemies()
|
||||||
|
|
||||||
|
# Tell the game we're playing.
|
||||||
playing = true
|
playing = true
|
||||||
print("New game started!")
|
print("New game started!")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
func _input(EventInput):
|
func _input(EventInput):
|
||||||
if EventInput.is_action_pressed("shoot") and playing == false:
|
if EventInput.is_action_pressed("shoot") and playing == false:
|
||||||
print("Input detected!")
|
print("Input detected!")
|
||||||
|
|
@ -79,7 +89,7 @@ func _on_start_pressed():
|
||||||
func win_game():
|
func win_game():
|
||||||
playing = false
|
playing = false
|
||||||
game_over.show()
|
game_over.show()
|
||||||
$Player._on_game_over()
|
$Player._on_player_victory()
|
||||||
await get_tree().create_timer(2).timeout
|
await get_tree().create_timer(2).timeout
|
||||||
game_over.hide()
|
game_over.hide()
|
||||||
start_button.show()
|
start_button.show()
|
||||||
|
|
|
||||||
18
player.gd
18
player.gd
|
|
@ -9,7 +9,7 @@ signal damage_taken
|
||||||
@export var cooldown: float = 0.25
|
@export var cooldown: float = 0.25
|
||||||
@export var bullet_scene : PackedScene
|
@export var bullet_scene : PackedScene
|
||||||
@export var max_shield: int = 10
|
@export var max_shield: int = 10
|
||||||
var shield: int = 0:
|
var shield: int = 1:
|
||||||
set = set_shield
|
set = set_shield
|
||||||
|
|
||||||
var can_shoot = false
|
var can_shoot = false
|
||||||
|
|
@ -24,11 +24,11 @@ var clamp_shield = clamp(shield, 0, max_shield)
|
||||||
func _ready():
|
func _ready():
|
||||||
set_process(false)
|
set_process(false)
|
||||||
print(shield)
|
print(shield)
|
||||||
$Ship.hide()
|
|
||||||
# start()
|
# start()
|
||||||
|
|
||||||
func start():
|
func start():
|
||||||
print(shield)
|
print(shield)
|
||||||
|
shader_active = false
|
||||||
$Ship.frame = 1
|
$Ship.frame = 1
|
||||||
$Ship.show()
|
$Ship.show()
|
||||||
position = Vector2(screensize.x / 2, screensize.y)
|
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)
|
EventBus.shield_changed.emit(max_shield, old_value, shield)
|
||||||
print("Shield set to:", shield)
|
print("Shield set to:", shield)
|
||||||
if shield <= 0:
|
if shield <= 0:
|
||||||
|
print("Shader deactivated!")
|
||||||
EventBus.player_died.emit()
|
EventBus.player_died.emit()
|
||||||
set_process(false)
|
set_process(false)
|
||||||
$Ship.hide()
|
$Ship.hide()
|
||||||
$Explosion.show()
|
$Explosion.show()
|
||||||
$Explosion/AnimationPlayer.play("explosion-one-shot")
|
$Explosion/AnimationPlayer.play("explosion-one-shot")
|
||||||
await $Explosion/AnimationPlayer.animation_finished
|
await $Explosion/AnimationPlayer.animation_finished
|
||||||
|
shader_active = false
|
||||||
|
|
||||||
func _on_gun_cooldown_timeout() -> void:
|
func _on_gun_cooldown_timeout() -> void:
|
||||||
can_shoot = true
|
can_shoot = true
|
||||||
|
|
@ -96,18 +98,20 @@ func _on_area_entered(area):
|
||||||
|
|
||||||
|
|
||||||
func _on_damage_taken() -> void:
|
func _on_damage_taken() -> void:
|
||||||
# emit_signal("shield_ui")
|
|
||||||
shader_active = true
|
shader_active = true
|
||||||
|
print("Shader active!")
|
||||||
$Ship.material.set_shader_parameter("toggle", 1.0)
|
$Ship.material.set_shader_parameter("toggle", 1.0)
|
||||||
await get_tree().create_timer(1).timeout
|
await get_tree().create_timer(1).timeout
|
||||||
$Ship.material.set_shader_parameter("toggle", 0.0)
|
$Ship.material.set_shader_parameter("toggle", 0.0)
|
||||||
shader_active = false
|
shader_active = false
|
||||||
|
print("Shader deactivated!")
|
||||||
|
|
||||||
func _on_game_over() -> void:
|
func _on_player_victory() -> void:
|
||||||
print("Game over!")
|
print("Victory!")
|
||||||
# set_process(false)
|
set_process(false)
|
||||||
monitoring = false
|
|
||||||
$Ship.frame = 1
|
$Ship.frame = 1
|
||||||
await get_tree().create_timer(2).timeout
|
await get_tree().create_timer(2).timeout
|
||||||
var tween = create_tween()
|
var tween = create_tween()
|
||||||
tween.tween_property(self, "position:y", 60 * -1, .25).set_ease(tween.EASE_IN)
|
tween.tween_property(self, "position:y", 60 * -1, .25).set_ease(tween.EASE_IN)
|
||||||
|
await tween.finished
|
||||||
|
queue_free()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue