[gd_scene load_steps=11 format=2] [ext_resource path="res://graphics/npc/speccy.png" type="Texture" id=1] [ext_resource path="res://shaders/beam_cycle.gdshader" type="Shader" id=2] [ext_resource path="res://graphics/enemy/boss/stg_2600/beam_gradient.png" type="Texture" id=3] [ext_resource path="res://graphics/hud/speccy/over_here.png" type="Texture" id=4] [ext_resource path="res://graphics/npc/speccy_talk.png" type="Texture" id=5] [ext_resource path="res://graphics/npc/speccy_cool.png" type="Texture" id=6] [sub_resource type="ShaderMaterial" id=3] shader = ExtResource( 2 ) shader_param/cycle_speed = 4.0 shader_param/gradient = ExtResource( 3 ) [sub_resource type="AtlasTexture" id=4] atlas = ExtResource( 6 ) region = Rect2( 72, 0, 24, 24 ) [sub_resource type="Animation" id=1] length = 0.001 tracks/0/type = "value" tracks/0/path = NodePath("Sprite:scale") 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": [ Vector2( 1, 1 ) ] } tracks/1/type = "value" tracks/1/path = NodePath("Sprite/Overlay:modulate") 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": [ Color( 1, 1, 1, 1 ) ] } tracks/2/type = "value" tracks/2/path = NodePath("Sprite2: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( 0.155205, 1 ) ] } tracks/3/type = "value" tracks/3/path = NodePath("Sprite:hframes") 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": 1, "values": [ 1 ] } [sub_resource type="Animation" id=2] resource_name = "fun" length = 3.0 step = 0.05 tracks/0/type = "value" tracks/0/path = NodePath("Sprite:scale") tracks/0/interp = 2 tracks/0/loop_wrap = true tracks/0/imported = false tracks/0/enabled = true tracks/0/keys = { "times": PoolRealArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.5, 0.6, 2.4, 2.5, 2.6, 2.65, 2.7, 2.75, 2.8, 2.85, 2.9, 2.95, 3 ), "transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "update": 0, "values": [ Vector2( 1e-05, 1 ), Vector2( 0.75, 1 ), Vector2( 1e-05, 1 ), Vector2( -0.75, 1 ), Vector2( 1e-05, 1 ), Vector2( 0.75, 1 ), Vector2( 1e-05, 1 ), Vector2( -0.75, 1 ), Vector2( 1e-05, 1 ), Vector2( 1.25, 0.833 ), Vector2( 1, 1 ), Vector2( 1, 1 ), Vector2( 1.25, 0.833 ), Vector2( 1e-05, 1 ), Vector2( -0.75, 1 ), Vector2( 1e-05, 1 ), Vector2( 0.75, 1 ), Vector2( 1e-05, 1 ), Vector2( -0.75, 1 ), Vector2( 1e-05, 1 ), Vector2( 0.75, 1 ), Vector2( 1e-05, 1 ) ] } tracks/1/type = "value" tracks/1/path = NodePath("Sprite/Overlay:modulate") tracks/1/interp = 2 tracks/1/loop_wrap = true tracks/1/imported = false tracks/1/enabled = true tracks/1/keys = { "times": PoolRealArray( 0, 0.5, 0.6, 2.4, 2.5, 3 ), "transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ), "update": 0, "values": [ Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 1 ) ] } tracks/2/type = "value" tracks/2/path = NodePath("Sprite2:scale") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/imported = false tracks/2/enabled = true tracks/2/keys = { "times": PoolRealArray( 0, 0.8, 0.9, 1, 1.65, 1.75, 1.85 ), "transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1 ), "update": 0, "values": [ Vector2( 0, 0 ), Vector2( 1e-05, 1e-05 ), Vector2( 1.0418, 1 ), Vector2( 1, 0.96 ), Vector2( 1, 0.96 ), Vector2( 1.0418, 1 ), Vector2( 1e-05, 1e-05 ) ] } tracks/3/type = "value" tracks/3/path = NodePath("Sprite:texture") tracks/3/interp = 2 tracks/3/loop_wrap = true tracks/3/imported = false tracks/3/enabled = true tracks/3/keys = { "times": PoolRealArray( 0, 0.75, 0.85, 0.95, 1.05, 1.15, 1.25, 1.4, 2 ), "transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "update": 1, "values": [ ExtResource( 1 ), ExtResource( 1 ), ExtResource( 5 ), ExtResource( 1 ), ExtResource( 5 ), ExtResource( 1 ), ExtResource( 5 ), ExtResource( 1 ), ExtResource( 6 ) ] } tracks/4/type = "value" tracks/4/path = NodePath("Sprite:hframes") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/imported = false tracks/4/enabled = true tracks/4/keys = { "times": PoolRealArray( 0, 2 ), "transitions": PoolRealArray( 1, 1 ), "update": 1, "values": [ 1, 4 ] } tracks/5/type = "value" tracks/5/path = NodePath("Sprite:frame") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/imported = false tracks/5/enabled = true tracks/5/keys = { "times": PoolRealArray( 0, 2, 2.05, 2.1, 2.15 ), "transitions": PoolRealArray( 1, 1, 1, 1, 1 ), "update": 1, "values": [ 0, 0, 1, 2, 3 ] } tracks/6/type = "value" tracks/6/path = NodePath("Sprite/Overlay:texture") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/imported = false tracks/6/enabled = true tracks/6/keys = { "times": PoolRealArray( 0, 2.4 ), "transitions": PoolRealArray( 1, 1 ), "update": 1, "values": [ ExtResource( 1 ), SubResource( 4 ) ] } [node name="speccy" type="Node2D"] [node name="Sprite" type="Sprite" parent="."] position = Vector2( 0, -12 ) texture = ExtResource( 6 ) offset = Vector2( -2, 0 ) region_rect = Rect2( 1.015, 0, 0, 0 ) [node name="Overlay" type="Sprite" parent="Sprite"] material = SubResource( 3 ) texture = SubResource( 4 ) region_rect = Rect2( 1.015, 0, 0, 0 ) [node name="AnimationPlayer" type="AnimationPlayer" parent="."] autoplay = "fun" anims/RESET = SubResource( 1 ) anims/fun = SubResource( 2 ) [node name="Sprite2" type="Sprite" parent="."] position = Vector2( 0, -24 ) scale = Vector2( 0.155205, 1 ) texture = ExtResource( 4 )