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