diff --git a/scenes/boss.gd b/scenes/boss.gd index 0537f35..261515d 100644 --- a/scenes/boss.gd +++ b/scenes/boss.gd @@ -149,11 +149,13 @@ func _on_ending(value: int): heart_broken = true horse_phase = false horse_phase_check() - print("Some hearts are too wild.") - $Heart.hide() $Heart.monitoring = false $Heart.monitorable = false + print("Some hearts are too wild.") + EventBus.heart_beat.emit(0) + await get_tree().create_timer(2).timeout EventBus.flash_screen.emit(.25) + $Heart.queue_free() $Sprite2D.frame = 4 await get_tree().create_timer(4).timeout EventBus.goose_talk.emit(4) diff --git a/scenes/boss.tscn b/scenes/boss.tscn index ff6cc55..d860113 100644 --- a/scenes/boss.tscn +++ b/scenes/boss.tscn @@ -257,12 +257,14 @@ one_shot = true [node name="Heart" type="Area2D" parent="." unique_id=1098254590 groups=["heart"]] position = Vector2(0, -71) +rotation = -0.006150021 script = ExtResource("7_qsl3t") [node name="Sprite2D" type="Sprite2D" parent="Heart" unique_id=520903474] texture = ExtResource("7_2cdgk") [node name="CollisionShape2D" type="CollisionShape2D" parent="Heart" unique_id=11221326] +visible = false position = Vector2(0.5, 0) shape = SubResource("RectangleShape2D_qsl3t") diff --git a/scenes/bullet.gd b/scenes/bullet.gd index f0acc5c..a073e29 100644 --- a/scenes/bullet.gd +++ b/scenes/bullet.gd @@ -84,6 +84,7 @@ func _on_area_entered(area: Area2D) -> void: if area.is_in_group("heart"): print("Heart hit!") EventBus.ending.emit(2) + queue_free() #area.hit_detection() diff --git a/scenes/heart.gd b/scenes/heart.gd index 1c163be..91aa8d2 100644 --- a/scenes/heart.gd +++ b/scenes/heart.gd @@ -4,4 +4,9 @@ func _ready() -> void: EventBus.heart_beat.connect(_on_heart_beat) func _on_heart_beat(tempo: float): - $AnimationPlayer.set_speed_scale(tempo) + if tempo == 0: + $AnimationPlayer.stop() + var tween = create_tween().set_trans(Tween.TRANS_LINEAR) + tween.tween_property(self, "modulate",Color(0,0,0), 2.5) + elif tempo > 0: + $AnimationPlayer.set_speed_scale(tempo) diff --git a/scenes/player.gd b/scenes/player.gd index e3a2f00..2539a92 100644 --- a/scenes/player.gd +++ b/scenes/player.gd @@ -136,6 +136,7 @@ func _on_area_entered(area): if can_win == true: print("You can win!") + EventBus.heart_beat.emit(2.5) area.reparent(self) EventBus.win_game.emit() diff --git a/sprites/heart.png b/sprites/heart.png index eb777e4..7d16ed2 100644 Binary files a/sprites/heart.png and b/sprites/heart.png differ