From 41814fde8ac4601cafcb6dfdfb3c12076d10615d Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Sun, 21 Jul 2024 00:30:39 +0200 Subject: [PATCH] Make animations and wip anim tree --- animations/player/player_WalkLeft.res | Bin 0 -> 2811 bytes animations/player/player_WalkRight.res | Bin 0 -> 2716 bytes maps/gym.tscn | 10 +- player.gd | 7 +- player.tscn | 852 +++++++++++++++++++++---- 5 files changed, 742 insertions(+), 127 deletions(-) create mode 100644 animations/player/player_WalkLeft.res create mode 100644 animations/player/player_WalkRight.res diff --git a/animations/player/player_WalkLeft.res b/animations/player/player_WalkLeft.res new file mode 100644 index 0000000000000000000000000000000000000000..68f57aa4e89092f727fbc3c35f3d3b1bf1d43b68 GIT binary patch literal 2811 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 K6J-lud;bmL2)4Qa literal 0 HcmV?d00001 diff --git a/animations/player/player_WalkRight.res b/animations/player/player_WalkRight.res new file mode 100644 index 0000000000000000000000000000000000000000..577b3674e93c24da92785282002f23672be04ef8 GIT binary patch literal 2716 zcmZXWc|25KAII;Rv5Xnpj3Ijl8AA54^<<0|m8FJM5+f#tvBcO)8U2Q|C^YJakjhqe zW0HhyWnZ4MD}Kt7HZ4My=lZ>V|2)rgUa!wRpL@Qq`#I-z?)#qCr8?QzARxF&LeSJM z2(p52&`1ahhWmP0npJvhG)STt3u$CH>686O6p<-(W}D$@m7armMi6D=_S!*y{X0=| zPm8}C7K=>@nVx+mgeCCjYfA3t*+CA_UdRDCgSefR#3l!Oec#Q;m{AQTj|n@7m?TFt z)ygzDxZ*}iee5lWDMZlN-UlxW&B_Q$bcJ34IbH9kvD)F66DiLZ zK~J@0GI#`Yc7xY?iVWPucS2*{?UD-R3iH{>4=TvR>B=_yex~ zy188HflbYAY&?4S&<{T>%+XZ#^_-c)CZ;%G^l0@nHh6iE)mFuFTa z8za0P$y<4=l*UsiC61`2@u$+aDk5yi4Rz}$Y;cQ>?@^(s7UnT!-@SzNZ5_ygB+ipy z^G3JHTNT%03F-2*Id>#$px(IZLN2TKwykiq*1($~XSZqn1?fV}rNPvUylhfO)Cs

pT@hAC>DzaVgR!rfQ!?iw()R zGcOW?qLb>Q`dsR~eP`~3xExm-0)7>jJydM zUDy-@_Q5OomxwV0o-JcMv>r9ARjex&J9;7G8Ewx*-V%lu^mJ6WU;AH%CY56+Bj`1l zpwi{Xivj3EkR#*@Q4j1tjNfzE`IFVPLMS;P}6yEK-b=6TU_qaIw~K}6_Ypaw&)WMl8dn3 z5b3O5I$Gy3{kwdNI+>IocD%j!xe6}id85aq@__TiE%xVvoFWso6!pRf=K4r%T7U&k zg^Cxp7O+DQP>r6Kxl|!R!74wVkSFi)@1UEG*00IZQI;)%H$I1#^R9Xc$&XT6r26?e zj?VI(&y|aciHqM9%y;J!6%lmjBSR}sv%Fu2L`u4{S(eWBzu)$@Mfm$akE=SLkXhno ztd$m7P^~){sw(#__g}k%9$l{U7h}2J&qYKXM&}5xe7LpdB^2gvs&7H9=GL@L#Y771 ztv?t?-xFN-ioL!~=t=)yxkk+80KYrYoSfxb_f}RdopSmn%BSV;5@i!Y>z78%7Aw+P z8d>95I+ycFm`5Iy-*!Cm7AINBc1>mD;UjkH%x{~8x)fTw96ByHw``}=ROv+{({tNv z3(Frjrde1?j|~qwP1z;Zqr1mG7JkiZeS`M-a81v-3^y}5=|5*T=)A1O>S@es_uu~B zwMa}9+e_C={H~~K+qKL7M_1FUf4&40DTpH_2%on?uvm-$dMHGI9TG}Ule2;#w$)}$ z7*=o)BakHlo9k7Y6u3|av3G?W*e3>$_<9CFxmpU{CWr1-!iJrvb*tmx0Vf3+;kcH?HpI&kR6{1_lLpb$0GLyZ>XhYBWpD+^QS z4*g-<{{crc5EXAk9ZMuMYuekY#|q$*>{M_XI(Ae==f3XdJ>Hfb_BmlB74F5jM&BKr zH{Bp!`F=!ulw%c17W1e%IFTC|<5nBz^BG-O33Bi{_+PsnKW#OV>Qet)ok=cvLW&G^ z;faR*AxTR89-Uk|(wN{MPxs02%-E0RRLH0bZebYGlYUB@t%r2Ik|R4v*_1n!$+ay{ zOB8^leQp`Ff-kw+ulXe6&&(Rd>ztm@XkV%9;~$!KvwhX39x`2(ToF901u>r4A=r>LA@N12MRzD zC;?@#6{r9LPz7oLp$@hI4Ny-6nm`L|2MBGT19ZU-pa=AU0YDf6BVY``DHD>Z8N%Gc zvfI zN~cY}bPloQewDcbL8Xr3UIWze$hmu?nJcf`9DL_?o<$zY7|eIs*wfo`aOH=ufslSw zOZKJKuQIB#GiQ#DZ?}mpx<|V4_;AGhsoTR$x!5WN9bH??bco+vvg2*#1l1y==&8)z z8dh3t-O*Ztv2k6+Mr*8r*s}`K&(9fYSx58w<$1#M?sMhgUyARYI5~fvcA~cMBQ03# z(C{Y>j;L48`IwaoG3Q&d@k9on)bzvUp1F;c`+~Kh&WB6{Wg$tjvP$ZT@gBP4yY{&s kse0%|ta|wmmHg|3%S*Sf7k)wttYv?mB^-H0h5t+c1JMqTg#Z8m literal 0 HcmV?d00001 diff --git a/maps/gym.tscn b/maps/gym.tscn index dcb5795..fede0a7 100644 --- a/maps/gym.tscn +++ b/maps/gym.tscn @@ -8,7 +8,7 @@ [sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_dixrq"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_bjsqx"] -size = Vector2(114.609, 187.146) +size = Vector2(64.4614, 47.0722) [node name="Gym" type="Node2D"] y_sort_enabled = true @@ -17,19 +17,19 @@ y_sort_enabled = true environment = SubResource("Environment_iaiy2") camera_attributes = SubResource("CameraAttributesPractical_dixrq") -[node name="Node2D" parent="." instance=ExtResource("1_mkpg2")] -position = Vector2(-832, 87) +[node name="player" parent="." instance=ExtResource("1_mkpg2")] +position = Vector2(490, 44) floor_constant_speed = true [node name="StaticBody2D" type="StaticBody2D" parent="."] [node name="TreeSwamp01Sprt" type="Sprite2D" parent="StaticBody2D"] z_as_relative = false -position = Vector2(-832, -601) +position = Vector2(0, -993) scale = Vector2(4.06445, 4.06445) texture = ExtResource("2_hscig") [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] -position = Vector2(-783, -40) +position = Vector2(-3.8147e-06, -133) scale = Vector2(4.06445, 4.06445) shape = SubResource("RectangleShape2D_bjsqx") diff --git a/player.gd b/player.gd index e6cb906..f715c68 100644 --- a/player.gd +++ b/player.gd @@ -23,6 +23,11 @@ func _physics_process(delta): else: velocity.y = move_toward(velocity.y, 0, SPEED) - + #if velocity.x > 0: + #$AnimationPlayer.play("player_WalkRight") + #if velocity.x < 0 : + #$AnimationPlayer.play("player_WalkLeft") + #if (velocity.x == 0 and velocity.y == 0): + #$AnimationPlayer.play("idle") move_and_slide() diff --git a/player.tscn b/player.tscn index cea93e6..e777143 100644 --- a/player.tscn +++ b/player.tscn @@ -1,10 +1,12 @@ -[gd_scene load_steps=7 format=3 uid="uid://0m1hk2nu4bps"] +[gd_scene load_steps=21 format=3 uid="uid://0m1hk2nu4bps"] [ext_resource type="Script" path="res://player.gd" id="1_0pgv8"] [ext_resource type="Texture2D" uid="uid://cnye1wm5qc5fl" path="res://extracted/Texture2D/Archer Cloth.png" id="1_g5sjw"] +[ext_resource type="Animation" uid="uid://qx82tcyh0lpk" path="res://animations/player/player_WalkRight.res" id="3_81jr6"] +[ext_resource type="Animation" uid="uid://cfp1slusr0ph6" path="res://animations/player/player_WalkLeft.res" id="4_ft5dr"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_kapu3"] -size = Vector2(559, 873) +size = Vector2(194, 271.5) [sub_resource type="Animation" id="Animation_x4pvd"] length = 0.001 @@ -186,215 +188,837 @@ tracks/15/keys = { "points": PackedFloat32Array(-130, -0.25, 0, 0.25, 0), "times": PackedFloat32Array(0) } +tracks/16/type = "bezier" +tracks/16/imported = false +tracks/16/enabled = true +tracks/16/path = NodePath("Skeleton2D/hips/spine/head:scale:x") +tracks/16/interp = 1 +tracks/16/loop_wrap = true +tracks/16/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/17/type = "bezier" +tracks/17/imported = false +tracks/17/enabled = true +tracks/17/path = NodePath("Skeleton2D/hips/spine/head:scale:y") +tracks/17/interp = 1 +tracks/17/loop_wrap = true +tracks/17/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/18/type = "bezier" +tracks/18/imported = false +tracks/18/enabled = true +tracks/18/path = NodePath("body:scale:x") +tracks/18/interp = 1 +tracks/18/loop_wrap = true +tracks/18/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/19/type = "bezier" +tracks/19/imported = false +tracks/19/enabled = true +tracks/19/path = NodePath("body:scale:y") +tracks/19/interp = 1 +tracks/19/loop_wrap = true +tracks/19/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/20/type = "bezier" +tracks/20/imported = false +tracks/20/enabled = true +tracks/20/path = NodePath("Skeleton2D/hips/tail:scale:x") +tracks/20/interp = 1 +tracks/20/loop_wrap = true +tracks/20/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/21/type = "bezier" +tracks/21/imported = false +tracks/21/enabled = true +tracks/21/path = NodePath("Skeleton2D/hips/tail:scale:y") +tracks/21/interp = 1 +tracks/21/loop_wrap = true +tracks/21/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/22/type = "bezier" +tracks/22/imported = false +tracks/22/enabled = true +tracks/22/path = NodePath("head:scale:x") +tracks/22/interp = 1 +tracks/22/loop_wrap = true +tracks/22/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/23/type = "bezier" +tracks/23/imported = false +tracks/23/enabled = true +tracks/23/path = NodePath("head:scale:y") +tracks/23/interp = 1 +tracks/23/loop_wrap = true +tracks/23/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/24/type = "bezier" +tracks/24/imported = false +tracks/24/enabled = true +tracks/24/path = NodePath("head:position:x") +tracks/24/interp = 1 +tracks/24/loop_wrap = true +tracks/24/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(307, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/25/type = "bezier" +tracks/25/imported = false +tracks/25/enabled = true +tracks/25/path = NodePath("head:position:y") +tracks/25/interp = 1 +tracks/25/loop_wrap = true +tracks/25/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-936, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/26/type = "bezier" +tracks/26/imported = false +tracks/26/enabled = true +tracks/26/path = NodePath("Skeleton2D/hips/tail:position:x") +tracks/26/interp = 1 +tracks/26/loop_wrap = true +tracks/26/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(69, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/27/type = "bezier" +tracks/27/imported = false +tracks/27/enabled = true +tracks/27/path = NodePath("Skeleton2D/hips/tail:position:y") +tracks/27/interp = 1 +tracks/27/loop_wrap = true +tracks/27/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/28/type = "value" +tracks/28/imported = false +tracks/28/enabled = true +tracks/28/path = NodePath("armR:show_behind_parent") +tracks/28/interp = 1 +tracks/28/loop_wrap = true +tracks/28/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} +tracks/29/type = "bezier" +tracks/29/imported = false +tracks/29/enabled = true +tracks/29/path = NodePath("body:position:x") +tracks/29/interp = 1 +tracks/29/loop_wrap = true +tracks/29/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(162, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/30/type = "bezier" +tracks/30/imported = false +tracks/30/enabled = true +tracks/30/path = NodePath("body:position:y") +tracks/30/interp = 1 +tracks/30/loop_wrap = true +tracks/30/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-1080, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/31/type = "value" +tracks/31/imported = false +tracks/31/enabled = true +tracks/31/path = NodePath("armL:show_behind_parent") +tracks/31/interp = 1 +tracks/31/loop_wrap = true +tracks/31/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} +tracks/32/type = "bezier" +tracks/32/imported = false +tracks/32/enabled = true +tracks/32/path = NodePath("tail:scale:x") +tracks/32/interp = 1 +tracks/32/loop_wrap = true +tracks/32/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/33/type = "bezier" +tracks/33/imported = false +tracks/33/enabled = true +tracks/33/path = NodePath("tail:scale:y") +tracks/33/interp = 1 +tracks/33/loop_wrap = true +tracks/33/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/34/type = "bezier" +tracks/34/imported = false +tracks/34/enabled = true +tracks/34/path = NodePath("tail:position:x") +tracks/34/interp = 1 +tracks/34/loop_wrap = true +tracks/34/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(837, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/35/type = "bezier" +tracks/35/imported = false +tracks/35/enabled = true +tracks/35/path = NodePath("tail:position:y") +tracks/35/interp = 1 +tracks/35/loop_wrap = true +tracks/35/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-885, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/36/type = "bezier" +tracks/36/imported = false +tracks/36/enabled = true +tracks/36/path = NodePath("Skeleton2D/hips/legL:scale:x") +tracks/36/interp = 1 +tracks/36/loop_wrap = true +tracks/36/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0.999999, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/37/type = "bezier" +tracks/37/imported = false +tracks/37/enabled = true +tracks/37/path = NodePath("Skeleton2D/hips/legL:scale:y") +tracks/37/interp = 1 +tracks/37/loop_wrap = true +tracks/37/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0.999999, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/38/type = "bezier" +tracks/38/imported = false +tracks/38/enabled = true +tracks/38/path = NodePath("legR:position:x") +tracks/38/interp = 1 +tracks/38/loop_wrap = true +tracks/38/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-879, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/39/type = "bezier" +tracks/39/imported = false +tracks/39/enabled = true +tracks/39/path = NodePath("legR:position:y") +tracks/39/interp = 1 +tracks/39/loop_wrap = true +tracks/39/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-1024.37, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/40/type = "bezier" +tracks/40/imported = false +tracks/40/enabled = true +tracks/40/path = NodePath("legR:scale:x") +tracks/40/interp = 1 +tracks/40/loop_wrap = true +tracks/40/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/41/type = "bezier" +tracks/41/imported = false +tracks/41/enabled = true +tracks/41/path = NodePath("legR:scale:y") +tracks/41/interp = 1 +tracks/41/loop_wrap = true +tracks/41/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/42/type = "bezier" +tracks/42/imported = false +tracks/42/enabled = true +tracks/42/path = NodePath("legL:position:x") +tracks/42/interp = 1 +tracks/42/loop_wrap = true +tracks/42/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-991, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/43/type = "bezier" +tracks/43/imported = false +tracks/43/enabled = true +tracks/43/path = NodePath("legL:position:y") +tracks/43/interp = 1 +tracks/43/loop_wrap = true +tracks/43/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-1024.37, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/44/type = "bezier" +tracks/44/imported = false +tracks/44/enabled = true +tracks/44/path = NodePath("legL:scale:x") +tracks/44/interp = 1 +tracks/44/loop_wrap = true +tracks/44/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/45/type = "bezier" +tracks/45/imported = false +tracks/45/enabled = true +tracks/45/path = NodePath("legL:scale:y") +tracks/45/interp = 1 +tracks/45/loop_wrap = true +tracks/45/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/46/type = "bezier" +tracks/46/imported = false +tracks/46/enabled = true +tracks/46/path = NodePath("Skeleton2D/hips/spine:rotation") +tracks/46/interp = 1 +tracks/46/loop_wrap = true +tracks/46/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/47/type = "bezier" +tracks/47/imported = false +tracks/47/enabled = true +tracks/47/path = NodePath("Skeleton2D/hips/spine/head:position:x") +tracks/47/interp = 1 +tracks/47/loop_wrap = true +tracks/47/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(4, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/48/type = "bezier" +tracks/48/imported = false +tracks/48/enabled = true +tracks/48/path = NodePath("Skeleton2D/hips/spine/head:position:y") +tracks/48/interp = 1 +tracks/48/loop_wrap = true +tracks/48/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-69, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/49/type = "bezier" +tracks/49/imported = false +tracks/49/enabled = true +tracks/49/path = NodePath("Skeleton2D/hips/spine/head/head:position:x") +tracks/49/interp = 1 +tracks/49/loop_wrap = true +tracks/49/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(4, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/50/type = "bezier" +tracks/50/imported = false +tracks/50/enabled = true +tracks/50/path = NodePath("Skeleton2D/hips/spine/head/head:position:y") +tracks/50/interp = 1 +tracks/50/loop_wrap = true +tracks/50/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-69, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/51/type = "bezier" +tracks/51/imported = false +tracks/51/enabled = true +tracks/51/path = NodePath("Skeleton2D/hips/spine/head/head:rotation") +tracks/51/interp = 1 +tracks/51/loop_wrap = true +tracks/51/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/52/type = "bezier" +tracks/52/imported = false +tracks/52/enabled = true +tracks/52/path = NodePath("Skeleton2D/hips/legL:position:x") +tracks/52/interp = 1 +tracks/52/loop_wrap = true +tracks/52/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-48, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/53/type = "bezier" +tracks/53/imported = false +tracks/53/enabled = true +tracks/53/path = NodePath("Skeleton2D/hips/legL:position:y") +tracks/53/interp = 1 +tracks/53/loop_wrap = true +tracks/53/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(67, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} -[sub_resource type="Animation" id="Animation_mdinq"] -resource_name = "player_walk" +[sub_resource type="Animation" id="Animation_clnds"] +resource_name = "idle" +length = 0.25 loop_mode = 1 -tracks/0/type = "value" +tracks/0/type = "bezier" tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("Skeleton2D/hips/legL:position") +tracks/0/enabled = false +tracks/0/path = NodePath("head:scale:x") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { -"times": PackedFloat32Array(0, 1), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [Vector2(-88, 63), Vector2(96, 67)] +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } -tracks/1/type = "value" +tracks/1/type = "bezier" tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("Skeleton2D/hips/legL:rotation") +tracks/1/enabled = false +tracks/1/path = NodePath("head:scale:y") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { -"times": PackedFloat32Array(0, 1), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [0.632771, -0.248813] +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/2/type = "bezier" tracks/2/imported = false -tracks/2/enabled = true -tracks/2/path = NodePath("Skeleton2D/hips/legR:position:x") +tracks/2/enabled = false +tracks/2/path = NodePath("head:position:x") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { -"handle_modes": PackedInt32Array(0, 0), -"points": PackedFloat32Array(77.535, -0.25, 0, 0.25, 0, -76, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-271, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/3/type = "bezier" tracks/3/imported = false -tracks/3/enabled = true -tracks/3/path = NodePath("Skeleton2D/hips/legR:position:y") +tracks/3/enabled = false +tracks/3/path = NodePath("head:position:y") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { -"handle_modes": PackedInt32Array(0, 0), -"points": PackedFloat32Array(64, -0.25, 0, 0.25, 0, 62, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-948, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/4/type = "bezier" tracks/4/imported = false tracks/4/enabled = true -tracks/4/path = NodePath("Skeleton2D/hips/legR:rotation") +tracks/4/path = NodePath("Skeleton2D/hips/spine:position:x") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { -"handle_modes": PackedInt32Array(0, 0), -"points": PackedFloat32Array(-0.261799, -0.25, 0, 0.25, 0, 0.528498, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-3, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/5/type = "bezier" tracks/5/imported = false tracks/5/enabled = true -tracks/5/path = NodePath("Skeleton2D/hips/spine/armL:position:x") +tracks/5/path = NodePath("Skeleton2D/hips/spine:position:y") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { -"handle_modes": PackedInt32Array(0, 0, 0), -"points": PackedFloat32Array(-113.116, -0.25, 0, 0.25, 0, -100.884, -0.25, 0, 0.25, 0, -113.116, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 0.5, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-130, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/6/type = "bezier" tracks/6/imported = false tracks/6/enabled = true -tracks/6/path = NodePath("Skeleton2D/hips/spine/armL:position:y") +tracks/6/path = NodePath("Skeleton2D/hips/spine:rotation") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { -"handle_modes": PackedInt32Array(0, 0, 0), -"points": PackedFloat32Array(42.1773, -0.25, 0, 0.25, 0, 49.8227, -0.25, 0, 0.25, 0, 42.1773, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 0.6, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/7/type = "bezier" tracks/7/imported = false tracks/7/enabled = true -tracks/7/path = NodePath("Skeleton2D/hips/spine/armL:rotation") +tracks/7/path = NodePath("Skeleton2D/hips/spine/head:position:x") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { "handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"points": PackedFloat32Array(4, -0.25, 0, 0.25, 0), "times": PackedFloat32Array(0) } tracks/8/type = "bezier" tracks/8/imported = false tracks/8/enabled = true -tracks/8/path = NodePath("Skeleton2D/hips/spine/armR:position:x") +tracks/8/path = NodePath("Skeleton2D/hips/spine/head:position:y") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { -"handle_modes": PackedInt32Array(0, 0, 0), -"points": PackedFloat32Array(127, -0.25, 0, 0.25, 0, 87, -0.25, 0, 0.25, 0, 127, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 0.6, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-69, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/9/type = "bezier" tracks/9/imported = false tracks/9/enabled = true -tracks/9/path = NodePath("Skeleton2D/hips/spine/armR:position:y") +tracks/9/path = NodePath("Skeleton2D/hips/spine/head:rotation") tracks/9/interp = 1 tracks/9/loop_wrap = true tracks/9/keys = { -"handle_modes": PackedInt32Array(0, 0, 0), -"points": PackedFloat32Array(79, -0.25, 0, 0.25, 0, 72, -0.25, 0, 0.25, 0, 79, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 0.5, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/10/type = "bezier" tracks/10/imported = false tracks/10/enabled = true -tracks/10/path = NodePath("Skeleton2D/hips/spine/armR:rotation") +tracks/10/path = NodePath("Skeleton2D/hips/spine/head/head:position:x") tracks/10/interp = 1 tracks/10/loop_wrap = true tracks/10/keys = { "handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"points": PackedFloat32Array(4, -0.25, 0, 0.25, 0), "times": PackedFloat32Array(0) } tracks/11/type = "bezier" tracks/11/imported = false tracks/11/enabled = true -tracks/11/path = NodePath("Skeleton2D/hips/spine/head:rotation") +tracks/11/path = NodePath("Skeleton2D/hips/spine/head/head:position:y") tracks/11/interp = 1 tracks/11/loop_wrap = true tracks/11/keys = { -"handle_modes": PackedInt32Array(0, 0, 0), -"points": PackedFloat32Array(0.1309, -0.25, 0, 0.25, 0, -0.1309, -0.25, 0, 0.25, 0, 0.131, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 0.5, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-69, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/12/type = "bezier" tracks/12/imported = false tracks/12/enabled = true -tracks/12/path = NodePath("Skeleton2D/hips/tail:rotation") +tracks/12/path = NodePath("Skeleton2D/hips/spine/head/head:rotation") tracks/12/interp = 1 tracks/12/loop_wrap = true tracks/12/keys = { -"handle_modes": PackedInt32Array(0, 0, 0), -"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, -0.172155, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 0.4, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/13/type = "bezier" tracks/13/imported = false tracks/13/enabled = true -tracks/13/path = NodePath("armL:z_index") +tracks/13/path = NodePath("Skeleton2D/hips/spine/armL:position:x") tracks/13/interp = 1 tracks/13/loop_wrap = true tracks/13/keys = { "handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(-2, -0.25, 0, 0.25, 0), +"points": PackedFloat32Array(-105, -0.25, 0, 0.25, 0), "times": PackedFloat32Array(0) } tracks/14/type = "bezier" tracks/14/imported = false tracks/14/enabled = true -tracks/14/path = NodePath("Skeleton2D/hips/spine:position:x") +tracks/14/path = NodePath("Skeleton2D/hips/spine/armL:position:y") tracks/14/interp = 1 tracks/14/loop_wrap = true tracks/14/keys = { -"handle_modes": PackedInt32Array(0, 0, 0), -"points": PackedFloat32Array(-3, -0.25, 0, 0.25, 0, 0, -0.25, 0, 0.25, 0, -3, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 0.5, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(51, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } tracks/15/type = "bezier" tracks/15/imported = false tracks/15/enabled = true -tracks/15/path = NodePath("Skeleton2D/hips/spine:position:y") +tracks/15/path = NodePath("Skeleton2D/hips/spine/armL:rotation") tracks/15/interp = 1 tracks/15/loop_wrap = true tracks/15/keys = { -"handle_modes": PackedInt32Array(0, 0, 0), -"points": PackedFloat32Array(-130, -0.25, 0, 0.25, 0, -152, -0.25, 0, 0.25, 0, -130, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0, 0.6, 1) +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/16/type = "bezier" +tracks/16/imported = false +tracks/16/enabled = true +tracks/16/path = NodePath("Skeleton2D/hips/spine/armR:position:x") +tracks/16/interp = 1 +tracks/16/loop_wrap = true +tracks/16/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(127, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/17/type = "bezier" +tracks/17/imported = false +tracks/17/enabled = true +tracks/17/path = NodePath("Skeleton2D/hips/spine/armR:position:y") +tracks/17/interp = 1 +tracks/17/loop_wrap = true +tracks/17/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(79, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/18/type = "bezier" +tracks/18/imported = false +tracks/18/enabled = true +tracks/18/path = NodePath("Skeleton2D/hips/spine/armR:rotation") +tracks/18/interp = 1 +tracks/18/loop_wrap = true +tracks/18/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/19/type = "bezier" +tracks/19/imported = false +tracks/19/enabled = true +tracks/19/path = NodePath("Skeleton2D/hips/tail:position:x") +tracks/19/interp = 1 +tracks/19/loop_wrap = true +tracks/19/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(70, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/20/type = "bezier" +tracks/20/imported = false +tracks/20/enabled = true +tracks/20/path = NodePath("Skeleton2D/hips/tail:position:y") +tracks/20/interp = 1 +tracks/20/loop_wrap = true +tracks/20/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-7, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/21/type = "bezier" +tracks/21/imported = false +tracks/21/enabled = true +tracks/21/path = NodePath("Skeleton2D/hips/tail:rotation") +tracks/21/interp = 1 +tracks/21/loop_wrap = true +tracks/21/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/22/type = "bezier" +tracks/22/imported = false +tracks/22/enabled = true +tracks/22/path = NodePath("Skeleton2D/hips/legL:position:x") +tracks/22/interp = 1 +tracks/22/loop_wrap = true +tracks/22/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-48, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/23/type = "bezier" +tracks/23/imported = false +tracks/23/enabled = true +tracks/23/path = NodePath("Skeleton2D/hips/legL:position:y") +tracks/23/interp = 1 +tracks/23/loop_wrap = true +tracks/23/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(67, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/24/type = "bezier" +tracks/24/imported = false +tracks/24/enabled = true +tracks/24/path = NodePath("Skeleton2D/hips/legL:rotation") +tracks/24/interp = 1 +tracks/24/loop_wrap = true +tracks/24/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/25/type = "bezier" +tracks/25/imported = false +tracks/25/enabled = true +tracks/25/path = NodePath("Skeleton2D/hips/legR:position:x") +tracks/25/interp = 1 +tracks/25/loop_wrap = true +tracks/25/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(66, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/26/type = "bezier" +tracks/26/imported = false +tracks/26/enabled = true +tracks/26/path = NodePath("Skeleton2D/hips/legR:position:y") +tracks/26/interp = 1 +tracks/26/loop_wrap = true +tracks/26/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(64, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/27/type = "bezier" +tracks/27/imported = false +tracks/27/enabled = true +tracks/27/path = NodePath("Skeleton2D/hips/legR:rotation") +tracks/27/interp = 1 +tracks/27/loop_wrap = true +tracks/27/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } [sub_resource type="AnimationLibrary" id="AnimationLibrary_ecer3"] _data = { "RESET": SubResource("Animation_x4pvd"), -"player_walk": SubResource("Animation_mdinq") +"idle": SubResource("Animation_clnds"), +"player_WalkLeft": ExtResource("4_ft5dr"), +"player_WalkRight": ExtResource("3_81jr6") } +[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_foeln"] +graph_offset = Vector2(-203, 84) + +[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_45j02"] + +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_3rwcd"] +animation = &"idle" + +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_f1xht"] +animation = &"player_WalkLeft" + +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_mf6vk"] +animation = &"player_WalkRight" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_gvum5"] +advance_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2li1n"] +advance_mode = 2 + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_hdjxb"] +advance_mode = 2 +advance_condition = &"velocity.x > 0" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_p5mwt"] +advance_mode = 2 +advance_expression = "velocity.x > 0 or velocity.y != 0" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_b0kei"] +advance_mode = 2 +advance_condition = &"velocity.x == 0" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_qxqk3"] +advance_mode = 2 +advance_expression = "velocity.x == 0 and velocity.y == 0" + +[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_dvafu"] +states/BlendTree/node = SubResource("AnimationNodeBlendTree_foeln") +states/BlendTree/position = Vector2(641, 190) +states/End/position = Vector2(107, 297) +states/Start/position = Vector2(107, 86) +states/StateMachine/node = SubResource("AnimationNodeStateMachine_45j02") +states/StateMachine/position = Vector2(551, 94) +states/idle/node = SubResource("AnimationNodeAnimation_3rwcd") +states/idle/position = Vector2(107, 168) +states/player_WalkLeft/node = SubResource("AnimationNodeAnimation_f1xht") +states/player_WalkLeft/position = Vector2(334, 110) +states/player_WalkRight/node = SubResource("AnimationNodeAnimation_mf6vk") +states/player_WalkRight/position = Vector2(296, 233) +transitions = ["idle", "End", SubResource("AnimationNodeStateMachineTransition_gvum5"), "Start", "idle", SubResource("AnimationNodeStateMachineTransition_2li1n"), "idle", "player_WalkRight", SubResource("AnimationNodeStateMachineTransition_hdjxb"), "idle", "player_WalkLeft", SubResource("AnimationNodeStateMachineTransition_p5mwt"), "player_WalkRight", "idle", SubResource("AnimationNodeStateMachineTransition_b0kei"), "player_WalkLeft", "idle", SubResource("AnimationNodeStateMachineTransition_qxqk3")] +graph_offset = Vector2(-325, 60) + [node name="Node2D" type="CharacterBody2D"] script = ExtResource("1_0pgv8") [node name="CollisionShape2D" type="CollisionShape2D" parent="."] -z_index = 2 -position = Vector2(0, -441) +position = Vector2(-1, -152) shape = SubResource("RectangleShape2D_kapu3") -[node name="head" type="Polygon2D" parent="."] -z_index = 1 -position = Vector2(-261, -934.368) +[node name="legL" type="Polygon2D" parent="."] +position = Vector2(-991, -1024.37) texture = ExtResource("1_g5sjw") skeleton = NodePath("../Skeleton2D") invert_border = 409.1 -polygon = PackedVector2Array(448.684, 260.526, 448.684, 261.842, 428.947, 343.421, 476.316, 471.053, 457.895, 575, 368.421, 627.632, 267.105, 638.158, 103.947, 622.368, 39.4737, 585.526, 25, 519.737, 35.5263, 460.526, 101.316, 427.632, 146.053, 317.105, 197.368, 294.737, 143.421, 188.158, 139.474, 90.7895, 173.684, 47.3684, 256.579, 76.3158, 306.579, 155.263, 355.263, 59.2105, 413.158, 56.5789, 447.368, 134.211) -uv = PackedVector2Array(448.684, 260.526, 448.684, 261.842, 428.947, 343.421, 476.316, 471.053, 457.895, 575, 368.421, 627.632, 267.105, 638.158, 103.947, 622.368, 39.4737, 585.526, 25, 519.737, 35.5263, 460.526, 101.316, 427.632, 146.053, 317.105, 197.368, 294.737, 143.421, 188.158, 139.474, 90.7895, 173.684, 47.3684, 256.579, 76.3158, 306.579, 155.263, 355.263, 59.2105, 413.158, 56.5789, 447.368, 134.211) -bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)] +polygon = PackedVector2Array(842.105, 867.105, 847.368, 1021.05, 1040.79, 1018.42, 1035.53, 844.737, 847.368, 852.632) +uv = PackedVector2Array(842.105, 867.105, 847.368, 1021.05, 1040.79, 1018.42, 1035.53, 844.737, 847.368, 852.632) +bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(1, 1, 1, 1, 1), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0)] + +[node name="legR" type="Polygon2D" parent="."] +position = Vector2(-879, -1024.37) +texture = ExtResource("1_g5sjw") +skeleton = NodePath("../Skeleton2D") +invert_border = 409.1 +polygon = PackedVector2Array(842.105, 867.105, 847.368, 1021.05, 1040.79, 1018.42, 1035.53, 844.737, 847.368, 852.632) +uv = PackedVector2Array(842.105, 867.105, 847.368, 1021.05, 1040.79, 1018.42, 1035.53, 844.737, 847.368, 852.632) +bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(1, 1, 1, 1, 1)] + +[node name="tail" type="Polygon2D" parent="."] +position = Vector2(837, -885) +scale = Vector2(-1, 1) +texture = ExtResource("1_g5sjw") +skeleton = NodePath("../Skeleton2D") +invert_border = 409.1 +polygon = PackedVector2Array(750, 682.895, 756.579, 838.158, 1014.47, 830.263, 1015.79, 639.474, 750, 651.316) +uv = PackedVector2Array(750, 682.895, 756.579, 838.158, 1014.47, 830.263, 1015.79, 639.474, 750, 651.316) +bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(1, 1, 1, 1, 1), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0)] [node name="body" type="Polygon2D" parent="."] -position = Vector2(-141, -1094.37) +position = Vector2(162, -1080) texture = ExtResource("1_g5sjw") skeleton = NodePath("../Skeleton2D") invert_border = 409.1 @@ -402,6 +1026,16 @@ polygon = PackedVector2Array(114.474, 719.737, 36.8421, 810.526, 10.5263, 918.42 uv = PackedVector2Array(114.474, 719.737, 36.8421, 810.526, 10.5263, 918.421, 25, 992.105, 90.7895, 1009.21, 188.158, 1009.21, 268.421, 976.316, 289.474, 903.947, 369.737, 844.737, 369.737, 752.632, 305.263, 702.632, 173.684, 681.579) bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)] +[node name="armR" type="Polygon2D" parent="."] +show_behind_parent = true +position = Vector2(-647, -1138.37) +texture = ExtResource("1_g5sjw") +skeleton = NodePath("../Skeleton2D") +invert_border = 409.1 +polygon = PackedVector2Array(742.105, 865.789, 696.053, 928.947, 721.053, 1002.63, 802.632, 1011.84, 863.158, 976.316, 846.053, 881.579) +uv = PackedVector2Array(742.105, 865.789, 696.053, 928.947, 721.053, 1002.63, 802.632, 1011.84, 863.158, 976.316, 846.053, 881.579) +bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(1, 1, 1, 1, 1, 1), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0, 0)] + [node name="armL" type="Polygon2D" parent="."] position = Vector2(-877, -1160.37) texture = ExtResource("1_g5sjw") @@ -411,45 +1045,14 @@ polygon = PackedVector2Array(742.105, 865.789, 696.053, 928.947, 721.053, 1002.6 uv = PackedVector2Array(742.105, 865.789, 696.053, 928.947, 721.053, 1002.63, 802.632, 1011.84, 863.158, 976.316, 846.053, 881.579) bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0.5, 0.5, 0.5, 0.5, 0.5, 0.5), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0, 0)] -[node name="armR" type="Polygon2D" parent="."] -z_index = 1 -position = Vector2(-647, -1138.37) +[node name="head" type="Polygon2D" parent="."] +position = Vector2(307, -936) texture = ExtResource("1_g5sjw") skeleton = NodePath("../Skeleton2D") invert_border = 409.1 -polygon = PackedVector2Array(742.105, 865.789, 696.053, 928.947, 721.053, 1002.63, 802.632, 1011.84, 863.158, 976.316, 846.053, 881.579) -uv = PackedVector2Array(742.105, 865.789, 696.053, 928.947, 721.053, 1002.63, 802.632, 1011.84, 863.158, 976.316, 846.053, 881.579) -bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(1, 1, 1, 1, 1, 1), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0, 0)] - -[node name="legL" type="Polygon2D" parent="."] -z_index = -1 -position = Vector2(-991, -1024.37) -texture = ExtResource("1_g5sjw") -skeleton = NodePath("../Skeleton2D") -invert_border = 409.1 -polygon = PackedVector2Array(842.105, 867.105, 847.368, 1021.05, 1040.79, 1018.42, 1035.53, 844.737, 847.368, 852.632) -uv = PackedVector2Array(842.105, 867.105, 847.368, 1021.05, 1040.79, 1018.42, 1035.53, 844.737, 847.368, 852.632) -bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(1, 1, 1, 1, 1), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0)] - -[node name="legR" type="Polygon2D" parent="."] -z_index = -1 -position = Vector2(-879, -1024.37) -texture = ExtResource("1_g5sjw") -skeleton = NodePath("../Skeleton2D") -invert_border = 409.1 -polygon = PackedVector2Array(842.105, 867.105, 847.368, 1021.05, 1040.79, 1018.42, 1035.53, 844.737, 847.368, 852.632) -uv = PackedVector2Array(842.105, 867.105, 847.368, 1021.05, 1040.79, 1018.42, 1035.53, 844.737, 847.368, 852.632) -bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(1, 1, 1, 1, 1)] - -[node name="tail" type="Polygon2D" parent="."] -z_index = -2 -position = Vector2(-709, -912.368) -texture = ExtResource("1_g5sjw") -skeleton = NodePath("../Skeleton2D") -invert_border = 409.1 -polygon = PackedVector2Array(750, 682.895, 756.579, 838.158, 1014.47, 830.263, 1015.79, 639.474, 750, 651.316) -uv = PackedVector2Array(750, 682.895, 756.579, 838.158, 1014.47, 830.263, 1015.79, 639.474, 750, 651.316) -bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(1, 1, 1, 1, 1), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0)] +polygon = PackedVector2Array(448.684, 260.526, 448.684, 261.842, 428.947, 343.421, 476.316, 471.053, 457.895, 575, 368.421, 627.632, 267.105, 638.158, 103.947, 622.368, 39.4737, 585.526, 25, 519.737, 35.5263, 460.526, 101.316, 427.632, 146.053, 317.105, 197.368, 294.737, 143.421, 188.158, 139.474, 90.7895, 173.684, 47.3684, 256.579, 76.3158, 306.579, 155.263, 355.263, 59.2105, 413.158, 56.5789, 447.368, 134.211) +uv = PackedVector2Array(448.684, 260.526, 448.684, 261.842, 428.947, 343.421, 476.316, 471.053, 457.895, 575, 368.421, 627.632, 267.105, 638.158, 103.947, 622.368, 39.4737, 585.526, 25, 519.737, 35.5263, 460.526, 101.316, 427.632, 146.053, 317.105, 197.368, 294.737, 143.421, 188.158, 139.474, 90.7895, 173.684, 47.3684, 256.579, 76.3158, 306.579, 155.263, 355.263, 59.2105, 413.158, 56.5789, 447.368, 134.211) +bones = ["hips", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/spine", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/spine/head", PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), "hips/spine/armL", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/spine/armR", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/tail", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/legL", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), "hips/legR", PackedFloat32Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)] [node name="Skeleton2D" type="Skeleton2D" parent="."] position = Vector2(-236, -848) @@ -464,7 +1067,6 @@ rest = Transform2D(1, 0, 0, 1, -3, -130) [node name="head" type="Bone2D" parent="Skeleton2D/hips/spine"] position = Vector2(4, -69) -scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, 4, -69) [node name="head" type="Bone2D" parent="Skeleton2D/hips/spine/head"] @@ -480,8 +1082,8 @@ position = Vector2(127, 79) rest = Transform2D(1, 0, 0, 1, 127, 79) [node name="tail" type="Bone2D" parent="Skeleton2D/hips"] -position = Vector2(70, -7) -scale = Vector2(0.999999, 0.999999) +position = Vector2(69, 0) +scale = Vector2(-1, 1) rest = Transform2D(1, 0, 0, 1, 70, -7) [node name="legL" type="Bone2D" parent="Skeleton2D/hips"] @@ -491,14 +1093,22 @@ rest = Transform2D(1, 0, 0, 1, -48, 67) [node name="legR" type="Bone2D" parent="Skeleton2D/hips"] position = Vector2(66, 64) -scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, 66, 64) [node name="AnimationPlayer" type="AnimationPlayer" parent="."] libraries = { "": SubResource("AnimationLibrary_ecer3") } -autoplay = "player_walk" +autoplay = "player_WalkLeft" +playback_default_blend_time = 0.3 + +[node name="AnimationTree" type="AnimationTree" parent="AnimationPlayer"] +deterministic = false +root_node = NodePath("../..") +tree_root = SubResource("AnimationNodeStateMachine_dvafu") +anim_player = NodePath("..") +"parameters/conditions/velocity.x == 0" = false +"parameters/conditions/velocity.x > 0" = false [node name="Camera2D" type="Camera2D" parent="."] position = Vector2(-1, -299)