diff --git a/Godot-space Shooter.csproj.old.5 b/Godot-space Shooter.csproj.old.5
new file mode 100644
index 0000000..0c5959c
--- /dev/null
+++ b/Godot-space Shooter.csproj.old.5
@@ -0,0 +1,6 @@
+
+
+ net6.0
+ true
+
+
\ No newline at end of file
diff --git a/Packed-Scenes/asteroid_01.tscn b/Packed-Scenes/asteroid_01.tscn
index 0b7ffc0..049dbc5 100644
--- a/Packed-Scenes/asteroid_01.tscn
+++ b/Packed-Scenes/asteroid_01.tscn
@@ -1,4 +1,4 @@
-[gd_scene load_steps=9 format=3 uid="uid://6dn1gjqffnt"]
+[gd_scene load_steps=11 format=3 uid="uid://6dn1gjqffnt"]
[ext_resource type="Script" path="res://Scripts/Asteroid.cs" id="1_ygr21"]
[ext_resource type="Texture2D" uid="uid://bt2aj3hcmb87q" path="res://Textures/prop_asteroid_01_dff.png" id="1_yruod"]
@@ -52,11 +52,16 @@ normal_enabled = true
normal_scale = 2.0
normal_texture = ExtResource("2_xbjvi")
-[node name="Asteroid_01" type="Node3D" node_paths=PackedStringArray("asteroidRb", "asteroidMesh")]
+[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_615d1"]
+
+[sub_resource type="SphereMesh" id="SphereMesh_28y08"]
+
+[node name="Asteroid_01" type="Node3D" node_paths=PackedStringArray("asteroidRb", "asteroidMesh", "explosion")]
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0)
script = ExtResource("1_ygr21")
asteroidRb = NodePath("RigidBody3D")
-asteroidMesh = NodePath("RigidBody3D/CollisionShape3D/prop_asteroid_01")
+asteroidMesh = NodePath("RigidBody3D/prop_asteroid_01")
+explosion = NodePath("RigidBody3D/Explosion")
[node name="RigidBody3D" type="RigidBody3D" parent="."]
gravity_scale = 0.0
@@ -64,8 +69,13 @@ gravity_scale = 0.0
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"]
shape = SubResource("SphereShape3D_leouh")
-[node name="prop_asteroid_01" type="MeshInstance3D" parent="RigidBody3D/CollisionShape3D"]
+[node name="prop_asteroid_01" type="MeshInstance3D" parent="RigidBody3D"]
transform = Transform3D(1, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0)
mesh = SubResource("ArrayMesh_rks3f")
skeleton = NodePath("")
surface_material_override/0 = SubResource("StandardMaterial3D_32257")
+
+[node name="Explosion" type="GPUParticles3D" parent="RigidBody3D"]
+emitting = false
+process_material = SubResource("ParticleProcessMaterial_615d1")
+draw_pass_1 = SubResource("SphereMesh_28y08")
diff --git a/Packed-Scenes/asteroid_02.tscn b/Packed-Scenes/asteroid_02.tscn
index 5fae3dd..b86b9cf 100644
--- a/Packed-Scenes/asteroid_02.tscn
+++ b/Packed-Scenes/asteroid_02.tscn
@@ -1,4 +1,4 @@
-[gd_scene load_steps=9 format=3 uid="uid://cvlxm2yrohsca"]
+[gd_scene load_steps=11 format=3 uid="uid://cvlxm2yrohsca"]
[ext_resource type="Texture2D" uid="uid://c48y5hkprbmre" path="res://Textures/prop_asteroid_02_dff.png" id="1_hvwuc"]
[ext_resource type="Script" path="res://Scripts/Asteroid.cs" id="1_vm3mg"]
@@ -7,6 +7,10 @@
[sub_resource type="SphereShape3D" id="SphereShape3D_f4akn"]
radius = 0.715
+[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_eput4"]
+
+[sub_resource type="SphereMesh" id="SphereMesh_p3hrp"]
+
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_n7ttt"]
resource_name = "prop_asteroid_02_mat"
metallic = 0.4
@@ -52,11 +56,12 @@ normal_enabled = true
normal_scale = 2.0
normal_texture = ExtResource("2_qs4n0")
-[node name="Asteroid_02" type="Node3D" node_paths=PackedStringArray("asteroidRb", "asteroidMesh")]
+[node name="Asteroid_02" type="Node3D" node_paths=PackedStringArray("asteroidRb", "asteroidMesh", "explosion")]
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0)
script = ExtResource("1_vm3mg")
asteroidRb = NodePath("RigidBody3D")
-asteroidMesh = NodePath("RigidBody3D/CollisionShape3D/prop_asteroid_02")
+asteroidMesh = NodePath("RigidBody3D/prop_asteroid_02")
+explosion = NodePath("RigidBody3D/Explosion")
[node name="RigidBody3D" type="RigidBody3D" parent="."]
gravity_scale = 0.0
@@ -64,7 +69,12 @@ gravity_scale = 0.0
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"]
shape = SubResource("SphereShape3D_f4akn")
-[node name="prop_asteroid_02" type="MeshInstance3D" parent="RigidBody3D/CollisionShape3D"]
+[node name="Explosion" type="GPUParticles3D" parent="RigidBody3D"]
+emitting = false
+process_material = SubResource("ParticleProcessMaterial_eput4")
+draw_pass_1 = SubResource("SphereMesh_p3hrp")
+
+[node name="prop_asteroid_02" type="MeshInstance3D" parent="RigidBody3D"]
transform = Transform3D(1, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0)
mesh = SubResource("ArrayMesh_jk0jt")
skeleton = NodePath("")
diff --git a/Packed-Scenes/asteroid_03.tscn b/Packed-Scenes/asteroid_03.tscn
index 63e51e2..e6d4714 100644
--- a/Packed-Scenes/asteroid_03.tscn
+++ b/Packed-Scenes/asteroid_03.tscn
@@ -1,4 +1,4 @@
-[gd_scene load_steps=9 format=3 uid="uid://brqqgidqchi88"]
+[gd_scene load_steps=11 format=3 uid="uid://brqqgidqchi88"]
[ext_resource type="Script" path="res://Scripts/Asteroid.cs" id="1_ph38x"]
[ext_resource type="Texture2D" uid="uid://4sc40fjd4myy" path="res://Textures/prop_asteroid_03_dff.png" id="1_wdgmr"]
@@ -7,6 +7,10 @@
[sub_resource type="SphereShape3D" id="SphereShape3D_iq8kl"]
radius = 0.847
+[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_6ipvl"]
+
+[sub_resource type="SphereMesh" id="SphereMesh_1s5ky"]
+
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_pvmxy"]
resource_name = "prop_asteroid_03_mat"
metallic = 0.4
@@ -52,11 +56,12 @@ normal_enabled = true
normal_scale = 2.0
normal_texture = ExtResource("2_5yqc5")
-[node name="Asteroid_03" type="Node3D" node_paths=PackedStringArray("asteroidRb", "asteroidMesh")]
+[node name="Asteroid_03" type="Node3D" node_paths=PackedStringArray("asteroidRb", "asteroidMesh", "explosion")]
transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0)
script = ExtResource("1_ph38x")
asteroidRb = NodePath("RigidBody3D")
-asteroidMesh = NodePath("RigidBody3D/CollisionShape3D/prop_asteroid_03")
+asteroidMesh = NodePath("RigidBody3D/prop_asteroid_03")
+explosion = NodePath("RigidBody3D/Explosion")
[node name="RigidBody3D" type="RigidBody3D" parent="."]
gravity_scale = 0.0
@@ -64,7 +69,12 @@ gravity_scale = 0.0
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"]
shape = SubResource("SphereShape3D_iq8kl")
-[node name="prop_asteroid_03" type="MeshInstance3D" parent="RigidBody3D/CollisionShape3D"]
+[node name="Explosion" type="GPUParticles3D" parent="RigidBody3D"]
+emitting = false
+process_material = SubResource("ParticleProcessMaterial_6ipvl")
+draw_pass_1 = SubResource("SphereMesh_1s5ky")
+
+[node name="prop_asteroid_03" type="MeshInstance3D" parent="RigidBody3D"]
mesh = SubResource("ArrayMesh_rnkma")
skeleton = NodePath("")
surface_material_override/0 = SubResource("StandardMaterial3D_mggxn")
diff --git a/Scenes/SpaceShooter.tscn b/Scenes/SpaceShooter.tscn
index 68db461..f0a3c80 100644
--- a/Scenes/SpaceShooter.tscn
+++ b/Scenes/SpaceShooter.tscn
@@ -36,6 +36,7 @@ script = ExtResource("3_imgbw")
[node name="BackgroundMusic" type="AudioStreamPlayer" parent="."]
stream = ExtResource("8_4ms0p")
volume_db = -20.0
+autoplay = true
[node name="GameManager" type="Node" parent="." node_paths=PackedStringArray("labelAsteroids", "labelLifes")]
script = ExtResource("9_rsrr5")
diff --git a/Scripts/Asteroid.cs b/Scripts/Asteroid.cs
index 9cc187f..6becf5c 100644
--- a/Scripts/Asteroid.cs
+++ b/Scripts/Asteroid.cs
@@ -46,7 +46,7 @@ public partial class Asteroid : Node3D {
}
}
- private void Explode() {
+ public void Explode() {
explosion.Emitting = true;
QueueFree();
}
diff --git a/Scripts/GameManager.cs b/Scripts/GameManager.cs
index 8c51efe..beb753f 100644
--- a/Scripts/GameManager.cs
+++ b/Scripts/GameManager.cs
@@ -5,7 +5,7 @@ namespace Scripts;
public partial class GameManager : Node
{
[Export] private Array asteroids;
- [Export] private float spawnRate = 0.1f;
+ [Export] private float spawnRate = 1f;
private float spawnTimer;
diff --git a/i b/i
new file mode 100644
index 0000000..e69de29