Add level progression and UI updates; implement death screen and marketplace features
This commit is contained in:
@@ -6,5 +6,4 @@
|
||||
|
||||
[node name="Background Music" type="AudioStreamPlayer" parent="."]
|
||||
stream = ExtResource("1_fuc3i")
|
||||
autoplay = true
|
||||
parameters/looping = true
|
||||
|
47
objects/entities/collapsing_block.tscn
Normal file
47
objects/entities/collapsing_block.tscn
Normal file
@@ -0,0 +1,47 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://c40r76qqacqie"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://cw42lvnqxubq2" path="res://sprites/PS_Tileset_10_nes.png" id="1_jmsgb"]
|
||||
[ext_resource type="Script" uid="uid://r0a6xjicrh74" path="res://scripts/components/collapsable.gd" id="2_cs5vh"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_l44jt"]
|
||||
size = Vector2(16, 16)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_sfbe2"]
|
||||
size = Vector2(16, 2)
|
||||
|
||||
[node name="Collapsing Block" type="StaticBody2D"]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||
texture = ExtResource("1_jmsgb")
|
||||
hframes = 16
|
||||
vframes = 12
|
||||
frame = 182
|
||||
|
||||
[node name="StaticCollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("RectangleShape2D_l44jt")
|
||||
|
||||
[node name="Collapsable detector" type="Area2D" parent="."]
|
||||
collision_mask = 4
|
||||
|
||||
[node name="AreaCollisionShape2D" type="CollisionShape2D" parent="Collapsable detector"]
|
||||
position = Vector2(0, -8)
|
||||
shape = SubResource("RectangleShape2D_sfbe2")
|
||||
|
||||
[node name="ToCollapseTimer" type="Timer" parent="."]
|
||||
wait_time = 0.5
|
||||
|
||||
[node name="ResetTimer" type="Timer" parent="."]
|
||||
|
||||
[node name="CollapsableComponent" type="Node" parent="." node_paths=PackedStringArray("to_collapse_timer", "reset_timer", "sprite2d", "collision_shape")]
|
||||
script = ExtResource("2_cs5vh")
|
||||
to_collapse_timer = NodePath("../ToCollapseTimer")
|
||||
reset_timer = NodePath("../ResetTimer")
|
||||
sprite2d = NodePath("../Sprite2D")
|
||||
collision_shape = NodePath("../StaticCollisionShape2D")
|
||||
collapse_time = 0.75
|
||||
reset_time = 3.0
|
||||
|
||||
[connection signal="body_entered" from="Collapsable detector" to="CollapsableComponent" method="_on_collapsable_detector_body_entered"]
|
||||
[connection signal="body_exited" from="Collapsable detector" to="CollapsableComponent" method="_on_collapsable_detector_body_exited"]
|
||||
[connection signal="timeout" from="ToCollapseTimer" to="CollapsableComponent" method="_on_to_collapse_timer_timeout"]
|
||||
[connection signal="timeout" from="ResetTimer" to="CollapsableComponent" method="_on_reset_timer_timeout"]
|
@@ -11,7 +11,7 @@ size = Vector2(16, 2)
|
||||
|
||||
[node name="Collapsing Bridge" type="StaticBody2D"]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
[node name="StaticCollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
position = Vector2(0, -6)
|
||||
shape = SubResource("RectangleShape2D_l44jt")
|
||||
one_way_collision = true
|
||||
@@ -25,7 +25,7 @@ frame = 56
|
||||
[node name="Collapsable detector" type="Area2D" parent="."]
|
||||
collision_mask = 4
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Collapsable detector"]
|
||||
[node name="AreaCollisionShape2D" type="CollisionShape2D" parent="Collapsable detector"]
|
||||
position = Vector2(0, -8)
|
||||
shape = SubResource("RectangleShape2D_sfbe2")
|
||||
|
||||
@@ -39,7 +39,7 @@ script = ExtResource("2_3vvum")
|
||||
to_collapse_timer = NodePath("../ToCollapseTimer")
|
||||
reset_timer = NodePath("../ResetTimer")
|
||||
sprite2d = NodePath("../Sprite2D")
|
||||
collision_shape = NodePath("../CollisionShape2D")
|
||||
collision_shape = NodePath("../StaticCollisionShape2D")
|
||||
collapse_time = 0.75
|
||||
reset_time = 3.0
|
||||
|
||||
|
@@ -1,11 +1,12 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://b4eifkc31jsun"]
|
||||
[gd_scene load_steps=4 format=3 uid="uid://b4eifkc31jsun"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dd30bgqiagi25" path="res://scripts/game_manager.gd" id="1_58t7u"]
|
||||
[ext_resource type="PackedScene" uid="uid://h60obxmju6mo" path="res://scenes/level_village_1.tscn" id="2_bentb"]
|
||||
[ext_resource type="PackedScene" uid="uid://chqb11pfoqmeb" path="res://scenes/level_village_2.tscn" id="3_ajlkg"]
|
||||
|
||||
[node name="GameManager" type="Node"]
|
||||
script = ExtResource("1_58t7u")
|
||||
level_scenes = Array[PackedScene]([ExtResource("2_bentb")])
|
||||
level_scenes = Array[PackedScene]([ExtResource("2_bentb"), ExtResource("3_ajlkg")])
|
||||
player_state = {
|
||||
"coins": 0,
|
||||
"current_level": 0,
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=13 format=4 uid="uid://fw5fbdy5gcmx"]
|
||||
[gd_scene load_steps=19 format=4 uid="uid://fw5fbdy5gcmx"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cawlpch2lk3a2" path="res://objects/level/world_environment.tscn" id="1_hb5r3"]
|
||||
[ext_resource type="PackedScene" uid="uid://bqi5s710xb1ju" path="res://objects/entities/brick_player.tscn" id="1_lbnsn"]
|
||||
@@ -11,6 +11,37 @@
|
||||
[ext_resource type="TileSet" uid="uid://cu2sx7qigrqnv" path="res://resources/tilesets/village/terain.tres" id="9_etwin"]
|
||||
[ext_resource type="TileSet" uid="uid://bc5a20s6kuy8e" path="res://resources/tilesets/village/entities.tres" id="10_8xrv5"]
|
||||
[ext_resource type="TileSet" uid="uid://bbppo0irxdmqy" path="res://resources/tilesets/village/foreground.tres" id="11_0vx27"]
|
||||
[ext_resource type="Script" uid="uid://8r1y8elyw7kt" path="res://scripts/console_management.gd" id="12_8xrv5"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_qb72p"]
|
||||
colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_f1fvy"]
|
||||
gradient = SubResource("Gradient_qb72p")
|
||||
|
||||
[sub_resource type="Curve" id="Curve_82d6e"]
|
||||
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="CurveTexture" id="CurveTexture_7b7mt"]
|
||||
curve = SubResource("Curve_82d6e")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_lgb3u"]
|
||||
resource_local_to_scene = true
|
||||
lifetime_randomness = 1.0
|
||||
particle_flag_disable_z = true
|
||||
emission_shape = 1
|
||||
emission_sphere_radius = 8.0
|
||||
direction = Vector3(0.1, -0.5, 0)
|
||||
initial_velocity_min = 200.0
|
||||
initial_velocity_max = 400.0
|
||||
gravity = Vector3(0, 80, 0)
|
||||
damping_min = 400.0
|
||||
damping_max = 800.0
|
||||
scale_max = 3.0
|
||||
scale_curve = SubResource("CurveTexture_7b7mt")
|
||||
color = Color(0.764706, 0.443137, 0, 1)
|
||||
color_ramp = SubResource("GradientTexture1D_f1fvy")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_0nwt7"]
|
||||
script = ExtResource("7_kl81p")
|
||||
@@ -22,6 +53,9 @@ ease = 2
|
||||
|
||||
[node name="Brick Player" parent="." instance=ExtResource("1_lbnsn")]
|
||||
|
||||
[node name="HitParticles" parent="Brick Player" index="26"]
|
||||
process_material = SubResource("ParticleProcessMaterial_lgb3u")
|
||||
|
||||
[node name="WorldEnvironment" parent="." instance=ExtResource("1_hb5r3")]
|
||||
|
||||
[node name="UI Layer" parent="." instance=ExtResource("2_lbnsn")]
|
||||
@@ -58,3 +92,12 @@ tile_set = ExtResource("10_8xrv5")
|
||||
|
||||
[node name="Foreground layer" type="TileMapLayer" parent="."]
|
||||
tile_set = ExtResource("11_0vx27")
|
||||
|
||||
[node name="ConsoleManagement" type="Node" parent="." node_paths=PackedStringArray("player_health", "skill_unlocker", "skill_manager")]
|
||||
script = ExtResource("12_8xrv5")
|
||||
player_health = NodePath("../Brick Player/HealthComponent")
|
||||
skill_unlocker = NodePath("../Brick Player/SkillUnlockerComponent")
|
||||
skill_manager = NodePath("../Brick Player/SkillManager")
|
||||
metadata/_custom_type_script = "uid://8r1y8elyw7kt"
|
||||
|
||||
[editable path="Brick Player"]
|
||||
|
@@ -36,5 +36,6 @@ motion_scale = Vector2(0.3, 0.3)
|
||||
motion_mirroring = Vector2(480, 0)
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="Ground"]
|
||||
scale = Vector2(1, 1.14074)
|
||||
texture = ExtResource("4_jkhju")
|
||||
centered = false
|
||||
|
Reference in New Issue
Block a user