[gd_scene load_steps=12 format=1] [ext_resource path="res://enemy.gd" type="Script" id=1] [ext_resource path="res://enemy.png" type="Texture" id=2] [ext_resource path="res://bullet.png" type="Texture" id=3] [ext_resource path="res://sound_explode.wav" type="Sample" id=4] [ext_resource path="res://sound_hit.wav" type="Sample" id=5] [sub_resource type="CapsuleShape2D" id=1] custom_solver_bias = 0.0 radius = 13.4556 height = 14.2002 [sub_resource type="Animation" id=2] resource/name = "explode" length = 2.0 loop = false step = 0.0 tracks/0/type = "value" tracks/0/path = NodePath("sprite:visibility/self_opacity") tracks/0/interp = 1 tracks/0/imported = false tracks/0/keys = { "times":FloatArray( 0.99422, 1.12851 ), "transitions":FloatArray( 1, 1 ), "update":0, "values":[ 1.0, 0.0 ] } tracks/1/type = "value" tracks/1/path = NodePath("sprite:frame") tracks/1/interp = 1 tracks/1/imported = false tracks/1/keys = { "times":FloatArray( 0 ), "transitions":FloatArray( 1 ), "update":0, "values":[ 4 ] } tracks/2/type = "value" tracks/2/path = NodePath("Particles2D:config/emitting") tracks/2/interp = 1 tracks/2/imported = false tracks/2/keys = { "times":FloatArray( 1.19394 ), "transitions":FloatArray( 1 ), "update":1, "values":[ true ] } tracks/3/type = "method" tracks/3/path = NodePath(".") tracks/3/interp = 1 tracks/3/imported = false tracks/3/keys = { "times":FloatArray( 2.01305 ), "transitions":FloatArray( 1 ), "values":[ { "args":[ ], "method":"queue_free" } ] } tracks/4/type = "value" tracks/4/path = NodePath("sprite:transform/rot") tracks/4/interp = 1 tracks/4/imported = false tracks/4/keys = { "times":FloatArray( 0, 0.99 ), "transitions":FloatArray( 1, 1 ), "update":0, "values":[ 0.0, 360.0 ] } tracks/5/type = "value" tracks/5/path = NodePath("sound:play/play") tracks/5/interp = 1 tracks/5/imported = false tracks/5/keys = { "times":FloatArray( 1.2 ), "transitions":FloatArray( 1 ), "update":2, "values":[ "explode" ] } [sub_resource type="Animation" id=3] length = 6.75 loop = true step = 0.25 tracks/0/type = "value" tracks/0/path = NodePath("sprite:frame") tracks/0/interp = 1 tracks/0/imported = false tracks/0/keys = { "times":FloatArray( 0, 0.75, 1.5, 2.25, 3, 3.75, 4.5, 5.25, 6, 6.75 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "update":1, "values":[ 5, 6, 5, 6, 5, 6, 7, 6, 7, 5 ] } [sub_resource type="Animation" id=4] resource/name = "walk" length = 1.25 loop = true step = 0.25 tracks/0/type = "value" tracks/0/path = NodePath("sprite:frame") tracks/0/interp = 1 tracks/0/imported = false tracks/0/keys = { "times":FloatArray( 0, 0.25, 0.5, 0.75, 1, 1.25 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1 ), "update":1, "values":[ 0, 1, 2, 3, 4, 0 ] } [sub_resource type="ColorRamp" id=5] offsets = FloatArray( 0, 1 ) colors = ColorArray( 1, 0.884956, 0.823009, 1, 0.768627, 0.389381, 0, 0 ) [sub_resource type="SampleLibrary" id=6] samples/explode = { "db":0.0, "pitch":1.0, "sample":ExtResource( 4 ) } samples/hit = { "db":0.0, "pitch":1.0, "sample":ExtResource( 5 ) } [node name="enemy" type="KinematicBody2D"] input/pickable = false shapes/0/shape = SubResource( 1 ) shapes/0/transform = Matrix32( -4.37114e-08, -1, 1, -4.37114e-08, -0.00525069, -0.727495 ) shapes/0/trigger = false collision/layers = 1 collision/mask = 1 collision/margin = 0.08 script/script = ExtResource( 1 ) [node name="enabler" type="VisibilityEnabler2D" parent="."] transform/pos = Vector2( 16.2569, 11.0034 ) transform/scale = Vector2( 23.5056, 10.8629 ) rect = Rect2( -10, -10, 20, 20 ) enabler/pause_animations = true enabler/freeze_bodies = true enabler/pause_particles = true enabler/pause_animated_sprites = true enabler/process_parent = false enabler/fixed_process_parent = false [node name="anim" type="AnimationPlayer" parent="."] playback/process_mode = 1 playback/default_blend_time = 0.0 root/root = NodePath("..") anims/explode = SubResource( 2 ) anims/idle = SubResource( 3 ) anims/walk = SubResource( 4 ) playback/active = true playback/speed = 3.0 blend_times = [ ] autoplay = "" [node name="sprite" type="Sprite" parent="."] texture = ExtResource( 2 ) flip_h = true hframes = 8 frame = 4 [node name="CollisionShape2D" type="CollisionShape2D" parent="."] transform/pos = Vector2( -0.00525069, -0.727495 ) transform/rot = 90.0 shape = SubResource( 1 ) trigger = false _update_shape_index = 0 [node name="detect_floor_left" type="RayCast2D" parent="."] transform/pos = Vector2( -33.2868, -9.34363 ) enabled = true exclude_parent = true cast_to = Vector2( 0, 45 ) layer_mask = 1 type_mask = 15 [node name="detect_wall_left" type="RayCast2D" parent="."] transform/pos = Vector2( -12.1361, -0.739977 ) transform/rot = -90.0 enabled = true exclude_parent = true cast_to = Vector2( 0, 20 ) layer_mask = 1 type_mask = 15 [node name="detect_wall_right" type="RayCast2D" parent="."] transform/pos = Vector2( 3.2788, -0.381488 ) transform/rot = 90.0 enabled = true exclude_parent = true cast_to = Vector2( 0, 20 ) layer_mask = 1 type_mask = 15 [node name="detect_floor_right" type="RayCast2D" parent="."] transform/pos = Vector2( 29.1987, -9.34363 ) enabled = true exclude_parent = true cast_to = Vector2( 0, 45 ) layer_mask = 1 type_mask = 15 [node name="Particles2D" type="Particles2D" parent="."] visibility/self_opacity = 0.121212 visibility/blend_mode = 1 config/amount = 32 config/lifetime = 0.5 config/emit_timeout = 0.5 config/emitting = false config/explosiveness = 0.1 config/texture = ExtResource( 3 ) params/direction = 0.0 params/spread = 180.0 params/linear_velocity = 90.0 params/spin_velocity = 2.0 params/orbit_velocity = 0.0 params/gravity_direction = 0.0 params/gravity_strength = 9.8 params/radial_accel = 0.0 params/tangential_accel = 0.0 params/damping = 0.0 params/initial_angle = 0.0 params/initial_size = 2.0 params/final_size = 3.0 params/hue_variation = 0.0 params/anim_speed_scale = 1.0 params/anim_initial_pos = 0.0 randomness/spin_velocity = 1.0 color/color_ramp = SubResource( 5 ) [node name="sound" type="SamplePlayer2D" parent="."] params/volume_db = 0.0 params/pitch_scale = 1.0 params/attenuation/min_distance = 1.0 params/attenuation/max_distance = 2048.0 params/attenuation/distance_exp = 1.0 config/polyphony = 3 config/samples = SubResource( 6 ) config/pitch_random = 0.0