From 0f3fc12144709cf5f730273e1da82007e4964ad3 Mon Sep 17 00:00:00 2001 From: Chris Latham Date: Wed, 9 Sep 2020 16:07:08 +0100 Subject: [PATCH] implement transit instead of ad-hoc fades and improve singleton usage --- mobs/Spawner.gd | 3 +-- player/BonusMan.gd | 3 +-- player/Player.gd | 6 ++---- project.godot | 1 + states/About.tscn | 6 +----- states/Game.gd | 24 ++------------------- states/Game.tscn | 23 ++++---------------- states/GameEnd.gd | 21 +------------------ states/GameEnd.tscn | 17 +-------------- states/GameOver.gd | 34 +++++------------------------- states/GameOver.tscn | 13 +----------- states/Menu.gd | 37 ++------------------------------ states/Menu.tscn | 16 ++------------ transit/Transit.gd | 44 +++++++++++++++++++++++++++++++++++++++ transit/Transit.tscn | 42 +++++++++++++++++++++++++++++++++++++ ui/ScrapAmount.gd | 2 +- ui/about/About.gd | 6 ++++-- ui/game/UpgradeShop.gd | 8 +++---- ui/game_end/KillsLabel.gd | 4 +--- ui/game_end/Score.gd | 4 +--- ui/game_end/ScrapLabel.gd | 4 +--- weapons/Weapon.gd | 1 - 22 files changed, 121 insertions(+), 198 deletions(-) create mode 100644 transit/Transit.gd create mode 100644 transit/Transit.tscn diff --git a/mobs/Spawner.gd b/mobs/Spawner.gd index 8f5c427..2037ff6 100644 --- a/mobs/Spawner.gd +++ b/mobs/Spawner.gd @@ -17,7 +17,6 @@ onready var _spawn_points := get_children() onready var _player := get_node(player_path) onready var _upgrade_shop: CanvasItem = get_node(upgrade_shop_path) onready var _spawn_timer: Timer = get_node("../SpawnTimer") -onready var _score_tracker: ScoreTracker = get_node("/root/ScoreTracker") var _endless_mode := false var _wave_difficulty := 1 @@ -67,7 +66,7 @@ func _end_wave(): func _on_mob_death(): _died_this_wave += 1 - _score_tracker.add_mob_kill() + ScoreTracker.add_mob_kill() if not _endless_mode and _died_this_wave >= _max_mobs: _end_wave() diff --git a/player/BonusMan.gd b/player/BonusMan.gd index 807e079..50c0295 100644 --- a/player/BonusMan.gd +++ b/player/BonusMan.gd @@ -2,7 +2,6 @@ extends Node export var initial_bonus := 30 -onready var _wallet: Wallet = $"/root/Wallet" onready var _label: Label = $"../UI/Control/ScrapBonusBox/BonusLabel" onready var _timer: Timer = $Timer @@ -28,4 +27,4 @@ func _on_Spawner_wave_started(difficulty: int): func _on_Spawner_wave_ended(): _timer.stop() if _bonus > 0: - _wallet.add_scrap(_bonus) + Wallet.add_scrap(_bonus) diff --git a/player/Player.gd b/player/Player.gd index bcde9b2..2f79b2c 100644 --- a/player/Player.gd +++ b/player/Player.gd @@ -17,8 +17,6 @@ var _dead := false var _weapons_added := 0 onready var _health := max_health -onready var _wallet: Wallet = get_node("/root/Wallet") -onready var _score_tracker: ScoreTracker = get_node("/root/ScoreTracker") func hurt(damage: float): if _dead: @@ -121,8 +119,8 @@ func _process(dt: float): func _on_LootSuccArea_body_entered(body): if body is Scrap: body.succ(self) - _wallet.add_scrap(1) - _score_tracker.add_scrap_earned(1) + Wallet.add_scrap(1) + ScoreTracker.add_scrap_earned(1) func _on_UpgradeShop_upgrade_purchased(upgrade: Upgrade, _final: bool): _apply_upgrade(upgrade) diff --git a/project.godot b/project.godot index 29b0f20..ef66406 100644 --- a/project.godot +++ b/project.godot @@ -82,6 +82,7 @@ config/icon="res://icon.png" Wallet="*res://player/Wallet.gd" ScoreTracker="*res://player/ScoreTracker.gd" +Transit="*res://transit/Transit.tscn" [display] diff --git a/states/About.tscn b/states/About.tscn index eb79f74..7b0719b 100644 --- a/states/About.tscn +++ b/states/About.tscn @@ -1,7 +1,6 @@ -[gd_scene load_steps=5 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://ui/ui_theme.tres" type="Theme" id=1] -[ext_resource path="res://effects/Fadein.tscn" type="PackedScene" id=2] [ext_resource path="res://ui/about/About.gd" type="Script" id=3] [ext_resource path="res://ui/title_font.tres" type="DynamicFont" id=4] @@ -93,8 +92,5 @@ Copyright (c) 2020 backwardspy" __meta__ = { "_edit_use_anchors_": false } - -[node name="Fadein" parent="." instance=ExtResource( 2 )] -visible = false [connection signal="pressed" from="BackButton" to="." method="back_to_menu"] [connection signal="meta_clicked" from="AboutInfo" to="." method="_on_AboutInfo_meta_clicked"] diff --git a/states/Game.gd b/states/Game.gd index c081ef3..239c357 100644 --- a/states/Game.gd +++ b/states/Game.gd @@ -1,9 +1,5 @@ extends Node2D -onready var _score_tracker: ScoreTracker = get_node("/root/ScoreTracker") -onready var _blackout: ColorRect = $UI/Blackout -onready var _tween: Tween = $Tween - var _in_endless_wave := false func handle_player_death(): @@ -12,27 +8,11 @@ func handle_player_death(): func quit_to(scene: String): $MusicMan.fade_out() - - _blackout.visible = true - var _r := _tween.interpolate_property( - _blackout, - "color:a", - 0, - 1, - 3, - Tween.TRANS_LINEAR, - Tween.EASE_IN - ) - _r = _tween.start() - yield(_tween, "tween_all_completed") - - var err := get_tree().change_scene(scene) - if err: - push_error("failed to change to %s scene: %s" % [scene, err]) + Transit.change_scene(scene, 1.0) func _ready(): randomize() - get_node("/root/Wallet").empty() + Wallet.empty() func _on_Player_died(): call_deferred("handle_player_death") diff --git a/states/Game.tscn b/states/Game.tscn index 0ad4928..f80cc97 100644 --- a/states/Game.tscn +++ b/states/Game.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=27 format=2] +[gd_scene load_steps=26 format=2] [ext_resource path="res://player/Player.tscn" type="PackedScene" id=1] [ext_resource path="res://sprites.png" type="Texture" id=2] @@ -12,7 +12,6 @@ [ext_resource path="res://ui/game/UpgradeShop.tscn" type="PackedScene" id=10] [ext_resource path="res://ui/GameAnimations.gd" type="Script" id=11] [ext_resource path="res://tileset.tres" type="TileSet" id=12] -[ext_resource path="res://effects/Fadein.tscn" type="PackedScene" id=13] [ext_resource path="res://music/TremLoadingloopl.ogg" type="AudioStream" id=14] [ext_resource path="res://effects/MusicMan.gd" type="Script" id=15] [ext_resource path="res://upgrades/UpgradeManager.tscn" type="PackedScene" id=16] @@ -117,8 +116,6 @@ script = ExtResource( 5 ) [node name="WorldEnvironment" type="WorldEnvironment" parent="."] environment = SubResource( 1 ) -[node name="Tween" type="Tween" parent="."] - [node name="MusicMan" type="Node" parent="."] script = ExtResource( 15 ) @@ -319,27 +316,15 @@ upgrade_manager_path = NodePath("../../../UpgradeManager") [node name="PauseMenu" parent="UI/Control" instance=ExtResource( 18 )] pause_mode = 2 visible = false - -[node name="Blackout" type="ColorRect" parent="UI"] -visible = false -anchor_right = 1.0 -anchor_bottom = 1.0 -color = Color( 0, 0, 0, 0 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Fadein" parent="UI" instance=ExtResource( 13 )] -visible = false [connection signal="timeout" from="BonusMan/Timer" to="BonusMan" method="_on_Timer_timeout"] [connection signal="died" from="Player" to="." method="_on_Player_died"] [connection signal="health_changed" from="Player" to="UI/Control/HealthBar" method="_on_Player_health_changed"] -[connection signal="wave_ended" from="Spawner" to="MusicMan" method="to_idle"] [connection signal="wave_ended" from="Spawner" to="BonusMan" method="_on_Spawner_wave_ended"] +[connection signal="wave_ended" from="Spawner" to="MusicMan" method="to_idle"] +[connection signal="wave_started" from="Spawner" to="AnimationPlayer" method="_on_Spawner_wave_started"] [connection signal="wave_started" from="Spawner" to="." method="_on_Spawner_wave_started"] -[connection signal="wave_started" from="Spawner" to="MusicMan" method="to_battle"] [connection signal="wave_started" from="Spawner" to="BonusMan" method="_on_Spawner_wave_started"] -[connection signal="wave_started" from="Spawner" to="AnimationPlayer" method="_on_Spawner_wave_started"] +[connection signal="wave_started" from="Spawner" to="MusicMan" method="to_battle"] [connection signal="timeout" from="SpawnTimer" to="Spawner" method="spawn"] [connection signal="upgrade_purchased" from="UI/Control/UpgradeShop" to="Player" method="_on_UpgradeShop_upgrade_purchased"] [connection signal="upgrade_purchased" from="UI/Control/UpgradeShop" to="Spawner" method="_on_UpgradeShop_upgrade_purchased"] diff --git a/states/GameEnd.gd b/states/GameEnd.gd index aa7cdac..ab32cdd 100644 --- a/states/GameEnd.gd +++ b/states/GameEnd.gd @@ -1,26 +1,7 @@ extends Control -onready var _tween: Tween = $Tween -onready var _blackout: ColorRect = $Blackout - func _on_RichTextLabel_meta_clicked(meta: String): OS.shell_open(meta) func _on_MenuButton_pressed(): - focus_mode = Control.FOCUS_NONE - _blackout.visible = true - _tween.interpolate_property( - _blackout, - "color:a", - 0, - 1, - 3, - Tween.TRANS_LINEAR, - Tween.EASE_IN - ) - _tween.start() - yield(_tween, "tween_all_completed") - - var err := get_tree().change_scene("res://states/Menu.tscn") - if err: - push_error("failed to change to menu scene: %s" % err) + Transit.change_scene("res://states/Menu.tscn", 1.0) diff --git a/states/GameEnd.tscn b/states/GameEnd.tscn index bc960dd..3da45af 100644 --- a/states/GameEnd.tscn +++ b/states/GameEnd.tscn @@ -1,9 +1,8 @@ -[gd_scene load_steps=8 format=2] +[gd_scene load_steps=7 format=2] [ext_resource path="res://ui/ui_theme.tres" type="Theme" id=1] [ext_resource path="res://ui/title_font.tres" type="DynamicFont" id=2] [ext_resource path="res://states/GameEnd.gd" type="Script" id=3] -[ext_resource path="res://effects/Fadein.tscn" type="PackedScene" id=4] [ext_resource path="res://ui/game_end/ScrapLabel.gd" type="Script" id=5] [ext_resource path="res://ui/game_end/KillsLabel.gd" type="Script" id=6] [ext_resource path="res://ui/game_end/Score.gd" type="Script" id=7] @@ -20,8 +19,6 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="Tween" type="Tween" parent="."] - [node name="GameTextBox" type="VBoxContainer" parent="."] anchor_left = 0.5 anchor_right = 0.5 @@ -120,17 +117,5 @@ text = "Return to Menu" __meta__ = { "_edit_use_anchors_": false } - -[node name="Fadein" parent="." instance=ExtResource( 4 )] -visible = false - -[node name="Blackout" type="ColorRect" parent="."] -visible = false -anchor_right = 1.0 -anchor_bottom = 1.0 -color = Color( 0, 0, 0, 0 ) -__meta__ = { -"_edit_use_anchors_": false -} [connection signal="meta_clicked" from="MetaTextBox/RichTextLabel" to="." method="_on_RichTextLabel_meta_clicked"] [connection signal="pressed" from="MenuButton" to="." method="_on_MenuButton_pressed"] diff --git a/states/GameOver.gd b/states/GameOver.gd index 1370634..e72a1b2 100644 --- a/states/GameOver.gd +++ b/states/GameOver.gd @@ -1,36 +1,12 @@ extends Control -onready var _tween: Tween = $Tween - -func _fade_to_scene(path: String): - focus_mode = Control.FOCUS_NONE - - $Blackout.visible = true - - var _r := _tween.interpolate_property( - $Blackout, - "color:a", - 0, - 1, - 0.5, - Tween.TRANS_LINEAR, - Tween.EASE_OUT - ) - - _r = _tween.start() - yield(_tween, "tween_all_completed") - var err := get_tree().change_scene(path) - if err: - push_error("failed to change scene to %s: %s" % [path, err]) - func retry(): - _fade_to_scene("res://states/Game.tscn") + Transit.change_scene("res://states/Game.tscn", 1.0) func menu(): - _fade_to_scene("res://states/Menu.tscn") + Transit.change_scene("res://states/Menu.tscn", 1.0) func _ready(): - var scores: ScoreTracker = get_node("/root/ScoreTracker") - $ControlsBox/ScrapEarned.text = "You earned %s Scrap" % scores.get_scrap_earned() - $ControlsBox/MobsKilled.text = "You killed %s drones" % scores.get_mobs_killed() - $ControlsBox/Score.text = "Score: %s" % scores.calculate_score() + $ControlsBox/ScrapEarned.text = "You earned %s Scrap" % ScoreTracker.get_scrap_earned() + $ControlsBox/MobsKilled.text = "You killed %s drones" % ScoreTracker.get_mobs_killed() + $ControlsBox/Score.text = "Score: %s" % ScoreTracker.calculate_score() diff --git a/states/GameOver.tscn b/states/GameOver.tscn index 733b47c..6b5d538 100644 --- a/states/GameOver.tscn +++ b/states/GameOver.tscn @@ -1,9 +1,8 @@ -[gd_scene load_steps=5 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://states/GameOver.gd" type="Script" id=1] [ext_resource path="res://ui/ui_theme.tres" type="Theme" id=2] [ext_resource path="res://ui/title_font.tres" type="DynamicFont" id=3] -[ext_resource path="res://effects/Fadein.tscn" type="PackedScene" id=4] [node name="Root" type="Control"] anchor_right = 1.0 @@ -17,8 +16,6 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="Tween" type="Tween" parent="."] - [node name="ControlsBox" type="VBoxContainer" parent="."] anchor_left = 0.5 anchor_top = 0.5 @@ -74,13 +71,5 @@ text = "Menu" __meta__ = { "_edit_use_anchors_": false } - -[node name="Fadein" parent="." instance=ExtResource( 4 )] - -[node name="Blackout" type="ColorRect" parent="."] -visible = false -anchor_right = 1.0 -anchor_bottom = 1.0 -color = Color( 0, 0, 0, 0 ) [connection signal="pressed" from="ControlsBox/Retry" to="." method="retry"] [connection signal="pressed" from="ControlsBox/QuitToMenu" to="." method="menu"] diff --git a/states/Menu.gd b/states/Menu.gd index 7a0ae2f..13b02d3 100644 --- a/states/Menu.gd +++ b/states/Menu.gd @@ -1,43 +1,10 @@ extends Control -onready var _tween := $Tween - -func fade_to_scene(path: String): - focus_mode = Control.FOCUS_NONE - - $Blackout.visible = true - - _tween.interpolate_property( - $Blackout, - "color:a", - 0, - 1, - 0.5, - Tween.TRANS_LINEAR, - Tween.EASE_OUT - ) - - _tween.interpolate_property( - $AudioStreamPlayer, - "volume_db", - 0, - -80, - 0.5, - Tween.TRANS_LINEAR, - Tween.EASE_IN - ) - - _tween.start() - yield(_tween, "tween_all_completed") - var err = get_tree().change_scene(path) - if err: - push_error("failed to load scene %s: %s" % [path, err]) - func start_game(): - fade_to_scene("res://states/Game.tscn") + Transit.change_scene("res://states/Game.tscn", 1.0) func about(): - fade_to_scene("res://states/About.tscn") + Transit.change_scene("res://states/About.tscn") func quit_game(): get_tree().quit() diff --git a/states/Menu.tscn b/states/Menu.tscn index 1dba87d..100d1c0 100644 --- a/states/Menu.tscn +++ b/states/Menu.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=15 format=2] +[gd_scene load_steps=14 format=2] [ext_resource path="res://states/Menu.gd" type="Script" id=1] [ext_resource path="res://ui/ui_theme.tres" type="Theme" id=2] @@ -12,7 +12,6 @@ [ext_resource path="res://ui/menu/TitleBob.gd" type="Script" id=10] [ext_resource path="res://music/Factory.ogg" type="AudioStream" id=11] [ext_resource path="res://tileset.tres" type="TileSet" id=12] -[ext_resource path="res://effects/Fadein.tscn" type="PackedScene" id=13] [ext_resource path="res://ui/question_mark.png" type="Texture" id=14] [node name="Root" type="Control"] @@ -31,8 +30,6 @@ __meta__ = { stream = ExtResource( 11 ) autoplay = true -[node name="Tween" type="Tween" parent="."] - [node name="TileMap" type="TileMap" parent="."] tile_set = ExtResource( 12 ) cell_size = Vector2( 16, 16 ) @@ -143,16 +140,7 @@ flat = true __meta__ = { "_edit_use_anchors_": false } - -[node name="Blackout" type="ColorRect" parent="."] -visible = false -anchor_right = 1.0 -anchor_bottom = 1.0 -color = Color( 0, 0, 0, 0 ) - -[node name="Fadein" parent="." instance=ExtResource( 13 )] -visible = false [connection signal="pressed" from="Buttons/StartGame" to="." method="start_game"] -[connection signal="pressed" from="Buttons/QuitGame" to="." method="quit_game"] [connection signal="pressed" from="Buttons/QuitGame" to="." method="start_game"] +[connection signal="pressed" from="Buttons/QuitGame" to="." method="quit_game"] [connection signal="pressed" from="About" to="." method="about"] diff --git a/transit/Transit.gd b/transit/Transit.gd new file mode 100644 index 0000000..03003b0 --- /dev/null +++ b/transit/Transit.gd @@ -0,0 +1,44 @@ +extends Control + +signal scene_changed + +const DEFAULT_DURATION := 0.2 +const DEFAULT_DELAY := 0.0 + +onready var _animator := $AnimationPlayer +onready var _curtain := $CanvasLayer/ColorRect + +func set_color(color: Color): + color.a = _curtain.color.a + _curtain.color = color + +func change_scene(path: String, duration: float = DEFAULT_DURATION, delay: float = DEFAULT_DELAY): + if duration <= 0.0: + push_error("TRANSIT ERROR: change_scene duration must be > 0. Defaulting to %s" % DEFAULT_DURATION) + duration = DEFAULT_DURATION + + if delay < 0.0: + push_error("TRANSIT ERROR: change_scene delay must be >= 0. Defaulting to %s" % DEFAULT_DELAY) + delay = DEFAULT_DELAY + + # disable mouse interaction while fading out + _curtain.mouse_filter = MOUSE_FILTER_STOP + + if delay > 0: + yield(get_tree().create_timer(delay), "timeout") + + _animator.playback_speed = 1.0 / duration + _animator.play("fade") + yield(_animator, "animation_finished") + + var err := get_tree().change_scene(path) + if err: + push_error("TRANSIT ERROR: Failed to change scene to %s: %s" % [path, err]) + + # re-enable mouse interaction before fading back in + _curtain.mouse_filter = MOUSE_FILTER_IGNORE + + _animator.play_backwards("fade") + yield(_animator, "animation_finished") + + emit_signal("scene_changed") diff --git a/transit/Transit.tscn b/transit/Transit.tscn new file mode 100644 index 0000000..798d0d3 --- /dev/null +++ b/transit/Transit.tscn @@ -0,0 +1,42 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://transit/Transit.gd" type="Script" id=1] + +[sub_resource type="Animation" id=1] +resource_name = "fade" +step = 0.2 +tracks/0/type = "value" +tracks/0/path = NodePath("CanvasLayer/ColorRect:color:a") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 1 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ 0.0, 1.0 ] +} + +[node name="Transit" type="Control"] +anchor_right = 1.0 +anchor_bottom = 1.0 +script = ExtResource( 1 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +anims/fade = SubResource( 1 ) + +[node name="CanvasLayer" type="CanvasLayer" parent="."] +layer = 128 + +[node name="ColorRect" type="ColorRect" parent="CanvasLayer"] +anchor_right = 1.0 +anchor_bottom = 1.0 +mouse_filter = 2 +color = Color( 0, 0, 0, 0 ) +__meta__ = { +"_edit_use_anchors_": false +} diff --git a/ui/ScrapAmount.gd b/ui/ScrapAmount.gd index 2e31bb2..dafc1c3 100644 --- a/ui/ScrapAmount.gd +++ b/ui/ScrapAmount.gd @@ -4,6 +4,6 @@ func _on_scrap_changed(amount: int): text = "x %s" % amount func _ready(): - var err := get_node("/root/Wallet").connect("scrap_changed", self, "_on_scrap_changed") + var err := Wallet.connect("scrap_changed", self, "_on_scrap_changed") if err: push_error("failed to connect wallet scrap_changed signal: %s" % err) diff --git a/ui/about/About.gd b/ui/about/About.gd index 4b28230..60b3611 100644 --- a/ui/about/About.gd +++ b/ui/about/About.gd @@ -1,7 +1,9 @@ extends Control func back_to_menu(): - get_tree().change_scene("res://states/Menu.tscn") + Transit.change_scene("res://states/Menu.tscn") func _on_AboutInfo_meta_clicked(meta): - OS.shell_open(meta) + var err := OS.shell_open(meta) + if err: + push_error("Failed to open %s: %s" % [meta, err]) diff --git a/ui/game/UpgradeShop.gd b/ui/game/UpgradeShop.gd index b150063..d03fdbf 100644 --- a/ui/game/UpgradeShop.gd +++ b/ui/game/UpgradeShop.gd @@ -6,8 +6,6 @@ signal wave_repeated export(NodePath) var upgrade_manager_path: NodePath onready var _upgrade_man: UpgradeManager = get_node(upgrade_manager_path) -onready var _wallet: Wallet = get_node("/root/Wallet") - const upgrade_button_scene = preload("res://ui/game/UpgradeButton.tscn") # track which upgrades have been bought to allow for requirements validation @@ -23,7 +21,7 @@ func _on_Repeat_pressed(): emit_signal("wave_repeated") func _on_upgrade_chosen(upgrade: Upgrade): - if not _wallet.try_remove_scrap(upgrade.price): + if not Wallet.try_remove_scrap(upgrade.price): return # TODO: some sort of notification/sound effect? _bought_slugs.append(upgrade.slug) @@ -42,9 +40,9 @@ func show(): var reqs_met := _requirements_met(upgrade) var b: UpgradeButton = upgrade_button_scene.instance() - b.apply_upgrade(upgrade, _wallet.get_balance(), reqs_met) + b.apply_upgrade(upgrade, Wallet.get_balance(), reqs_met) - var err := _wallet.connect("scrap_changed", b, "check_scrap_adequacy") + var err := Wallet.connect("scrap_changed", b, "check_scrap_adequacy") if err: push_error("failed to connect wallet scrap_changed signal: %s" % err) return diff --git a/ui/game_end/KillsLabel.gd b/ui/game_end/KillsLabel.gd index 6f57c32..ea37999 100644 --- a/ui/game_end/KillsLabel.gd +++ b/ui/game_end/KillsLabel.gd @@ -1,6 +1,4 @@ extends Label -onready var _score: ScoreTracker = get_node("/root/ScoreTracker") - func _ready(): - text = "You killed %s drones" % _score.get_mobs_killed() + text = "You killed %s drones" % ScoreTracker.get_mobs_killed() diff --git a/ui/game_end/Score.gd b/ui/game_end/Score.gd index 2a59ed0..33ba11f 100644 --- a/ui/game_end/Score.gd +++ b/ui/game_end/Score.gd @@ -1,6 +1,4 @@ extends Label -onready var _score: ScoreTracker = get_node("/root/ScoreTracker") - func _ready(): - text = "Score: %s" % _score.calculate_score() + text = "Score: %s" % ScoreTracker.calculate_score() diff --git a/ui/game_end/ScrapLabel.gd b/ui/game_end/ScrapLabel.gd index 27266c1..0cedaaf 100644 --- a/ui/game_end/ScrapLabel.gd +++ b/ui/game_end/ScrapLabel.gd @@ -1,6 +1,4 @@ extends Label -onready var _score: ScoreTracker = get_node("/root/ScoreTracker") - func _ready(): - text = "You earned %s Scrap" % _score.get_scrap_earned() + text = "You earned %s Scrap" % ScoreTracker.get_scrap_earned() diff --git a/weapons/Weapon.gd b/weapons/Weapon.gd index 47630ad..04ca6c7 100644 --- a/weapons/Weapon.gd +++ b/weapons/Weapon.gd @@ -9,7 +9,6 @@ export var reduces_volume_on_add := false onready var _timer := $FireTimer func reduce_volume(times: int = 1): - var old_vol: float = $AudioPlayer.volume_db $AudioPlayer.volume_db -= 3.0 * times func fire():