From 2a92de18c779e88bc1a5de83377ee4ac80b8c5b2 Mon Sep 17 00:00:00 2001 From: Jakob Feldmann Date: Mon, 1 Aug 2022 18:05:53 +0200 Subject: [PATCH] Replaced animations with blend spaces in statemachine --- src/Actors/Blobby/Blobby.tscn | 2086 +++++++++++++++++++++-- src/Actors/Blobby/BlobbyStateMachine.gd | 27 +- 2 files changed, 1961 insertions(+), 152 deletions(-) diff --git a/src/Actors/Blobby/Blobby.tscn b/src/Actors/Blobby/Blobby.tscn index 1c0ed2a..f8dafc1 100644 --- a/src/Actors/Blobby/Blobby.tscn +++ b/src/Actors/Blobby/Blobby.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=77 format=2] +[gd_scene load_steps=108 format=2] [ext_resource path="res://src/Actors/Blobby/BlobbyCam.gd" type="Script" id=2] [ext_resource path="res://src/Actors/Blobby/BlobbyStateMachine.gd" type="Script" id=3] @@ -11,172 +11,272 @@ extents = Vector2( 14.9127, 5.98593 ) [sub_resource type="StreamTexture" id=62] load_path = "res://.import/Blobby.png-42eed5028ccb56a7415a0793b79ec61e.stex" -[sub_resource type="AnimationNodeAnimation" id=83] +[sub_resource type="AnimationNodeAnimation" id=126] animation = "duckTurn" -[sub_resource type="AnimationNodeAnimation" id=18] +[sub_resource type="AnimationNodeAnimation" id=108] +animation = "duckingLeft" + +[sub_resource type="AnimationNodeAnimation" id=109] animation = "ducking" -[sub_resource type="AnimationNodeAnimation" id=19] +[sub_resource type="AnimationNodeBlendSpace1D" id=110] +blend_point_0/node = SubResource( 108 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 109 ) +blend_point_1/pos = 1.0 + +[sub_resource type="AnimationNodeAnimation" id=111] +animation = "fallingLeft" + +[sub_resource type="AnimationNodeAnimation" id=112] animation = "falling" -[sub_resource type="AnimationNodeAnimation" id=84] +[sub_resource type="AnimationNodeBlendSpace1D" id=113] +blend_point_0/node = SubResource( 111 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 112 ) +blend_point_1/pos = 1.0 +value_label = "0" + +[sub_resource type="AnimationNodeAnimation" id=127] animation = "idleTurn" -[sub_resource type="AnimationNodeAnimation" id=21] +[sub_resource type="AnimationNodeAnimation" id=114] +animation = "idlingLeft" + +[sub_resource type="AnimationNodeAnimation" id=115] animation = "idling" -[sub_resource type="AnimationNodeAnimation" id=63] +[sub_resource type="AnimationNodeBlendSpace1D" id=116] +blend_point_0/node = SubResource( 114 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 115 ) +blend_point_1/pos = 1.0 + +[sub_resource type="AnimationNodeAnimation" id=117] +animation = "jumpToFallLeft" + +[sub_resource type="AnimationNodeAnimation" id=118] animation = "jumpToFall" -[sub_resource type="AnimationNodeAnimation" id=22] +[sub_resource type="AnimationNodeBlendSpace1D" id=119] +blend_point_0/node = SubResource( 117 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 118 ) +blend_point_1/pos = 1.0 + +[sub_resource type="AnimationNodeAnimation" id=123] +animation = "jumpingLeft" + +[sub_resource type="AnimationNodeAnimation" id=124] animation = "jumping" -[sub_resource type="AnimationNodeAnimation" id=89] +[sub_resource type="AnimationNodeBlendSpace1D" id=125] +blend_point_0/node = SubResource( 123 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 124 ) +blend_point_1/pos = 1.0 + +[sub_resource type="AnimationNodeAnimation" id=144] +animation = "runToJumpLeft" + +[sub_resource type="AnimationNodeAnimation" id=145] animation = "runToJump" -[sub_resource type="AnimationNodeAnimation" id=23] +[sub_resource type="AnimationNodeBlendSpace1D" id=146] +blend_point_0/node = SubResource( 144 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 145 ) +blend_point_1/pos = 1.0 + +[sub_resource type="AnimationNodeAnimation" id=120] +animation = "runningLeft" + +[sub_resource type="AnimationNodeAnimation" id=121] animation = "running" -[sub_resource type="AnimationNodeAnimation" id=54] +[sub_resource type="AnimationNodeBlendSpace1D" id=122] +blend_point_0/node = SubResource( 120 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 121 ) +blend_point_1/pos = 1.0 + +[sub_resource type="AnimationNodeAnimation" id=128] +animation = "turnToRunLeft" + +[sub_resource type="AnimationNodeAnimation" id=129] animation = "turnToRun" -[sub_resource type="AnimationNodeAnimation" id=24] +[sub_resource type="AnimationNodeBlendSpace1D" id=130] +blend_point_0/node = SubResource( 128 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 129 ) +blend_point_1/pos = 1.0 + +[sub_resource type="AnimationNodeAnimation" id=131] +animation = "walkingLeft" + +[sub_resource type="AnimationNodeAnimation" id=132] animation = "walking" -[sub_resource type="AnimationNodeAnimation" id=80] +[sub_resource type="AnimationNodeBlendSpace1D" id=133] +blend_point_0/node = SubResource( 131 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 132 ) +blend_point_1/pos = 1.0 + +[sub_resource type="AnimationNodeAnimation" id=134] animation = "wallslideToJump" -[sub_resource type="AnimationNodeAnimation" id=64] +[sub_resource type="AnimationNodeAnimation" id=135] +animation = "wallslideToJumpRight" + +[sub_resource type="AnimationNodeBlendSpace1D" id=136] +blend_point_0/node = SubResource( 134 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 135 ) +blend_point_1/pos = 1.0 + +[sub_resource type="AnimationNodeAnimation" id=179] animation = "wallsliding" -[sub_resource type="AnimationNodeStateMachineTransition" id=25] +[sub_resource type="AnimationNodeAnimation" id=180] +animation = "wallslidingRight" -[sub_resource type="AnimationNodeStateMachineTransition" id=26] +[sub_resource type="AnimationNodeBlendSpace1D" id=96] +blend_point_0/node = SubResource( 179 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 180 ) +blend_point_1/pos = 1.0 +snap = 1.0 -[sub_resource type="AnimationNodeStateMachineTransition" id=31] +[sub_resource type="AnimationNodeStateMachineTransition" id=137] -[sub_resource type="AnimationNodeStateMachineTransition" id=33] +[sub_resource type="AnimationNodeStateMachineTransition" id=138] -[sub_resource type="AnimationNodeStateMachineTransition" id=34] +[sub_resource type="AnimationNodeStateMachineTransition" id=139] -[sub_resource type="AnimationNodeStateMachineTransition" id=35] +[sub_resource type="AnimationNodeStateMachineTransition" id=140] -[sub_resource type="AnimationNodeStateMachineTransition" id=36] +[sub_resource type="AnimationNodeStateMachineTransition" id=141] +switch_mode = 2 +auto_advance = true -[sub_resource type="AnimationNodeStateMachineTransition" id=37] +[sub_resource type="AnimationNodeStateMachineTransition" id=147] + +[sub_resource type="AnimationNodeStateMachineTransition" id=148] +switch_mode = 2 +auto_advance = true + +[sub_resource type="AnimationNodeStateMachineTransition" id=149] + +[sub_resource type="AnimationNodeStateMachineTransition" id=150] + +[sub_resource type="AnimationNodeStateMachineTransition" id=151] +switch_mode = 2 +auto_advance = true + +[sub_resource type="AnimationNodeStateMachineTransition" id=152] + +[sub_resource type="AnimationNodeStateMachineTransition" id=153] +switch_mode = 2 +auto_advance = true + +[sub_resource type="AnimationNodeStateMachineTransition" id=154] + +[sub_resource type="AnimationNodeStateMachineTransition" id=155] + +[sub_resource type="AnimationNodeStateMachineTransition" id=156] + +[sub_resource type="AnimationNodeStateMachineTransition" id=157] priority = 2 -[sub_resource type="AnimationNodeStateMachineTransition" id=38] - -[sub_resource type="AnimationNodeStateMachineTransition" id=39] - -[sub_resource type="AnimationNodeStateMachineTransition" id=40] - -[sub_resource type="AnimationNodeStateMachineTransition" id=41] - -[sub_resource type="AnimationNodeStateMachineTransition" id=42] - -[sub_resource type="AnimationNodeStateMachineTransition" id=43] - -[sub_resource type="AnimationNodeStateMachineTransition" id=44] - -[sub_resource type="AnimationNodeStateMachineTransition" id=50] - -[sub_resource type="AnimationNodeStateMachineTransition" id=51] +[sub_resource type="AnimationNodeStateMachineTransition" id=158] priority = 2 -[sub_resource type="AnimationNodeStateMachineTransition" id=52] +[sub_resource type="AnimationNodeStateMachineTransition" id=159] -[sub_resource type="AnimationNodeStateMachineTransition" id=55] +[sub_resource type="AnimationNodeStateMachineTransition" id=160] -[sub_resource type="AnimationNodeStateMachineTransition" id=56] -switch_mode = 2 -auto_advance = true - -[sub_resource type="AnimationNodeStateMachineTransition" id=57] - -[sub_resource type="AnimationNodeStateMachineTransition" id=59] +[sub_resource type="AnimationNodeStateMachineTransition" id=161] priority = 2 -[sub_resource type="AnimationNodeStateMachineTransition" id=60] +[sub_resource type="AnimationNodeStateMachineTransition" id=162] +priority = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id=163] + +[sub_resource type="AnimationNodeStateMachineTransition" id=164] +priority = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id=165] + +[sub_resource type="AnimationNodeStateMachineTransition" id=166] + +[sub_resource type="AnimationNodeStateMachineTransition" id=167] + +[sub_resource type="AnimationNodeStateMachineTransition" id=168] +priority = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id=169] + +[sub_resource type="AnimationNodeStateMachineTransition" id=170] switch_mode = 2 auto_advance = true -[sub_resource type="AnimationNodeStateMachineTransition" id=61] +[sub_resource type="AnimationNodeStateMachineTransition" id=171] + +[sub_resource type="AnimationNodeStateMachineTransition" id=172] switch_mode = 2 auto_advance = true -[sub_resource type="AnimationNodeStateMachineTransition" id=65] +[sub_resource type="AnimationNodeStateMachineTransition" id=173] -[sub_resource type="AnimationNodeStateMachineTransition" id=66] +[sub_resource type="AnimationNodeStateMachineTransition" id=174] + +[sub_resource type="AnimationNodeStateMachineTransition" id=175] switch_mode = 2 auto_advance = true -[sub_resource type="AnimationNodeStateMachineTransition" id=76] +[sub_resource type="AnimationNodeStateMachineTransition" id=176] -[sub_resource type="AnimationNodeStateMachineTransition" id=78] - -[sub_resource type="AnimationNodeStateMachineTransition" id=79] - -[sub_resource type="AnimationNodeStateMachineTransition" id=81] - -[sub_resource type="AnimationNodeStateMachineTransition" id=82] +[sub_resource type="AnimationNodeStateMachineTransition" id=177] switch_mode = 2 auto_advance = true -[sub_resource type="AnimationNodeStateMachineTransition" id=85] - -[sub_resource type="AnimationNodeStateMachineTransition" id=87] - -[sub_resource type="AnimationNodeStateMachineTransition" id=88] -switch_mode = 2 -auto_advance = true - -[sub_resource type="AnimationNodeStateMachineTransition" id=90] - -[sub_resource type="AnimationNodeStateMachineTransition" id=91] -switch_mode = 2 -auto_advance = true - -[sub_resource type="AnimationNodeStateMachineTransition" id=92] - -[sub_resource type="AnimationNodeStateMachineTransition" id=93] -switch_mode = 2 -auto_advance = true - -[sub_resource type="AnimationNodeStateMachineTransition" id=94] +[sub_resource type="AnimationNodeStateMachineTransition" id=178] [sub_resource type="AnimationNodeStateMachine" id=47] -states/duckTurn/node = SubResource( 83 ) -states/duckTurn/position = Vector2( 680, 347.009 ) -states/ducking/node = SubResource( 18 ) -states/ducking/position = Vector2( 680, 241 ) -states/falling/node = SubResource( 19 ) -states/falling/position = Vector2( 1097, 241 ) -states/idleTurn/node = SubResource( 84 ) -states/idleTurn/position = Vector2( 228.329, -183.991 ) -states/idling/node = SubResource( 21 ) -states/idling/position = Vector2( 216.329, 27 ) -states/jumpToFall/node = SubResource( 63 ) -states/jumpToFall/position = Vector2( 680, 416.088 ) -states/jumping/node = SubResource( 22 ) -states/jumping/position = Vector2( 201, 265 ) -states/runToJump/node = SubResource( 89 ) -states/runToJump/position = Vector2( 97.329, 129.009 ) -states/running/node = SubResource( 23 ) -states/running/position = Vector2( 1028, 8 ) -states/turnToRun/node = SubResource( 54 ) -states/turnToRun/position = Vector2( 685, -219.378 ) -states/walking/node = SubResource( 24 ) -states/walking/position = Vector2( 685, -54 ) -states/wallslideToJump/node = SubResource( 80 ) -states/wallslideToJump/position = Vector2( 208, 612.088 ) -states/wallsliding/node = SubResource( 64 ) -states/wallsliding/position = Vector2( 574, 612.088 ) -transitions = [ "idling", "walking", SubResource( 25 ), "walking", "idling", SubResource( 26 ), "idling", "jumping", SubResource( 31 ), "walking", "jumping", SubResource( 33 ), "ducking", "idling", SubResource( 34 ), "idling", "ducking", SubResource( 35 ), "ducking", "running", SubResource( 36 ), "running", "ducking", SubResource( 37 ), "walking", "ducking", SubResource( 38 ), "ducking", "walking", SubResource( 39 ), "falling", "running", SubResource( 40 ), "falling", "ducking", SubResource( 41 ), "falling", "idling", SubResource( 42 ), "falling", "walking", SubResource( 43 ), "ducking", "jumping", SubResource( 44 ), "walking", "falling", SubResource( 50 ), "running", "falling", SubResource( 51 ), "ducking", "falling", SubResource( 52 ), "idling", "turnToRun", SubResource( 55 ), "turnToRun", "running", SubResource( 56 ), "walking", "turnToRun", SubResource( 57 ), "running", "turnToRun", SubResource( 59 ), "turnToRun", "walking", SubResource( 60 ), "turnToRun", "idling", SubResource( 61 ), "jumping", "jumpToFall", SubResource( 65 ), "jumpToFall", "falling", SubResource( 66 ), "falling", "wallsliding", SubResource( 76 ), "wallsliding", "falling", SubResource( 78 ), "wallsliding", "idling", SubResource( 79 ), "wallsliding", "wallslideToJump", SubResource( 81 ), "wallslideToJump", "jumping", SubResource( 82 ), "idling", "idleTurn", SubResource( 85 ), "ducking", "duckTurn", SubResource( 87 ), "duckTurn", "ducking", SubResource( 88 ), "running", "runToJump", SubResource( 90 ), "runToJump", "jumping", SubResource( 91 ), "walking", "idleTurn", SubResource( 92 ), "idleTurn", "walking", SubResource( 93 ), "jumping", "wallsliding", SubResource( 94 ) ] +states/duckTurn/node = SubResource( 126 ) +states/duckTurn/position = Vector2( 1795.54, 241 ) +states/ducking/node = SubResource( 110 ) +states/ducking/position = Vector2( 1795.54, 129.009 ) +states/falling/node = SubResource( 113 ) +states/falling/position = Vector2( 2118.54, 129.009 ) +states/idleTurn/node = SubResource( 127 ) +states/idleTurn/position = Vector2( 1375.54, -193.991 ) +states/idling/node = SubResource( 116 ) +states/idling/position = Vector2( 1375.54, -54 ) +states/jumpToFall/node = SubResource( 119 ) +states/jumpToFall/position = Vector2( 1795.54, 311.009 ) +states/jumping/node = SubResource( 125 ) +states/jumping/position = Vector2( 1375.54, 129.009 ) +states/runToJump/node = SubResource( 146 ) +states/runToJump/position = Vector2( 1258.54, 27 ) +states/running/node = SubResource( 122 ) +states/running/position = Vector2( 2266.54, -54 ) +states/turnToRun/node = SubResource( 130 ) +states/turnToRun/position = Vector2( 1795.54, -308.991 ) +states/walking/node = SubResource( 133 ) +states/walking/position = Vector2( 1795.54, -54 ) +states/wallslideToJump/node = SubResource( 136 ) +states/wallslideToJump/position = Vector2( 1375.54, 296.009 ) +states/wallsliding/node = SubResource( 96 ) +states/wallsliding/position = Vector2( 1803.54, 563.009 ) +transitions = [ "wallsliding", "falling", SubResource( 137 ), "falling", "wallsliding", SubResource( 138 ), "wallsliding", "idling", SubResource( 139 ), "wallsliding", "wallslideToJump", SubResource( 140 ), "wallslideToJump", "jumping", SubResource( 141 ), "idling", "jumping", SubResource( 147 ), "runToJump", "jumping", SubResource( 148 ), "ducking", "jumping", SubResource( 149 ), "jumping", "jumpToFall", SubResource( 150 ), "jumpToFall", "falling", SubResource( 151 ), "ducking", "duckTurn", SubResource( 152 ), "duckTurn", "ducking", SubResource( 153 ), "falling", "ducking", SubResource( 154 ), "ducking", "falling", SubResource( 155 ), "ducking", "walking", SubResource( 156 ), "walking", "ducking", SubResource( 157 ), "idling", "ducking", SubResource( 158 ), "ducking", "idling", SubResource( 159 ), "ducking", "running", SubResource( 160 ), "running", "ducking", SubResource( 161 ), "running", "falling", SubResource( 162 ), "falling", "running", SubResource( 163 ), "walking", "falling", SubResource( 164 ), "falling", "walking", SubResource( 165 ), "falling", "idling", SubResource( 166 ), "idling", "walking", SubResource( 167 ), "walking", "idling", SubResource( 168 ), "walking", "turnToRun", SubResource( 169 ), "turnToRun", "walking", SubResource( 170 ), "running", "turnToRun", SubResource( 171 ), "turnToRun", "running", SubResource( 172 ), "idling", "idleTurn", SubResource( 173 ), "walking", "idleTurn", SubResource( 174 ), "idleTurn", "walking", SubResource( 175 ), "idling", "turnToRun", SubResource( 176 ), "turnToRun", "idling", SubResource( 177 ), "running", "runToJump", SubResource( 178 ) ] start_node = "idling" -graph_offset = Vector2( -88.671, 262.009 ) +graph_offset = Vector2( 1001.54, 39.009 ) [sub_resource type="AnimationNodeStateMachinePlayback" id=48] @@ -341,6 +441,18 @@ tracks/12/keys = { "update": 0, "values": [ Vector2( 1, 0 ) ] } +tracks/13/type = "value" +tracks/13/path = NodePath(".:scale") +tracks/13/interp = 1 +tracks/13/loop_wrap = true +tracks/13/imported = false +tracks/13/enabled = true +tracks/13/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} [sub_resource type="Animation" id=67] length = 0.1 @@ -441,6 +553,18 @@ tracks/7/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/8/type = "value" +tracks/8/path = NodePath(".:scale") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} [sub_resource type="Animation" id=68] length = 0.1 @@ -565,6 +689,18 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} [sub_resource type="Animation" id=69] length = 0.1 @@ -689,6 +825,155 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=107] +resource_name = "duckingLeft" +length = 0.1 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 21.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../BlobbyBody:shape:extents") +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( 14.9752, 6.02764 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +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.0569275, -6.02569 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +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( 14.9127, 5.98593 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../BlobbyBody:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0.0360709, -5.98398 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -15.0191, -0.767529 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -15.0191, -7.0673 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 15.0135, -7.0673 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 15.0135, -0.767529 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} [sub_resource type="Animation" id=6] length = 0.1 @@ -813,6 +1098,155 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 1, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=106] +resource_name = "fallingLeft" +length = 0.1 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 13.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +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( 12.5424, 10.5016 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +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.5, -10.541 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../BlobbyBody:shape:extents") +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( 12.5424, 10.5247 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../BlobbyBody:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -0.5, -10.481 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -13, -12.638 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -13, -4.993 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12, -12.638 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12, -4.993 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} [sub_resource type="Animation" id=70] length = 0.1 @@ -937,6 +1371,18 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} [sub_resource type="Animation" id=7] length = 7.6 @@ -975,7 +1421,144 @@ tracks/2/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( 0, -9 ) ] +"values": [ Vector2( 1, -8.975 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +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( 12.9698, 8.9748 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, -8.975 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 14, -10.686 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 14, -1.942 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -12, -1.942 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -12, -10.686 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=103] +resource_name = "idlingLeft" +length = 7.6 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.2, 0.4, 0.8, 1, 1.2, 1.4, 1.6, 1.8, 2, 2.2, 2.4, 2.6, 2.8, 3, 3.2, 3.4, 3.6, 3.8, 4, 4.2, 4.4, 4.6, 4.8, 5, 5.2, 5.4, 5.6, 5.8, 6, 6.2, 6.4, 6.6, 6.8, 7, 7.2, 7.4 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), +"update": 1, +"values": [ 5.0, 6.0, 7.0, 6.0, 5.0, 6.0, 7.0, 7.0, 6.0, 5.0, 6.0, 7.0, 7.0, 6.0, 5.0, 6.0, 7.0, 7.0, 6.0, 5.0, 7.0, 8.0, 9.0, 10.0, 9.0, 8.0, 9.0, 10.0, 9.0, 8.0, 8.0, 9.0, 10.0, 6.0, 7.0, 7.0, 6.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../BlobbyBody:shape:extents") +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( 12.971, 8.99662 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../BlobbyBody:position") +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, -9 ) ] } tracks/3/type = "value" tracks/3/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") @@ -1011,7 +1594,7 @@ tracks/5/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( 13.0235, -10.6856 ) ] +"values": [ Vector2( 12, -10.686 ) ] } tracks/6/type = "value" tracks/6/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") @@ -1023,7 +1606,7 @@ tracks/6/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( 13.0235, -1.94163 ) ] +"values": [ Vector2( 12, -1.942 ) ] } tracks/7/type = "value" tracks/7/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") @@ -1035,7 +1618,7 @@ tracks/7/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( -13.0423, -1.94163 ) ] +"values": [ Vector2( -14, -1.942 ) ] } tracks/8/type = "value" tracks/8/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") @@ -1059,7 +1642,19 @@ tracks/9/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( 0, 0 ) ] +"values": [ Vector2( 1, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] } [sub_resource type="Animation" id=71] @@ -1185,6 +1780,155 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=105] +resource_name = "jumpToFallLeft" +length = 0.1 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 29.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +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( 13.0235, -10.6856 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +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( 13.0235, -1.94163 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +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( -13.0423, -1.94163 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -13.0423, -10.6856 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12.9698, 8.9748 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -0.0287741, -8.97473 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../BlobbyBody:shape:extents") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12.971, 8.99662 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../BlobbyBody:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, -9 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} [sub_resource type="Animation" id=8] length = 0.1 @@ -1309,9 +2053,22 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} -[sub_resource type="Animation" id=72] -length = 0.2 +[sub_resource type="Animation" id=104] +resource_name = "jumpingLeft" +length = 0.1 loop = true tracks/0/type = "value" tracks/0/path = NodePath(".:frame") @@ -1320,10 +2077,146 @@ tracks/0/loop_wrap = false tracks/0/imported = false tracks/0/enabled = true tracks/0/keys = { -"times": PoolRealArray( 0, 0.1 ), +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 12.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +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( 11.9219, 10.0313 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../BlobbyBody:shape:extents") +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( 11.9889, 9.98094 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../BlobbyBody:position") +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( -0.0184917, -10.0133 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -12, -9.013 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -12, -1.942 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12.0573, -9.0133 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12.0573, -1.94163 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0.0469954, -10.0308 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} + +[sub_resource type="Animation" id=72] +length = 0.3 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.15 ), "transitions": PoolRealArray( 1, 1 ), "update": 1, -"values": [ 27.0, 28.0 ] +"values": [ 27.0, 28 ] } tracks/1/type = "value" tracks/1/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") @@ -1433,6 +2326,155 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=143] +resource_name = "runToJumpLeft" +length = 0.3 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.15 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ 27, 28 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +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( 10.0226, 10.5507 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +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.0401012, -10.5506 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../BlobbyBody:shape:extents") +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( 10.0201, 10.5337 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../BlobbyBody:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0.0426359, -10.5119 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -10.012, -12.8494 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -10.012, -5.91313 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 10.0805, -12.8494 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 10.0805, -5.91313 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} [sub_resource type="Animation" id=49] resource_name = "running" @@ -1529,10 +2571,10 @@ tracks/7/loop_wrap = true tracks/7/imported = false tracks/7/enabled = true tracks/7/keys = { -"times": PoolRealArray( 0.125 ), -"transitions": PoolRealArray( 1 ), +"times": PoolRealArray( 0, 0.125 ), +"transitions": PoolRealArray( 1, 1 ), "update": 0, -"values": [ Vector2( 14.0641, -10.6856 ) ] +"values": [ Vector2( 14, -10.686 ), Vector2( 14.0641, -10.6856 ) ] } tracks/8/type = "value" tracks/8/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") @@ -1541,10 +2583,10 @@ tracks/8/loop_wrap = true tracks/8/imported = false tracks/8/enabled = true tracks/8/keys = { -"times": PoolRealArray( 0.125 ), -"transitions": PoolRealArray( 1 ), +"times": PoolRealArray( 0, 0.125 ), +"transitions": PoolRealArray( 1, 1 ), "update": 0, -"values": [ Vector2( 14.0641, -1.94163 ) ] +"values": [ Vector2( 14, -1.942 ), Vector2( 14.0641, -1.94163 ) ] } tracks/9/type = "value" tracks/9/path = NodePath(".:offset") @@ -1558,6 +2600,155 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=102] +resource_name = "runningLeft" +length = 0.35 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +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 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1 ), +"update": 1, +"values": [ 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../BlobbyBody:shape:extents") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( ), +"transitions": PoolRealArray( ), +"update": 0, +"values": [ ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../BlobbyBody:position") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0.241667 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1.5, -8.975 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"times": PoolRealArray( ), +"transitions": PoolRealArray( ), +"update": 0, +"values": [ ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0.241667 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1.5, -8.975 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0.241667 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -14, -1.942 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0.241667 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -14, -10.686 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0.241667 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 11, -10.686 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0.241667 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 11, -1.942 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} [sub_resource type="Animation" id=58] length = 0.1 @@ -1682,6 +2873,155 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=100] +resource_name = "turnToRunLeft" +length = 0.1 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 24.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +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( 12.0945, -1.94163 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +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( 12.0945, -10.6856 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +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( -12.0389, -1.94163 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -12.0389, -10.6856 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../BlobbyBody:position") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0.0221715, -8.97473 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../BlobbyBody:shape:extents") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 11.9898, 8.99662 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12.0075, 8.9748 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0.0415635, -8.97473 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} [sub_resource type="Animation" id=9] length = 0.5 @@ -1732,7 +3072,7 @@ tracks/3/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( 14.0641, -1.94163 ) ] +"values": [ Vector2( 14, -1.942 ) ] } tracks/4/type = "value" tracks/4/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") @@ -1744,7 +3084,7 @@ tracks/4/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( 14.0641, -10.6856 ) ] +"values": [ Vector2( 14, -10.686 ) ] } tracks/5/type = "value" tracks/5/path = NodePath("../BlobbyBody:shape:extents") @@ -1806,6 +3146,155 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=99] +resource_name = "walkingLeft" +length = 0.5 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1 ), +"update": 1, +"values": [ 0.0, 1.0, 2.0, 3.0, 4.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +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( -14, -10.686 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +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( -14, -1.942 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +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( 12, -1.942 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12, -10.686 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../BlobbyBody:shape:extents") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12.971, 8.99662 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../BlobbyBody:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, -8.975 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 12.9698, 8.9748 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, -8.975 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} [sub_resource type="Animation" id=73] length = 0.3 @@ -1930,6 +3419,155 @@ tracks/9/keys = { "update": 0, "values": [ Vector2( 0, 0 ) ] } +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=101] +resource_name = "wallslideToJumpRight" +length = 0.3 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 26.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +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( 10.4505, 13.5399 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +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( 2.5, -13.479 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../BlobbyBody:shape:extents") +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( 10.5306, 13.5644 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../BlobbyBody:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 2.5, -13.507 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -8, -15 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -8, -7.751 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 13, -15.351 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 13, -7.751 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] +} [sub_resource type="Animation" id=74] length = 0.1 @@ -1956,7 +3594,7 @@ tracks/1/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( -12, -15.351 ) ] +"values": [ Vector2( -13, -15.351 ) ] } tracks/2/type = "value" tracks/2/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") @@ -1968,7 +3606,7 @@ tracks/2/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( -12, -7.751 ) ] +"values": [ Vector2( -13, -7.751 ) ] } tracks/3/type = "value" tracks/3/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") @@ -1980,7 +3618,7 @@ tracks/3/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( 0, -15.351 ) ] +"values": [ Vector2( -1, -15.351 ) ] } tracks/4/type = "value" tracks/4/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") @@ -1992,7 +3630,7 @@ tracks/4/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( 0, -7.751 ) ] +"values": [ Vector2( -1, -7.751 ) ] } tracks/5/type = "value" tracks/5/path = NodePath("../BlobbyBody:shape:extents") @@ -2016,7 +3654,7 @@ tracks/6/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( -6, -14.968 ) ] +"values": [ Vector2( -7, -14.968 ) ] } tracks/7/type = "value" tracks/7/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") @@ -2040,7 +3678,7 @@ tracks/8/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( -6, -14.951 ) ] +"values": [ Vector2( -7, -14.951 ) ] } tracks/9/type = "value" tracks/9/path = NodePath(".:offset") @@ -2052,7 +3690,156 @@ tracks/9/keys = { "times": PoolRealArray( 0 ), "transitions": PoolRealArray( 1 ), "update": 0, -"values": [ Vector2( 1, 0 ) ] +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=97] +resource_name = "wallslidingRight" +length = 0.1 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 25.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast1:position") +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, -15.351 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("../WallRaycasts/LeftWallRaycast/Left_Wallcast2:position") +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, -7.751 ) ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast1:position") +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( 13, -15.351 ) ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("../WallRaycasts/RightWallRaycast/Right_Wallcast2:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 13, -7.751 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("../BlobbyBody:shape:extents") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 6.01041, 15.026 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("../BlobbyBody:position") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 7, -14.968 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("../BlobbySkin/CollisionPolygon2D:shape:extents") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 5.94585, 15.0126 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("../BlobbySkin/CollisionPolygon2D:position") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 7, -14.951 ) ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:offset") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} +tracks/10/type = "value" +tracks/10/path = NodePath(".:scale") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( -1, 1 ) ] } [node name="Blobby" type="KinematicBody2D" groups=["player"]] @@ -2071,6 +3858,7 @@ shape = SubResource( 2 ) [node name="BlobbySprite" type="Sprite" parent="."] position = Vector2( 0, -16 ) +scale = Vector2( -1, 1 ) texture = SubResource( 62 ) offset = Vector2( 1, 0 ) hframes = 6 @@ -2086,6 +3874,17 @@ anim_player = NodePath("../BlobbymationPlayer") active = true root_motion_track = NodePath(".") parameters/playback = SubResource( 48 ) +parameters/ducking/blend_position = 1.0 +parameters/falling/blend_position = 1.0 +parameters/idling/blend_position = 1.0 +parameters/jumpToFall/blend_position = 1.0 +parameters/jumping/blend_position = 1.0 +parameters/runToJump/blend_position = 1.0 +parameters/running/blend_position = 1.0 +parameters/turnToRun/blend_position = 1.0 +parameters/walking/blend_position = 1.0 +parameters/wallslideToJump/blend_position = 1.0 +parameters/wallsliding/blend_position = 1.0 [node name="BlobbymationPlayer" type="AnimationPlayer" parent="BlobbySprite"] playback_process_mode = 0 @@ -2093,17 +3892,28 @@ anims/RESET = SubResource( 17 ) anims/duckRun = SubResource( 67 ) anims/duckTurn = SubResource( 68 ) anims/ducking = SubResource( 69 ) +anims/duckingLeft = SubResource( 107 ) anims/falling = SubResource( 6 ) +anims/fallingLeft = SubResource( 106 ) anims/idleTurn = SubResource( 70 ) anims/idling = SubResource( 7 ) +anims/idlingLeft = SubResource( 103 ) anims/jumpToFall = SubResource( 71 ) +anims/jumpToFallLeft = SubResource( 105 ) anims/jumping = SubResource( 8 ) +anims/jumpingLeft = SubResource( 104 ) anims/runToJump = SubResource( 72 ) +anims/runToJumpLeft = SubResource( 143 ) anims/running = SubResource( 49 ) +anims/runningLeft = SubResource( 102 ) anims/turnToRun = SubResource( 58 ) +anims/turnToRunLeft = SubResource( 100 ) anims/walking = SubResource( 9 ) +anims/walkingLeft = SubResource( 99 ) anims/wallslideToJump = SubResource( 73 ) +anims/wallslideToJumpRight = SubResource( 101 ) anims/wallsliding = SubResource( 74 ) +anims/wallslidingRight = SubResource( 97 ) [node name="BlobbyBody" type="CollisionShape2D" parent="." groups=["player"]] position = Vector2( 0.0392303, -10.002 ) @@ -2159,15 +3969,13 @@ position = Vector2( 0, -1 ) [node name="Left_Wallcast1" type="RayCast2D" parent="WallRaycasts/LeftWallRaycast"] position = Vector2( -11.9763, -5 ) enabled = true -exclude_parent = false -cast_to = Vector2( -1, 0 ) +cast_to = Vector2( -1.5, 0 ) collision_mask = 56 [node name="Left_Wallcast2" type="RayCast2D" parent="WallRaycasts/LeftWallRaycast"] position = Vector2( -11.9763, 5 ) enabled = true -exclude_parent = false -cast_to = Vector2( -1, 0 ) +cast_to = Vector2( -1.5, 0 ) collision_mask = 56 [node name="RightWallRaycast" type="Node2D" parent="WallRaycasts"] @@ -2176,14 +3984,14 @@ collision_mask = 56 position = Vector2( 12.0551, -5 ) enabled = true exclude_parent = false -cast_to = Vector2( 1, 0 ) +cast_to = Vector2( 1.5, 0 ) collision_mask = 56 [node name="Right_Wallcast2" type="RayCast2D" parent="WallRaycasts/RightWallRaycast"] position = Vector2( 12.0551, 5 ) enabled = true exclude_parent = false -cast_to = Vector2( 1, 0 ) +cast_to = Vector2( 1.5, 0 ) collision_mask = 56 [connection signal="area_entered" from="BlobbySkin" to="." method="_on_BlobbySkin_area_entered"] diff --git a/src/Actors/Blobby/BlobbyStateMachine.gd b/src/Actors/Blobby/BlobbyStateMachine.gd index 838852a..cdd5b0c 100644 --- a/src/Actors/Blobby/BlobbyStateMachine.gd +++ b/src/Actors/Blobby/BlobbyStateMachine.gd @@ -8,7 +8,8 @@ export var init_boost = false export var init_boost_type = "" onready var jumpBufferTimer = $JumpBufferTimer onready var anim_player = parent.get_node("BlobbySprite/BlobbymationPlayer") -onready var anim_statemachine = parent.get_node("BlobbySprite/AnimationTree").get("parameters/playback") +onready var anim_state_playback = parent.get_node("BlobbySprite/AnimationTree").get("parameters/playback") +onready var anim_tree = parent.get_node("BlobbySprite/AnimationTree") onready var sprite = parent.get_node("BlobbySprite") var didTurn: bool @@ -61,7 +62,7 @@ func _state_logic(delta): didTurn = sprite.flip_h if direction.x < 0: - sprite.flip_h = true + anim_state_playback elif direction.x > 0: sprite.flip_h = false didTurn = sprite.flip_h != didTurn @@ -185,22 +186,22 @@ func _enter_state(new_state, old_state): match new_state: states.walk: if old_state == states.idle && didTurn: - anim_statemachine.travel("idleTurn") + anim_state_playback.travel("idleTurn") else: - anim_statemachine.travel("walking") + anim_state_playback.travel("walking") states.idle: - anim_statemachine.travel("idling") + anim_state_playback.travel("idling") states.duck: # TODO HA! H! HAAA! - anim_statemachine.travel("ducking") + anim_state_playback.travel("ducking") states.jump: - anim_statemachine.travel("jumping") + anim_state_playback.travel("jumping") states.fall: - anim_statemachine.travel("falling") + anim_state_playback.travel("falling") states.run: - anim_statemachine.travel("running") + anim_state_playback.travel("running") states.wallslide: - anim_statemachine.travel("wallsliding") + anim_state_playback.travel("wallsliding") @@ -210,9 +211,9 @@ func _exit_state(old_state, new_state): func _trigger_turn_animation(): match self.state: states.duck: - anim_statemachine.travel("duckTurn") + anim_state_playback.travel("duckTurn") states.walk: - anim_statemachine.travel("idleTurn") + anim_state_playback.travel("idleTurn") states.idle: - anim_statemachine.travel("idleTurn") + anim_state_playback.travel("idleTurn") \ No newline at end of file