[gd_scene load_steps=15 format=3 uid="uid://du1namnd5kxs4"] [ext_resource type="Texture2D" uid="uid://7n0aykgeuaaw" path="res://assets/img/invader.png" id="1_3tryp"] [ext_resource type="Script" path="res://scripts/invader.gd" id="1_vblvx"] [ext_resource type="Shader" path="res://assets/shaders/PixelExplosion.gdshader" id="2_bav6d"] [ext_resource type="AudioStream" uid="uid://bb8i4s5bv1r4j" path="res://assets/sfx/invader.wav" id="3_orakw"] [ext_resource type="AudioStream" uid="uid://tvb2iqqjjsnq" path="res://assets/sfx/crash2.wav" id="4_5jebg"] [ext_resource type="AudioStream" uid="uid://bg2eft275t8xi" path="res://assets/sfx/shoot2.wav" id="5_c2cqd"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_2etwc"] noise_type = 0 seed = -13 [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_ca84o"] width = 64 height = 64 generate_mipmaps = false noise = SubResource("FastNoiseLite_2etwc") [sub_resource type="FastNoiseLite" id="FastNoiseLite_wjoqq"] noise_type = 0 seed = -13 [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_vfidg"] width = 64 height = 64 generate_mipmaps = false noise = SubResource("FastNoiseLite_wjoqq") [sub_resource type="ShaderMaterial" id="ShaderMaterial_7qjt1"] resource_local_to_scene = true shader = ExtResource("2_bav6d") shader_parameter/progress = null shader_parameter/strength = 1.0 shader_parameter/noise_tex_normal = SubResource("NoiseTexture2D_vfidg") shader_parameter/noise_tex = SubResource("NoiseTexture2D_ca84o") [sub_resource type="Animation" id="Animation_l62j8"] resource_name = "crash" length = 0.4 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("CrashSound:playing") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 1, "values": [true] } tracks/1/type = "method" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath(".") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0.4, 0.4001), "transitions": PackedFloat32Array(1, 1), "values": [{ "args": [], "method": &"queue_free" }, { "args": [], "method": &"queue_free" }] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Sprite2D:material:shader_parameter/progress") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0, 0.1, 0.2, 0.3), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [null, 0.33, 0.66, 1.0] } [sub_resource type="Animation" id="Animation_cojig"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("CrashSound:playing") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 1, "values": [false] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Sprite2D:material:shader_parameter/progress") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [null] } [sub_resource type="AnimationLibrary" id="AnimationLibrary_1dk2o"] _data = { "RESET": SubResource("Animation_cojig"), "crash": SubResource("Animation_l62j8") } [node name="Invader" type="Area2D"] collision_layer = 3 collision_mask = 3 script = ExtResource("1_vblvx") [node name="Sprite2D" type="Sprite2D" parent="."] material = SubResource("ShaderMaterial_7qjt1") texture = ExtResource("1_3tryp") [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="."] polygon = PackedVector2Array(12, -15, 16, -10, 24, -10, 29, -6, 32, -2, 10, 15, -3, 15, -31, -1, -31, -3, -23, -10, -15, -10, -10, -15) [node name="FlyingTone" type="AudioStreamPlayer2D" parent="."] stream = ExtResource("3_orakw") autoplay = true [node name="ShootSound" type="AudioStreamPlayer3D" parent="."] stream = ExtResource("5_c2cqd") [node name="CrashSound" type="AudioStreamPlayer2D" parent="."] stream = ExtResource("4_5jebg") [node name="ShootTimer" type="Timer" parent="."] autostart = true [node name="AnimationPlayer" type="AnimationPlayer" parent="."] libraries = { "": SubResource("AnimationLibrary_1dk2o") } [node name="GunMarker" type="Marker2D" parent="."] position = Vector2(2, 17) [node name="Projectiles" type="Node" parent="."] [connection signal="area_entered" from="." to="." method="_on_area_entered"] [connection signal="body_entered" from="." to="." method="_on_body_entered"] [connection signal="finished" from="FlyingTone" to="." method="_on_flying_tone_finished"] [connection signal="timeout" from="ShootTimer" to="." method="_on_shoot_timer_timeout"]