[gd_scene load_steps=8 format=2] [ext_resource path="res://objects/enemy/squig.gd" type="Script" id=1] [ext_resource path="res://graphics/enemy/squig.png" type="Texture" id=2] [ext_resource path="res://graphics/particles/dust.png" type="Texture" id=3] [sub_resource type="RectangleShape2D" id=1] extents = Vector2( 2.5, 2.5 ) [sub_resource type="Animation" id=2] length = 0.001 tracks/0/type = "value" tracks/0/path = NodePath("Sprite:frame") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/imported = false tracks/0/enabled = true tracks/0/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, "values": [ 0 ] } tracks/1/type = "value" tracks/1/path = NodePath("InkParticles:emitting") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/imported = false tracks/1/enabled = true tracks/1/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, "values": [ false ] } tracks/2/type = "value" tracks/2/path = NodePath("Sprite:scale") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/imported = false tracks/2/enabled = true tracks/2/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, "values": [ Vector2( 1, 1 ) ] } [sub_resource type="Animation" id=5] resource_name = "falling" length = 0.001 tracks/0/type = "value" tracks/0/path = NodePath("Sprite:frame") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/imported = false tracks/0/enabled = true tracks/0/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 1, "values": [ 1 ] } tracks/1/type = "value" tracks/1/path = NodePath("Sprite:scale") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/imported = false tracks/1/enabled = true tracks/1/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, "values": [ Vector2( 1, -1 ) ] } tracks/2/type = "value" tracks/2/path = NodePath("InkParticles:emitting") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/imported = false tracks/2/enabled = true tracks/2/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 1, "values": [ true ] } [sub_resource type="Animation" id=4] resource_name = "swimming" length = 1.5 loop = true tracks/0/type = "value" tracks/0/path = NodePath("Sprite:frame") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/imported = false tracks/0/enabled = true tracks/0/keys = { "times": PoolRealArray( 0, 0.5 ), "transitions": PoolRealArray( 1, 1 ), "update": 1, "values": [ 0, 1 ] } tracks/1/type = "value" tracks/1/path = NodePath("InkParticles:emitting") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/imported = false tracks/1/enabled = true tracks/1/keys = { "times": PoolRealArray( 0, 0.5 ), "transitions": PoolRealArray( 1, 1 ), "update": 1, "values": [ false, true ] } tracks/2/type = "method" tracks/2/path = NodePath(".") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/imported = false tracks/2/enabled = true tracks/2/keys = { "times": PoolRealArray( 0.5 ), "transitions": PoolRealArray( 1 ), "values": [ { "args": [ ], "method": "_propel" } ] } tracks/3/type = "value" tracks/3/path = NodePath("Sprite:scale") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/imported = false tracks/3/enabled = true tracks/3/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, "values": [ Vector2( 1, 1 ) ] } [node name="Squig" type="Node2D" groups=["enemy"]] light_mask = 8 script = ExtResource( 1 ) damping = 0.5 [node name="InkParticles" type="CPUParticles2D" parent="."] position = Vector2( 3.5, 7 ) emitting = false amount = 32 lifetime = 2.0 local_coords = false texture = ExtResource( 3 ) spread = 180.0 gravity = Vector2( 0, 0 ) initial_velocity = 8.0 initial_velocity_random = 0.5 damping = 4.0 color = Color( 0, 0, 0, 1 ) [node name="Sprite" type="Sprite" parent="."] light_mask = 8 position = Vector2( 4, 4 ) texture = ExtResource( 2 ) hframes = 2 [node name="Hitbox" type="Area2D" parent="." groups=["enemy_hitbox"]] position = Vector2( 4, 4 ) [node name="HitboxShape" type="CollisionShape2D" parent="Hitbox"] unique_name_in_owner = true position = Vector2( -0.5, -0.5 ) shape = SubResource( 1 ) [node name="AnimationPlayer" type="AnimationPlayer" parent="."] autoplay = "swimming" anims/RESET = SubResource( 2 ) anims/falling = SubResource( 5 ) anims/swimming = SubResource( 4 ) [connection signal="area_entered" from="Hitbox" to="." method="_on_Hitbox_area_entered"]