2024-05-14 20:08:32 -04:00
|
|
|
[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")
|
|
|
|
|
2024-05-16 13:43:51 -04:00
|
|
|
[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]
|
|
|
|
}
|
|
|
|
|
2024-05-14 20:08:32 -04:00
|
|
|
[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="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"]
|