Skip to content

Commit

Permalink
Merge pull request #111 from nezvers/player_spawn_and_rooms
Browse files Browse the repository at this point in the history
persistent score
  • Loading branch information
nezvers authored Oct 29, 2024
2 parents 1eefe16 + bab5943 commit 2fbcb24
Show file tree
Hide file tree
Showing 5 changed files with 53 additions and 6 deletions.
12 changes: 10 additions & 2 deletions addons/top_down/scenes/actors/player.tscn
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[gd_scene load_steps=55 format=3 uid="uid://bmp0g88dtijqw"]
[gd_scene load_steps=57 format=3 uid="uid://bmp0g88dtijqw"]

[ext_resource type="PackedScene" uid="uid://botai66n8rwt3" path="res://addons/top_down/scenes/actors/actor.tscn" id="1_mvls6"]
[ext_resource type="Script" path="res://addons/great_games_library/nodes/ResourceNode/ResourceNodeItem.gd" id="2_20qkb"]
Expand All @@ -11,6 +11,7 @@
[ext_resource type="PackedScene" uid="uid://bxf4p5yoajpdu" path="res://addons/top_down/scenes/weapons/gun.tscn" id="6_rnlhu"]
[ext_resource type="Resource" uid="uid://bgdeqbafv3q4r" path="res://addons/top_down/resources/sounds/kill_player.tres" id="6_wov6i"]
[ext_resource type="Script" path="res://addons/top_down/scripts/actor/InputResource.gd" id="7_sciut"]
[ext_resource type="Resource" uid="uid://5emqdks7qgbm" path="res://addons/top_down/resources/global_resources/score_resource.tres" id="8_icjqh"]
[ext_resource type="PackedScene" uid="uid://csjmqrrduxorv" path="res://addons/top_down/scenes/vfx/player_dead.tscn" id="8_s8ofx"]
[ext_resource type="Script" path="res://addons/top_down/scripts/weapon_system/WeaponManager.gd" id="9_hpc12"]
[ext_resource type="PackedScene" uid="uid://baisjmcsnk3on" path="res://addons/top_down/scenes/weapons/zombie_attack.tscn" id="10_x7xjs"]
Expand Down Expand Up @@ -131,6 +132,13 @@ make_unique = true
description = "Used to control actors movement by it's input node.
"

[sub_resource type="Resource" id="Resource_or6sa"]
resource_name = "score"
script = ExtResource("2_20qkb")
resource = ExtResource("8_icjqh")
make_unique = false
description = ""

[sub_resource type="ShaderMaterial" id="ShaderMaterial_gfelk"]
resource_local_to_scene = true
shader = ExtResource("2_wcwdo")
Expand Down Expand Up @@ -266,7 +274,7 @@ collision_layer = 2
collision_mask = 5

[node name="ResourceNode" parent="." index="0"]
list = Array[ExtResource("2_20qkb")]([SubResource("Resource_y1d7o"), SubResource("Resource_3g443"), SubResource("Resource_8pyxd"), SubResource("Resource_ltyge"), SubResource("Resource_dsnfh"), SubResource("Resource_j3dss"), SubResource("Resource_ju227")])
list = Array[ExtResource("2_20qkb")]([SubResource("Resource_y1d7o"), SubResource("Resource_3g443"), SubResource("Resource_8pyxd"), SubResource("Resource_ltyge"), SubResource("Resource_dsnfh"), SubResource("Resource_j3dss"), SubResource("Resource_ju227"), SubResource("Resource_or6sa")])

[node name="AreaReceiver2D" parent="." index="2"]
collision_layer = 2
Expand Down
29 changes: 27 additions & 2 deletions addons/top_down/scenes/ui/screens/game_over.tscn
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
[gd_scene load_steps=5 format=3 uid="uid://8bb4nowy77nt"]
[gd_scene load_steps=7 format=3 uid="uid://8bb4nowy77nt"]

[ext_resource type="Theme" uid="uid://yctjuhnen1br" path="res://addons/top_down/resources/theme/game_gui_theme.theme" id="1_134lv"]
[ext_resource type="Resource" uid="uid://5emqdks7qgbm" path="res://addons/top_down/resources/global_resources/score_resource.tres" id="3_qjp3e"]
[ext_resource type="Script" path="res://addons/top_down/scripts/ui/game_over_screen/score_component.gd" id="4_0xj0i"]
[ext_resource type="Script" path="res://addons/top_down/scripts/game/MusicSetter.gd" id="4_wi5q1"]
[ext_resource type="Script" path="res://addons/top_down/scripts/ui/title_screen/ChangeSceneButton.gd" id="9_ldwnv"]
[ext_resource type="PackedScene" uid="uid://b3ww0jqqy1eq7" path="res://addons/top_down/scenes/ui/menu_button.tscn" id="10_djt0l"]
Expand Down Expand Up @@ -28,6 +30,12 @@ scene_path = "res://addons/top_down/scenes/ui/screens/title.tscn"
script = ExtResource("4_wi5q1")
music_name = "game_over"

[node name="ScoreComponent" type="Node" parent="." node_paths=PackedStringArray("score_label", "try_again_button")]
script = ExtResource("4_0xj0i")
score_resource = ExtResource("3_qjp3e")
score_label = NodePath("../MarginContainer/Control/Header/ScoreLabel")
try_again_button = NodePath("../MarginContainer/Control/Body/Menu/TryAgain/Button")

[node name="MarginContainer" type="MarginContainer" parent="."]
layout_mode = 1
anchors_preset = 15
Expand All @@ -48,7 +56,7 @@ layout_mode = 2
size_flags_vertical = 3
size_flags_stretch_ratio = 2.0

[node name="Label" type="Label" parent="MarginContainer/Control/Header"]
[node name="TitleLabel" type="Label" parent="MarginContainer/Control/Header"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
Expand All @@ -65,6 +73,23 @@ theme_override_font_sizes/font_size = 16
text = "Game Over"
horizontal_alignment = 1

[node name="ScoreLabel" type="Label" parent="MarginContainer/Control/Header"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -47.0
offset_top = 44.0
offset_right = 48.0
offset_bottom = 67.0
grow_horizontal = 2
grow_vertical = 2
theme_override_font_sizes/font_size = 16
text = "Score: 69"
horizontal_alignment = 1

[node name="Body" type="MarginContainer" parent="MarginContainer/Control"]
layout_mode = 2
size_flags_vertical = 3
Expand Down
1 change: 0 additions & 1 deletion addons/top_down/scripts/ui/InfoTracker.gd
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ extends Node


func _ready()->void:
score_resource.point_count = 0
score_resource.points_updated.connect(update_score_label)
update_score_label()

Expand Down
5 changes: 4 additions & 1 deletion addons/top_down/scripts/ui/ScoreResource.gd
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
class_name ScoreResource
extends Resource
extends SaveableResource

signal points_updated

@export var point_count:int = 0

func reset_resource()->void:
point_count = 0

func add_point()->void:
point_count += 1
points_updated.emit()
12 changes: 12 additions & 0 deletions addons/top_down/scripts/ui/game_over_screen/score_component.gd
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
extends Node

@export var score_resource:ScoreResource
@export var score_label:Label
@export var try_again_button:Button

func _ready()->void:
try_again_button.pressed.connect(on_try_again_pressed)
score_label.text = "Score: " + str(score_resource.point_count)

func on_try_again_pressed()->void:
score_resource.reset_resource()

0 comments on commit 2fbcb24

Please sign in to comment.