From fdd3402377e2bbf59b275a5ec4062b5e7ea5ccda Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 14:14:07 +0200 Subject: [PATCH 01/11] Add new control --- project.godot | 61 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 59 insertions(+), 2 deletions(-) diff --git a/project.godot b/project.godot index fe48aa8..53b0d25 100644 --- a/project.godot +++ b/project.godot @@ -16,9 +16,66 @@ run/main_scene="res://maps/gym.tscn" config/features=PackedStringArray("4.2", "Mobile") config/icon="res://extracted/Texture2D/Map.png" -[editor_plugins] +[editor] -enabled=PackedStringArray("res://addons/modular_sprite_animation_factory/plugin.cfg") +version_control/plugin_name="GitPlugin" +version_control/autoload_on_startup=true + +[input] + +move_up={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":-1.0,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":122,"echo":false,"script":null) +] +} +move_down={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":1.0,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"echo":false,"script":null) +] +} +move_left={ +"deadzone": 0.5, +"events": [Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":-1.0,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":113,"echo":false,"script":null) +] +} +move_right={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":1.0,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"echo":false,"script":null) +] +} +sticker_mode={ +"deadzone": 0.5, +"events": [Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":4,"axis_value":1.0,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194326,"key_label":0,"unicode":0,"echo":false,"script":null) +] +} +select={ +"deadzone": 0.5, +"events": [Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":true,"script":null) +, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":1,"position":Vector2(143, 14),"global_position":Vector2(147, 55),"factor":1.0,"button_index":1,"canceled":false,"pressed":true,"double_click":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194309,"key_label":0,"unicode":0,"echo":false,"script":null) +] +} +back={ +"deadzone": 0.5, +"events": [Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":1,"pressure":0.0,"pressed":true,"script":null) +, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":2,"position":Vector2(104, 15),"global_position":Vector2(108, 56),"factor":1.0,"button_index":2,"canceled":false,"pressed":true,"double_click":false,"script":null) +] +} +menu={ +"deadzone": 0.5, +"events": [Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":6,"pressure":0.0,"pressed":true,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194305,"key_label":0,"unicode":0,"echo":false,"script":null) +] +} [rendering] From d124fa594bc7892fa517adb104f87f924c052306 Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 16:48:39 +0200 Subject: [PATCH 02/11] New layout for player/character --- .gitattributes | 1 + player.gd | 18 +- player.tscn | 1220 ++++------------------------- player/archer.png | 3 + player/archer.png.import | 34 + player/currentCloth.tres | 6 + player/hermandad-beige.png | 3 + player/hermandad-beige.png.import | 34 + player/hermandad-black.png | 3 + player/hermandad-black.png.import | 34 + player/hermandad-brown.png | 3 + player/hermandad-brown.png.import | 34 + player/player-layout.jpg | Bin 0 -> 45825 bytes player/player-layout.jpg.import | 34 + player/witch.png | 3 + player/witch.png.import | 34 + source/player_skins.psd | 3 + 17 files changed, 367 insertions(+), 1100 deletions(-) create mode 100644 player/archer.png create mode 100644 player/archer.png.import create mode 100644 player/currentCloth.tres create mode 100644 player/hermandad-beige.png create mode 100644 player/hermandad-beige.png.import create mode 100644 player/hermandad-black.png create mode 100644 player/hermandad-black.png.import create mode 100644 player/hermandad-brown.png create mode 100644 player/hermandad-brown.png.import create mode 100644 player/player-layout.jpg create mode 100644 player/player-layout.jpg.import create mode 100644 player/witch.png create mode 100644 player/witch.png.import create mode 100644 source/player_skins.psd diff --git a/.gitattributes b/.gitattributes index bf39de4..ef4fabd 100644 --- a/.gitattributes +++ b/.gitattributes @@ -6,3 +6,4 @@ *.material filter=lfs diff=lfs merge=lfs -text *.anim filter=lfs diff=lfs merge=lfs -text *.mesh filter=lfs diff=lfs merge=lfs -text +*.psd filter=lfs diff=lfs merge=lfs -text diff --git a/player.gd b/player.gd index f715c68..a0bda13 100644 --- a/player.gd +++ b/player.gd @@ -8,26 +8,20 @@ const SPEED = 500.0 func _physics_process(delta): +#region Movement # Get the input direction and handle the movement/deceleration. # As good practice, you should replace UI actions with custom gameplay actions. - var directionX = Input.get_axis("ui_left", "ui_right") - var directionY = Input.get_axis("ui_up", "ui_down") + var directionX = Input.get_axis("move_left", "move_right") + var directionY = Input.get_axis("move_up", "move_down") + if directionX : velocity.x = directionX * SPEED else: velocity.x = move_toward(velocity.x, 0, SPEED) - - if directionY: velocity.y = directionY * SPEED 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") - +#endregion + move_and_slide() diff --git a/player.tscn b/player.tscn index e777143..25cc803 100644 --- a/player.tscn +++ b/player.tscn @@ -1,1116 +1,160 @@ -[gd_scene load_steps=21 format=3 uid="uid://0m1hk2nu4bps"] +[gd_scene load_steps=17 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"] +[ext_resource type="Texture2D" uid="uid://5pmqr3y62guu" path="res://player/currentCloth.tres" id="2_45h8h"] +[ext_resource type="Texture2D" uid="uid://hc35pmqglb14" path="res://extracted/Texture2D/Whitch Hat.png" id="3_bsp0f"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_kapu3"] -size = Vector2(194, 271.5) +size = Vector2(192, 256) -[sub_resource type="Animation" id="Animation_x4pvd"] -length = 0.001 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("Skeleton2D/hips/legL:position") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector2(-48, 67)] -} -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("Skeleton2D/hips/legL:rotation") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [0.0] -} -tracks/2/type = "bezier" -tracks/2/imported = false -tracks/2/enabled = true -tracks/2/path = NodePath("Skeleton2D/hips/legR:position:x") -tracks/2/interp = 1 -tracks/2/loop_wrap = true -tracks/2/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(66, -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/interp = 1 -tracks/3/loop_wrap = true -tracks/3/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(64, -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/interp = 1 -tracks/4/loop_wrap = true -tracks/4/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(0, -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/interp = 1 -tracks/5/loop_wrap = true -tracks/5/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(-105, -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/interp = 1 -tracks/6/loop_wrap = true -tracks/6/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(51, -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/interp = 1 -tracks/7/loop_wrap = true -tracks/7/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(0, -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/interp = 1 -tracks/8/loop_wrap = true -tracks/8/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(127, -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/interp = 1 -tracks/9/loop_wrap = true -tracks/9/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(79, -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/interp = 1 -tracks/10/loop_wrap = true -tracks/10/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(0, -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/interp = 1 -tracks/11/loop_wrap = true -tracks/11/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(0, -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/interp = 1 -tracks/12/loop_wrap = true -tracks/12/keys = { -"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/interp = 1 -tracks/13/loop_wrap = true -tracks/13/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(0, -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/interp = 1 -tracks/14/loop_wrap = true -tracks/14/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(-3, -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/interp = 1 -tracks/15/loop_wrap = true -tracks/15/keys = { -"handle_modes": PackedInt32Array(0), -"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="AnimationNodeBlendTree" id="AnimationNodeBlendTree_hn1cf"] -[sub_resource type="Animation" id="Animation_clnds"] -resource_name = "idle" -length = 0.25 -loop_mode = 1 -tracks/0/type = "bezier" -tracks/0/imported = false -tracks/0/enabled = false -tracks/0/path = NodePath("head:scale:x") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), -"times": PackedFloat32Array(0) -} -tracks/1/type = "bezier" -tracks/1/imported = false -tracks/1/enabled = false -tracks/1/path = NodePath("head:scale:y") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"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 = false -tracks/2/path = NodePath("head:position:x") -tracks/2/interp = 1 -tracks/2/loop_wrap = true -tracks/2/keys = { -"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 = false -tracks/3/path = NodePath("head:position:y") -tracks/3/interp = 1 -tracks/3/loop_wrap = true -tracks/3/keys = { -"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/spine:position:x") -tracks/4/interp = 1 -tracks/4/loop_wrap = true -tracks/4/keys = { -"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:position:y") -tracks/5/interp = 1 -tracks/5/loop_wrap = true -tracks/5/keys = { -"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:rotation") -tracks/6/interp = 1 -tracks/6/loop_wrap = true -tracks/6/keys = { -"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/head:position:x") -tracks/7/interp = 1 -tracks/7/loop_wrap = true -tracks/7/keys = { -"handle_modes": PackedInt32Array(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/head:position:y") -tracks/8/interp = 1 -tracks/8/loop_wrap = true -tracks/8/keys = { -"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/head:rotation") -tracks/9/interp = 1 -tracks/9/loop_wrap = true -tracks/9/keys = { -"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/head/head:position:x") -tracks/10/interp = 1 -tracks/10/loop_wrap = true -tracks/10/keys = { -"handle_modes": PackedInt32Array(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/head:position:y") -tracks/11/interp = 1 -tracks/11/loop_wrap = true -tracks/11/keys = { -"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/spine/head/head:rotation") -tracks/12/interp = 1 -tracks/12/loop_wrap = true -tracks/12/keys = { -"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("Skeleton2D/hips/spine/armL:position:x") -tracks/13/interp = 1 -tracks/13/loop_wrap = true -tracks/13/keys = { -"handle_modes": PackedInt32Array(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/armL:position:y") -tracks/14/interp = 1 -tracks/14/loop_wrap = true -tracks/14/keys = { -"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/armL:rotation") -tracks/15/interp = 1 -tracks/15/loop_wrap = true -tracks/15/keys = { -"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"), -"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"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_1x8ew"] animation = &"idle" -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_f1xht"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_vrcgu"] animation = &"player_WalkLeft" -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_mf6vk"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_giw8e"] animation = &"player_WalkRight" -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_gvum5"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ylw4m"] +advance_mode = 2 +advance_condition = &"WalkLeft" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_tx8bg"] +advance_mode = 2 +advance_condition = &"Idle" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_flw2n"] +advance_mode = 2 +advance_condition = &"Idle" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_um8f6"] +advance_mode = 2 +advance_condition = &"WalkRight" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ks6oc"] advance_mode = 2 -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2li1n"] -advance_mode = 2 +[sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_x16w7"] +states/BlendTree/node = SubResource("AnimationNodeBlendTree_hn1cf") +states/BlendTree/position = Vector2(668, 238) +states/End/position = Vector2(328, 289) +states/Start/position = Vector2(585, 52) +states/idle/node = SubResource("AnimationNodeAnimation_1x8ew") +states/idle/position = Vector2(343, 98) +states/player_WalkLeft/node = SubResource("AnimationNodeAnimation_vrcgu") +states/player_WalkLeft/position = Vector2(224, 185) +states/player_WalkRight/node = SubResource("AnimationNodeAnimation_giw8e") +states/player_WalkRight/position = Vector2(451, 185) +transitions = ["idle", "player_WalkLeft", SubResource("AnimationNodeStateMachineTransition_ylw4m"), "player_WalkLeft", "idle", SubResource("AnimationNodeStateMachineTransition_tx8bg"), "player_WalkRight", "idle", SubResource("AnimationNodeStateMachineTransition_flw2n"), "idle", "player_WalkRight", SubResource("AnimationNodeStateMachineTransition_um8f6"), "Start", "player_WalkRight", SubResource("AnimationNodeStateMachineTransition_ks6oc")] +graph_offset = Vector2(-101, 1) -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_hdjxb"] -advance_mode = 2 -advance_condition = &"velocity.x > 0" +[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_wgp38"] +graph_offset = Vector2(-281.833, 96.4845) +nodes/Locomotion/node = SubResource("AnimationNodeStateMachine_x16w7") +nodes/Locomotion/position = Vector2(120, 140) +nodes/output/position = Vector2(340, 140) +node_connections = [&"output", 0, &"Locomotion"] -[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) +[sub_resource type="LabelSettings" id="LabelSettings_dgcsv"] +font_size = 50 [node name="Node2D" type="CharacterBody2D"] script = ExtResource("1_0pgv8") [node name="CollisionShape2D" type="CollisionShape2D" parent="."] -position = Vector2(-1, -152) +position = Vector2(0, -129) shape = SubResource("RectangleShape2D_kapu3") -[node name="legL" type="Polygon2D" parent="."] -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="Camera2D" type="Camera2D" parent="."] +position = Vector2(0, -129) +zoom = Vector2(0.13, 0.13) +position_smoothing_enabled = true +position_smoothing_speed = 2.0 +drag_horizontal_enabled = true +drag_vertical_enabled = true +editor_draw_limits = true -[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(162, -1080) -texture = ExtResource("1_g5sjw") -skeleton = NodePath("../Skeleton2D") -invert_border = 409.1 -polygon = 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) -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") -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.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="head" type="Polygon2D" parent="."] -position = Vector2(307, -936) -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)] - -[node name="Skeleton2D" type="Skeleton2D" parent="."] -position = Vector2(-236, -848) - -[node name="hips" type="Bone2D" parent="Skeleton2D"] -position = Vector2(238, 746) -rest = Transform2D(1, 0, 0, 1, 238, 746) - -[node name="spine" type="Bone2D" parent="Skeleton2D/hips"] -position = Vector2(-3, -130) -rest = Transform2D(1, 0, 0, 1, -3, -130) - -[node name="head" type="Bone2D" parent="Skeleton2D/hips/spine"] -position = Vector2(4, -69) -rest = Transform2D(1, 0, 0, 1, 4, -69) - -[node name="head" type="Bone2D" parent="Skeleton2D/hips/spine/head"] -position = Vector2(4, -69) -rest = Transform2D(1, 0, 0, 1, 4, -69) - -[node name="armL" type="Bone2D" parent="Skeleton2D/hips/spine"] -position = Vector2(-105, 51) -rest = Transform2D(1, 0, 0, 1, -105, 51) - -[node name="armR" type="Bone2D" parent="Skeleton2D/hips/spine"] -position = Vector2(127, 79) -rest = Transform2D(1, 0, 0, 1, 127, 79) - -[node name="tail" type="Bone2D" parent="Skeleton2D/hips"] -position = Vector2(69, 0) -scale = Vector2(-1, 1) -rest = Transform2D(1, 0, 0, 1, 70, -7) - -[node name="legL" type="Bone2D" parent="Skeleton2D/hips"] -position = Vector2(-48, 67) -scale = Vector2(0.999999, 0.999999) -rest = Transform2D(1, 0, 0, 1, -48, 67) - -[node name="legR" type="Bone2D" parent="Skeleton2D/hips"] -position = Vector2(66, 64) -rest = Transform2D(1, 0, 0, 1, 66, 64) - -[node name="AnimationPlayer" type="AnimationPlayer" parent="."] -libraries = { -"": SubResource("AnimationLibrary_ecer3") -} +[node name="AnimationPlayer" type="AnimationPlayer" parent="." groups=["Animation"]] 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="AnimationTree" type="AnimationTree" parent="." groups=["Animation"]] +tree_root = SubResource("AnimationNodeBlendTree_wgp38") +anim_player = NodePath("../AnimationPlayer") +parameters/Locomotion/conditions/Idle = false +parameters/Locomotion/conditions/WalkLeft = false +parameters/Locomotion/conditions/WalkRight = false -[node name="Camera2D" type="Camera2D" parent="."] -position = Vector2(-1, -299) -zoom = Vector2(0.15, 0.15) -position_smoothing_enabled = true +[node name="debug" type="Label" parent="."] +anchors_preset = 7 +anchor_left = 0.5 +anchor_top = 1.0 +anchor_right = 0.5 +anchor_bottom = 1.0 +offset_left = -188.5 +offset_top = -801.0 +offset_right = 188.5 +offset_bottom = -680.0 +grow_horizontal = 2 +grow_vertical = 0 +auto_translate = false +localize_numeral_system = false +text = "debug" +label_settings = SubResource("LabelSettings_dgcsv") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="BootL" type="Sprite2D" parent="."] +position = Vector2(44, -43) +texture = ExtResource("2_45h8h") +region_enabled = true +region_rect = Rect2(896, 768, 128, 128) + +[node name="BootR" type="Sprite2D" parent="."] +position = Vector2(-64, -50) +texture = ExtResource("2_45h8h") +region_enabled = true +region_rect = Rect2(896, 768, 128, 128) + +[node name="Body" type="Sprite2D" parent="."] +position = Vector2(35, -207) +texture = ExtResource("2_45h8h") +offset = Vector2(-15, 0) +region_enabled = true +region_rect = Rect2(0, 640, 384, 384) + +[node name="HandL" type="Sprite2D" parent="Body"] +position = Vector2(38, 55) +texture = ExtResource("2_45h8h") +region_enabled = true +region_rect = Rect2(768, 768, 128, 128) + +[node name="HandR" type="Sprite2D" parent="Body"] +show_behind_parent = true +position = Vector2(-144, 29) +texture = ExtResource("2_45h8h") +region_enabled = true +region_rect = Rect2(768, 768, 128, 128) + +[node name="Tail" type="Sprite2D" parent="Body"] +show_behind_parent = true +position = Vector2(125, 83) +texture = ExtResource("2_45h8h") +region_enabled = true +region_rect = Rect2(768, 640, 256, 128) + +[node name="Head" type="Sprite2D" parent="."] +position = Vector2(0, -562) +texture = ExtResource("2_45h8h") +region_enabled = true +region_rect = Rect2(0, 0, 512, 640) + +[node name="Hat" type="Sprite2D" parent="Head"] +position = Vector2(80, -24) +scale = Vector2(0.531579, 0.531579) +texture = ExtResource("3_bsp0f") +region_enabled = true +region_rect = Rect2(18, 179, 1139, 665) diff --git a/player/archer.png b/player/archer.png new file mode 100644 index 0000000..b702658 --- /dev/null +++ b/player/archer.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f7b3be6aa2da693b1a5c3ee3d6acbd943313c09118c844486c37566c9307f05 +size 138690 diff --git a/player/archer.png.import b/player/archer.png.import new file mode 100644 index 0000000..151511f --- /dev/null +++ b/player/archer.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dc0ryln54y2hw" +path="res://.godot/imported/archer.png-4a4554f7c1f05b30b963279b0f0fd63b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://player/archer.png" +dest_files=["res://.godot/imported/archer.png-4a4554f7c1f05b30b963279b0f0fd63b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/player/currentCloth.tres b/player/currentCloth.tres new file mode 100644 index 0000000..f6b0291 --- /dev/null +++ b/player/currentCloth.tres @@ -0,0 +1,6 @@ +[gd_resource type="CanvasTexture" load_steps=2 format=3 uid="uid://5pmqr3y62guu"] + +[ext_resource type="Texture2D" uid="uid://dptor7en7li7e" path="res://player/hermandad-black.png" id="1_bh8p5"] + +[resource] +diffuse_texture = ExtResource("1_bh8p5") diff --git a/player/hermandad-beige.png b/player/hermandad-beige.png new file mode 100644 index 0000000..29c827e --- /dev/null +++ b/player/hermandad-beige.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc085a399fef00e9e85205a76771c1b35ca638309ac9345cec1df9c3f2c45ede +size 134071 diff --git a/player/hermandad-beige.png.import b/player/hermandad-beige.png.import new file mode 100644 index 0000000..57c7064 --- /dev/null +++ b/player/hermandad-beige.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dyc587uwlcfy2" +path="res://.godot/imported/hermandad-beige.png-67161087b415043ee4d8909c324527e2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://player/hermandad-beige.png" +dest_files=["res://.godot/imported/hermandad-beige.png-67161087b415043ee4d8909c324527e2.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/player/hermandad-black.png b/player/hermandad-black.png new file mode 100644 index 0000000..aec3abf --- /dev/null +++ b/player/hermandad-black.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6cdc3f5e64902dd8134a2515a98805bad8a79e2b7eb4c385e61254eb2ef89a9 +size 123804 diff --git a/player/hermandad-black.png.import b/player/hermandad-black.png.import new file mode 100644 index 0000000..71516b4 --- /dev/null +++ b/player/hermandad-black.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dptor7en7li7e" +path="res://.godot/imported/hermandad-black.png-f537a854f0057b54811a4ea752e2f73a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://player/hermandad-black.png" +dest_files=["res://.godot/imported/hermandad-black.png-f537a854f0057b54811a4ea752e2f73a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/player/hermandad-brown.png b/player/hermandad-brown.png new file mode 100644 index 0000000..be60151 --- /dev/null +++ b/player/hermandad-brown.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f069d0cf0762b98e4fac587af80dd4f57fcc6a68f9aa16dc9bd10e9b2e4dd531 +size 127425 diff --git a/player/hermandad-brown.png.import b/player/hermandad-brown.png.import new file mode 100644 index 0000000..855afc7 --- /dev/null +++ b/player/hermandad-brown.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dvpva5dpajyge" +path="res://.godot/imported/hermandad-brown.png-1c96d58b1942229876ff9d7f0d8434f3.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://player/hermandad-brown.png" +dest_files=["res://.godot/imported/hermandad-brown.png-1c96d58b1942229876ff9d7f0d8434f3.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/player/player-layout.jpg b/player/player-layout.jpg new file mode 100644 index 0000000000000000000000000000000000000000..20929752d486b50c8b10ab7ed58d4056c3cd0a5c GIT binary patch literal 45825 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 OKlZi4e?;n#e)T`V>uxUq literal 0 HcmV?d00001 diff --git a/player/player-layout.jpg.import b/player/player-layout.jpg.import new file mode 100644 index 0000000..c09a101 --- /dev/null +++ b/player/player-layout.jpg.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ctsllsisn5ykr" +path="res://.godot/imported/player-layout.jpg-efb2fae2dafee2fc7180977836d17ae8.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://player/player-layout.jpg" +dest_files=["res://.godot/imported/player-layout.jpg-efb2fae2dafee2fc7180977836d17ae8.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/player/witch.png b/player/witch.png new file mode 100644 index 0000000..5e0933e --- /dev/null +++ b/player/witch.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b778f071f6a114b35438ad2e22d34bc250cab39bb3fc91102bd29bd4cff7390 +size 127082 diff --git a/player/witch.png.import b/player/witch.png.import new file mode 100644 index 0000000..f67695f --- /dev/null +++ b/player/witch.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bkr5mxvjo28ae" +path="res://.godot/imported/witch.png-2c2137107dd652427d34f0c64e9e561c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://player/witch.png" +dest_files=["res://.godot/imported/witch.png-2c2137107dd652427d34f0c64e9e561c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/source/player_skins.psd b/source/player_skins.psd new file mode 100644 index 0000000..7e1f9e3 --- /dev/null +++ b/source/player_skins.psd @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b37554b10d19749129b45b40183c5417a23efe6a65b91f88d8d1943895b8239 +size 2762289 From 65b3c4a34b26799a32920abe82fc677139b4c42e Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 17:35:46 +0200 Subject: [PATCH 03/11] new player hierarchy + hat setup --- player.tscn | 10 +++++----- player/currentHat.tres | 6 ++++++ player/hat-layout.jpg | Bin 0 -> 50708 bytes player/hat-layout.jpg.import | 34 ++++++++++++++++++++++++++++++++++ 4 files changed, 45 insertions(+), 5 deletions(-) create mode 100644 player/currentHat.tres create mode 100644 player/hat-layout.jpg create mode 100644 player/hat-layout.jpg.import diff --git a/player.tscn b/player.tscn index 25cc803..f735371 100644 --- a/player.tscn +++ b/player.tscn @@ -2,7 +2,7 @@ [ext_resource type="Script" path="res://player.gd" id="1_0pgv8"] [ext_resource type="Texture2D" uid="uid://5pmqr3y62guu" path="res://player/currentCloth.tres" id="2_45h8h"] -[ext_resource type="Texture2D" uid="uid://hc35pmqglb14" path="res://extracted/Texture2D/Whitch Hat.png" id="3_bsp0f"] +[ext_resource type="Texture2D" uid="uid://5qixrbrclydr" path="res://player/currentHat.tres" id="3_qyf3b"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_kapu3"] size = Vector2(192, 256) @@ -153,8 +153,8 @@ region_enabled = true region_rect = Rect2(0, 0, 512, 640) [node name="Hat" type="Sprite2D" parent="Head"] -position = Vector2(80, -24) -scale = Vector2(0.531579, 0.531579) -texture = ExtResource("3_bsp0f") +position = Vector2(66, 66) +scale = Vector2(0.6, 0.6) +texture = ExtResource("3_qyf3b") region_enabled = true -region_rect = Rect2(18, 179, 1139, 665) +region_rect = Rect2(0, 0, 1152, 1136) diff --git a/player/currentHat.tres b/player/currentHat.tres new file mode 100644 index 0000000..0ad1e19 --- /dev/null +++ b/player/currentHat.tres @@ -0,0 +1,6 @@ +[gd_resource type="CanvasTexture" load_steps=2 format=3 uid="uid://5qixrbrclydr"] + +[ext_resource type="Texture2D" uid="uid://pkf86c0n3xig" path="res://extracted/Texture2D/Whitch Hat #62998.png" id="1_7652k"] + +[resource] +diffuse_texture = ExtResource("1_7652k") diff --git a/player/hat-layout.jpg b/player/hat-layout.jpg new file mode 100644 index 0000000000000000000000000000000000000000..dd66ccba6ad249a1f2391004af44054cc3cb888b GIT binary patch literal 50708 zcmeI5Jx^3w9EbmxL1h)A6DUZun8LzFgIlZ?WY@roVdF-Fn)p&EAkxT728@k~6uaFP zwsywGFR)=-3Jbg4WD|og1@RLYqsDGLhY11W@5f}uk-|K8!pz~h_uQFzI5+p{sIAmi zWB+f%Bg0V?MO;shsJ$*$Muvv2of|znJaXn#+7VGajkI<4M@-KwR7Xz_RxVw>QrWc{ zMS84lV-xdp^^tr|M}2r!KlcA4@`$bB4>u;~C(c8(lGC|3VE+E;_q5GEia7B;qI7?QjX#L^=g)|~7aQ!*!-#!6eF@8yV|{~~r@UE7zQ%x9~lT?fA$JAs zhP#6HVkv4S^)Jct{{=Hw2RQVkv4S^)J zct{{=Hw2RQVkv@Qi#$(o!al=|NVmxLo88@sYBgSLal5xXYGGaVtEg3hg zB_qaT){=3$nWWv2N!p92WRiA6CTTC0l1WAlnPkK`OeSeFWRmvcDVe0* zkV)E$r(}|LLndi2mXb+E4Vh%bI7}vKGh~wX;whP=-H=Jzi>G9gc0(p$nWWv2N!p92 zWRiA6CTTC0l1WAlnPkK`OeSeFWRmvcDVe0*kV)E$r(}|LLndi2mXb+E4Vh%bI7}vK zGh~wX;whP=-H=Jzi>G9gc0(p Date: Mon, 22 Jul 2024 17:37:15 +0200 Subject: [PATCH 04/11] fix tail --- player.tscn | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/player.tscn b/player.tscn index f735371..c1b6271 100644 --- a/player.tscn +++ b/player.tscn @@ -107,52 +107,55 @@ label_settings = SubResource("LabelSettings_dgcsv") horizontal_alignment = 1 vertical_alignment = 1 -[node name="BootL" type="Sprite2D" parent="."] +[node name="Skeleton2D" type="Skeleton2D" parent="."] + +[node name="BootL" type="Sprite2D" parent="Skeleton2D"] position = Vector2(44, -43) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(896, 768, 128, 128) -[node name="BootR" type="Sprite2D" parent="."] +[node name="BootR" type="Sprite2D" parent="Skeleton2D"] position = Vector2(-64, -50) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(896, 768, 128, 128) -[node name="Body" type="Sprite2D" parent="."] +[node name="Body" type="Sprite2D" parent="Skeleton2D"] position = Vector2(35, -207) texture = ExtResource("2_45h8h") offset = Vector2(-15, 0) region_enabled = true region_rect = Rect2(0, 640, 384, 384) -[node name="HandL" type="Sprite2D" parent="Body"] +[node name="HandL" type="Sprite2D" parent="Skeleton2D/Body"] position = Vector2(38, 55) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) -[node name="HandR" type="Sprite2D" parent="Body"] +[node name="HandR" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true position = Vector2(-144, 29) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) -[node name="Tail" type="Sprite2D" parent="Body"] +[node name="Tail" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(125, 83) +position = Vector2(48, 90) texture = ExtResource("2_45h8h") +offset = Vector2(70, 0) region_enabled = true region_rect = Rect2(768, 640, 256, 128) -[node name="Head" type="Sprite2D" parent="."] +[node name="Head" type="Sprite2D" parent="Skeleton2D"] position = Vector2(0, -562) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(0, 0, 512, 640) -[node name="Hat" type="Sprite2D" parent="Head"] +[node name="Hat" type="Sprite2D" parent="Skeleton2D/Head"] position = Vector2(66, 66) scale = Vector2(0.6, 0.6) texture = ExtResource("3_qyf3b") From b52332b4ff756b9cbc8ef3ab70b1a4d02d21ded2 Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 17:39:05 +0200 Subject: [PATCH 05/11] fix head pivot --- player.tscn | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/player.tscn b/player.tscn index c1b6271..19eb8fe 100644 --- a/player.tscn +++ b/player.tscn @@ -150,13 +150,14 @@ region_enabled = true region_rect = Rect2(768, 640, 256, 128) [node name="Head" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(0, -562) +position = Vector2(0, -423) texture = ExtResource("2_45h8h") +offset = Vector2(0, -168) region_enabled = true region_rect = Rect2(0, 0, 512, 640) [node name="Hat" type="Sprite2D" parent="Skeleton2D/Head"] -position = Vector2(66, 66) +position = Vector2(66, -102) scale = Vector2(0.6, 0.6) texture = ExtResource("3_qyf3b") region_enabled = true From 833014846d8cb3353fac7a54a53d1ab8c360538a Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 17:56:58 +0200 Subject: [PATCH 06/11] skeleton2D --- player.tscn | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 63 insertions(+), 1 deletion(-) diff --git a/player.tscn b/player.tscn index 19eb8fe..aa7f1f6 100644 --- a/player.tscn +++ b/player.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=17 format=3 uid="uid://0m1hk2nu4bps"] +[gd_scene load_steps=19 format=3 uid="uid://0m1hk2nu4bps"] [ext_resource type="Script" path="res://player.gd" id="1_0pgv8"] [ext_resource type="Texture2D" uid="uid://5pmqr3y62guu" path="res://player/currentCloth.tres" id="2_45h8h"] @@ -7,6 +7,26 @@ [sub_resource type="RectangleShape2D" id="RectangleShape2D_kapu3"] size = Vector2(192, 256) +[sub_resource type="Animation" id="Animation_y7jp1"] +resource_name = "idle" +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Skeleton2D/root/Hips:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(), +"transitions": PackedFloat32Array(), +"update": 0, +"values": [] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_4k813"] +_data = { +"idle": SubResource("Animation_y7jp1") +} + [sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_hn1cf"] [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_1x8ew"] @@ -78,6 +98,9 @@ drag_vertical_enabled = true editor_draw_limits = true [node name="AnimationPlayer" type="AnimationPlayer" parent="." groups=["Animation"]] +libraries = { +"": SubResource("AnimationLibrary_4k813") +} autoplay = "player_WalkLeft" playback_default_blend_time = 0.3 @@ -162,3 +185,42 @@ scale = Vector2(0.6, 0.6) texture = ExtResource("3_qyf3b") region_enabled = true region_rect = Rect2(0, 0, 1152, 1136) + +[node name="root" type="Bone2D" parent="Skeleton2D"] +rest = Transform2D(1, 0, 0, 1, 0, 0) + +[node name="Hips" type="Bone2D" parent="Skeleton2D/root"] +position = Vector2(0, -130) +rest = Transform2D(1, 0, 0, 1, 0, -130) + +[node name="LegLeft" type="Bone2D" parent="Skeleton2D/root/Hips"] +position = Vector2(41, 91) +rest = Transform2D(1, 0, 0, 1, 41, 91) + +[node name="LegRight" type="Bone2D" parent="Skeleton2D/root/Hips"] +position = Vector2(-66, 91) +rest = Transform2D(1, 0, 0, 1, -66, 91) + +[node name="Spine" type="Bone2D" parent="Skeleton2D/root/Hips"] +position = Vector2(0, -86) +rest = Transform2D(1, 0, 0, 1, 0, -86) + +[node name="Head" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] +position = Vector2(0, -107) +rest = Transform2D(1, 0, 0, 1, 0, -107) + +[node name="Hat" type="Bone2D" parent="Skeleton2D/root/Hips/Spine/Head"] +position = Vector2(0, -201) +rest = Transform2D(1, 0, 0, 1, 0, -201) + +[node name="ArmLeft" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] +position = Vector2(72, 69) +rest = Transform2D(1, 0, 0, 1, 72, 69) + +[node name="ArmRight" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] +position = Vector2(-111, 35) +rest = Transform2D(1, 0, 0, 1, -111, 35) + +[node name="Tail" type="Bone2D" parent="Skeleton2D/root/Hips"] +position = Vector2(92, 42) +rest = Transform2D(1, 0, 0, 1, 92, 42) From e807bbb33b591a46f9c030ab0ba981764b7542d3 Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 18:26:35 +0200 Subject: [PATCH 07/11] new skeleton methode --- player.tscn | 77 ++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 55 insertions(+), 22 deletions(-) diff --git a/player.tscn b/player.tscn index aa7f1f6..83596fe 100644 --- a/player.tscn +++ b/player.tscn @@ -1,8 +1,9 @@ -[gd_scene load_steps=19 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://5pmqr3y62guu" path="res://player/currentCloth.tres" id="2_45h8h"] [ext_resource type="Texture2D" uid="uid://5qixrbrclydr" path="res://player/currentHat.tres" id="3_qyf3b"] +[ext_resource type="Texture2D" uid="uid://sod0ms1cfkjf" path="res://player/playerSkin_ref.png" id="4_ytgpb"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_kapu3"] size = Vector2(192, 256) @@ -81,6 +82,9 @@ node_connections = [&"output", 0, &"Locomotion"] [sub_resource type="LabelSettings" id="LabelSettings_dgcsv"] font_size = 50 +[sub_resource type="CanvasTexture" id="CanvasTexture_2b3h6"] +diffuse_texture = ExtResource("4_ytgpb") + [node name="Node2D" type="CharacterBody2D"] script = ExtResource("1_0pgv8") @@ -131,6 +135,7 @@ horizontal_alignment = 1 vertical_alignment = 1 [node name="Skeleton2D" type="Skeleton2D" parent="."] +position = Vector2(17, 0) [node name="BootL" type="Sprite2D" parent="Skeleton2D"] position = Vector2(44, -43) @@ -145,7 +150,7 @@ region_enabled = true region_rect = Rect2(896, 768, 128, 128) [node name="Body" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(35, -207) +position = Vector2(51, -222) texture = ExtResource("2_45h8h") offset = Vector2(-15, 0) region_enabled = true @@ -166,14 +171,14 @@ region_rect = Rect2(768, 768, 128, 128) [node name="Tail" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(48, 90) +position = Vector2(-188, 86) texture = ExtResource("2_45h8h") offset = Vector2(70, 0) region_enabled = true region_rect = Rect2(768, 640, 256, 128) [node name="Head" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(0, -423) +position = Vector2(-35, -397) texture = ExtResource("2_45h8h") offset = Vector2(0, -168) region_enabled = true @@ -187,40 +192,68 @@ region_enabled = true region_rect = Rect2(0, 0, 1152, 1136) [node name="root" type="Bone2D" parent="Skeleton2D"] -rest = Transform2D(1, 0, 0, 1, 0, 0) +position = Vector2(-17, 0) +rest = Transform2D(1, 0, 0, 1, -17, 0) [node name="Hips" type="Bone2D" parent="Skeleton2D/root"] -position = Vector2(0, -130) -rest = Transform2D(1, 0, 0, 1, 0, -130) +position = Vector2(-18, -93) +rest = Transform2D(1, 0, 0, 1, -18, -93) [node name="LegLeft" type="Bone2D" parent="Skeleton2D/root/Hips"] -position = Vector2(41, 91) -rest = Transform2D(1, 0, 0, 1, 41, 91) +position = Vector2(81, 61) +rest = Transform2D(1, 0, 0, 1, 81, 61) + +[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/LegLeft"] [node name="LegRight" type="Bone2D" parent="Skeleton2D/root/Hips"] -position = Vector2(-66, 91) -rest = Transform2D(1, 0, 0, 1, -66, 91) +position = Vector2(-30, 58) +rest = Transform2D(1, 0, 0, 1, -30, 58) + +[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/LegRight"] [node name="Spine" type="Bone2D" parent="Skeleton2D/root/Hips"] -position = Vector2(0, -86) -rest = Transform2D(1, 0, 0, 1, 0, -86) +position = Vector2(86, -129) +rest = Transform2D(1, 0, 0, 1, -4, -78) [node name="Head" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] -position = Vector2(0, -107) -rest = Transform2D(1, 0, 0, 1, 0, -107) +position = Vector2(5, -213) +rest = Transform2D(1, 0, 0, 1, 5, -213) [node name="Hat" type="Bone2D" parent="Skeleton2D/root/Hips/Spine/Head"] -position = Vector2(0, -201) -rest = Transform2D(1, 0, 0, 1, 0, -201) +position = Vector2(56, -160) +rest = Transform2D(1, 0, 0, 1, 56, -160) + +[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/Head/Hat"] + +[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/Head"] [node name="ArmLeft" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] -position = Vector2(72, 69) -rest = Transform2D(1, 0, 0, 1, 72, 69) +position = Vector2(110, 24) +rest = Transform2D(1, 0, 0, 1, 110, 24) + +[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/ArmLeft"] [node name="ArmRight" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] -position = Vector2(-111, 35) -rest = Transform2D(1, 0, 0, 1, -111, 35) +position = Vector2(-77, -5) +rest = Transform2D(1, 0, 0, 1, -77, -5) + +[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/ArmRight"] + +[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine"] +remote_path = NodePath("../../../../Body") +update_scale = false [node name="Tail" type="Bone2D" parent="Skeleton2D/root/Hips"] -position = Vector2(92, 42) +position = Vector2(130, -37) rest = Transform2D(1, 0, 0, 1, 92, 42) + +[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Tail"] +remote_path = NodePath("../../../../Body/Tail") +update_scale = false + +[node name="Sprite2D" type="Sprite2D" parent="."] +modulate = Color(0.6, 0.498039, 1, 0.486275) +z_index = -1 +position = Vector2(42, -381) +scale = Vector2(1.89731, 1.89731) +texture = SubResource("CanvasTexture_2b3h6") From 3bb3cd9fb9769f712d402d78de003862b378f40a Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 18:29:29 +0200 Subject: [PATCH 08/11] Skeleton 2D rework --- player.tscn | 49 ++++++++++++++++++-------------- player/playerSkin_ref.png | 3 ++ player/playerSkin_ref.png.import | 34 ++++++++++++++++++++++ 3 files changed, 65 insertions(+), 21 deletions(-) create mode 100644 player/playerSkin_ref.png create mode 100644 player/playerSkin_ref.png.import diff --git a/player.tscn b/player.tscn index 83596fe..d37168c 100644 --- a/player.tscn +++ b/player.tscn @@ -138,13 +138,13 @@ vertical_alignment = 1 position = Vector2(17, 0) [node name="BootL" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(44, -43) +position = Vector2(42, -41) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(896, 768, 128, 128) [node name="BootR" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(-64, -50) +position = Vector2(-71, -48) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(896, 768, 128, 128) @@ -157,35 +157,35 @@ region_enabled = true region_rect = Rect2(0, 640, 384, 384) [node name="HandL" type="Sprite2D" parent="Skeleton2D/Body"] -position = Vector2(38, 55) +position = Vector2(33, 58) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) [node name="HandR" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(-144, 29) +position = Vector2(-151, 31) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) [node name="Tail" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(-188, 86) +position = Vector2(44, 92) texture = ExtResource("2_45h8h") offset = Vector2(70, 0) region_enabled = true region_rect = Rect2(768, 640, 256, 128) [node name="Head" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(-35, -397) +position = Vector2(-40, -395) texture = ExtResource("2_45h8h") offset = Vector2(0, -168) region_enabled = true region_rect = Rect2(0, 0, 512, 640) [node name="Hat" type="Sprite2D" parent="Skeleton2D/Head"] -position = Vector2(66, -102) +position = Vector2(65, -103) scale = Vector2(0.6, 0.6) texture = ExtResource("3_qyf3b") region_enabled = true @@ -200,44 +200,51 @@ position = Vector2(-18, -93) rest = Transform2D(1, 0, 0, 1, -18, -93) [node name="LegLeft" type="Bone2D" parent="Skeleton2D/root/Hips"] -position = Vector2(81, 61) -rest = Transform2D(1, 0, 0, 1, 81, 61) +position = Vector2(77, 52) +rest = Transform2D(1, 0, 0, 1, 77, 52) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/LegLeft"] +remote_path = NodePath("../../../../BootL") [node name="LegRight" type="Bone2D" parent="Skeleton2D/root/Hips"] -position = Vector2(-30, 58) -rest = Transform2D(1, 0, 0, 1, -30, 58) +position = Vector2(-36, 45) +rest = Transform2D(1, 0, 0, 1, -36, 45) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/LegRight"] +remote_path = NodePath("../../../../BootR") [node name="Spine" type="Bone2D" parent="Skeleton2D/root/Hips"] position = Vector2(86, -129) -rest = Transform2D(1, 0, 0, 1, -4, -78) +rest = Transform2D(1, 0, 0, 1, 86, -129) [node name="Head" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] -position = Vector2(5, -213) -rest = Transform2D(1, 0, 0, 1, 5, -213) +position = Vector2(-91, -173) +rest = Transform2D(1, 0, 0, 1, -91, -173) [node name="Hat" type="Bone2D" parent="Skeleton2D/root/Hips/Spine/Head"] -position = Vector2(56, -160) -rest = Transform2D(1, 0, 0, 1, 56, -160) +position = Vector2(65, -103) +rest = Transform2D(1, 0, 0, 1, 65, -103) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/Head/Hat"] +remote_path = NodePath("../../../../../../Head/Hat") +update_scale = false [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/Head"] +remote_path = NodePath("../../../../../Head") [node name="ArmLeft" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] -position = Vector2(110, 24) -rest = Transform2D(1, 0, 0, 1, 110, 24) +position = Vector2(33, 58) +rest = Transform2D(1, 0, 0, 1, 33, 58) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/ArmLeft"] +remote_path = NodePath("../../../../../Body/HandL") [node name="ArmRight" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] -position = Vector2(-77, -5) -rest = Transform2D(1, 0, 0, 1, -77, -5) +position = Vector2(-151, 31) +rest = Transform2D(1, 0, 0, 1, -151, 31) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/ArmRight"] +remote_path = NodePath("../../../../../Body/HandR") [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine"] remote_path = NodePath("../../../../Body") @@ -245,7 +252,7 @@ update_scale = false [node name="Tail" type="Bone2D" parent="Skeleton2D/root/Hips"] position = Vector2(130, -37) -rest = Transform2D(1, 0, 0, 1, 92, 42) +rest = Transform2D(1, 0, 0, 1, 130, -37) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Tail"] remote_path = NodePath("../../../../Body/Tail") diff --git a/player/playerSkin_ref.png b/player/playerSkin_ref.png new file mode 100644 index 0000000..fafb3c7 --- /dev/null +++ b/player/playerSkin_ref.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b41a1dffd01593874b3701a65db2164b1b23621bcc2ebd20a43f9dcfc6c30d3 +size 60354 diff --git a/player/playerSkin_ref.png.import b/player/playerSkin_ref.png.import new file mode 100644 index 0000000..82f9c72 --- /dev/null +++ b/player/playerSkin_ref.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://sod0ms1cfkjf" +path="res://.godot/imported/playerSkin_ref.png-c2ecf286618bb847bb611ccb2b97dd35.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://player/playerSkin_ref.png" +dest_files=["res://.godot/imported/playerSkin_ref.png-c2ecf286618bb847bb611ccb2b97dd35.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 From 58ee72f955b7f92b67bb9405915327c41368b873 Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 21:25:50 +0200 Subject: [PATCH 09/11] Idle Animation --- player.tscn | 184 +++++++++++++++++++++++++++++++++---- player/animations/idle.res | 3 + 2 files changed, 170 insertions(+), 17 deletions(-) create mode 100644 player/animations/idle.res diff --git a/player.tscn b/player.tscn index d37168c..06193b6 100644 --- a/player.tscn +++ b/player.tscn @@ -1,31 +1,176 @@ -[gd_scene load_steps=21 format=3 uid="uid://0m1hk2nu4bps"] +[gd_scene load_steps=22 format=3 uid="uid://0m1hk2nu4bps"] [ext_resource type="Script" path="res://player.gd" id="1_0pgv8"] [ext_resource type="Texture2D" uid="uid://5pmqr3y62guu" path="res://player/currentCloth.tres" id="2_45h8h"] +[ext_resource type="Animation" uid="uid://b85dikp6ps8i2" path="res://player/animations/idle.res" id="2_ymiw5"] [ext_resource type="Texture2D" uid="uid://5qixrbrclydr" path="res://player/currentHat.tres" id="3_qyf3b"] [ext_resource type="Texture2D" uid="uid://sod0ms1cfkjf" path="res://player/playerSkin_ref.png" id="4_ytgpb"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_kapu3"] size = Vector2(192, 256) -[sub_resource type="Animation" id="Animation_y7jp1"] -resource_name = "idle" -tracks/0/type = "value" +[sub_resource type="Animation" id="Animation_oktsg"] +length = 0.001 +tracks/0/type = "bezier" tracks/0/imported = false tracks/0/enabled = true -tracks/0/path = NodePath("Skeleton2D/root/Hips:position") +tracks/0/path = NodePath("Skeleton2D/root/Hips/Tail:position:x") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { -"times": PackedFloat32Array(), -"transitions": PackedFloat32Array(), -"update": 0, -"values": [] +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(130, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/1/type = "bezier" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("Skeleton2D/root/Hips/Tail:position:y") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-37, -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/root/Hips/Tail:rotation") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -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/root/Hips/Spine:position:x") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(86, -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/root/Hips/Spine:position:y") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-129, -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/root/Hips/Spine:rotation") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -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/root/Hips/Spine/ArmLeft:position:x") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(33, -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/root/Hips/Spine/ArmLeft:position:y") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(58, -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/root/Hips/Spine/ArmRight:position:x") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-151, -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/root/Hips/Spine/ArmRight:position:y") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(31, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/10/type = "value" +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/path = NodePath("Skeleton2D/Body/HandR:show_behind_parent") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} +tracks/11/type = "bezier" +tracks/11/imported = false +tracks/11/enabled = true +tracks/11/path = NodePath("Skeleton2D/root/Hips/Spine/Head:position:x") +tracks/11/interp = 1 +tracks/11/loop_wrap = true +tracks/11/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-91, -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/root/Hips/Spine/Head:position:y") +tracks/12/interp = 1 +tracks/12/loop_wrap = true +tracks/12/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-173, -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("Skeleton2D/root/Hips/Spine/Head:rotation") +tracks/13/interp = 1 +tracks/13/loop_wrap = true +tracks/13/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } [sub_resource type="AnimationLibrary" id="AnimationLibrary_4k813"] _data = { -"idle": SubResource("Animation_y7jp1") +"RESET": SubResource("Animation_oktsg"), +"idle": ExtResource("2_ymiw5") } [sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_hn1cf"] @@ -150,35 +295,38 @@ region_enabled = true region_rect = Rect2(896, 768, 128, 128) [node name="Body" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(51, -222) +position = Vector2(51, -227.086) texture = ExtResource("2_45h8h") offset = Vector2(-15, 0) region_enabled = true region_rect = Rect2(0, 640, 384, 384) [node name="HandL" type="Sprite2D" parent="Skeleton2D/Body"] -position = Vector2(33, 58) +position = Vector2(-21.1837, 56.4427) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) [node name="HandR" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(-151, 31) +position = Vector2(-153.296, 34.1959) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) [node name="Tail" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(44, 92) +position = Vector2(44, 97.0863) +rotation = -0.0492555 +scale = Vector2(1, 1) texture = ExtResource("2_45h8h") offset = Vector2(70, 0) region_enabled = true region_rect = Rect2(768, 640, 256, 128) [node name="Head" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(-40, -395) +position = Vector2(-40, -400.086) +rotation = 0.0177547 texture = ExtResource("2_45h8h") offset = Vector2(0, -168) region_enabled = true @@ -186,7 +334,7 @@ region_rect = Rect2(0, 0, 512, 640) [node name="Hat" type="Sprite2D" parent="Skeleton2D/Head"] position = Vector2(65, -103) -scale = Vector2(0.6, 0.6) +scale = Vector2(0.60004, 0.60004) texture = ExtResource("3_qyf3b") region_enabled = true region_rect = Rect2(0, 0, 1152, 1136) @@ -252,13 +400,15 @@ update_scale = false [node name="Tail" type="Bone2D" parent="Skeleton2D/root/Hips"] position = Vector2(130, -37) +scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, 130, -37) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Tail"] remote_path = NodePath("../../../../Body/Tail") update_scale = false -[node name="Sprite2D" type="Sprite2D" parent="."] +[node name="debug2" type="Sprite2D" parent="."] +visible = false modulate = Color(0.6, 0.498039, 1, 0.486275) z_index = -1 position = Vector2(42, -381) diff --git a/player/animations/idle.res b/player/animations/idle.res new file mode 100644 index 0000000..f99cf75 --- /dev/null +++ b/player/animations/idle.res @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2d35003e5d3bbf9886148a79b1f64e8ab69cb440983011ce66d80fe70ca2472 +size 1400 From b844984aed8542ead116300f82bf8fb219b8e75d Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 22:14:04 +0200 Subject: [PATCH 10/11] Walking in Animation Tree --- maps/gym.tscn | 8 +- player.gd | 5 + player.tscn | 197 +++++++++++++++++++++----------- player/animations/WalkLeft.res | 3 + player/animations/WalkRight.res | 3 + player/animations/idle.res | 4 +- player/currentCloth.tres | 4 +- player/currentHat.tres | 4 +- 8 files changed, 149 insertions(+), 79 deletions(-) create mode 100644 player/animations/WalkLeft.res create mode 100644 player/animations/WalkRight.res diff --git a/maps/gym.tscn b/maps/gym.tscn index fede0a7..95ff34f 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(64.4614, 47.0722) +size = Vector2(43.3023, 13.4486) [node name="Gym" type="Node2D"] y_sort_enabled = true @@ -18,18 +18,18 @@ environment = SubResource("Environment_iaiy2") camera_attributes = SubResource("CameraAttributesPractical_dixrq") [node name="player" parent="." instance=ExtResource("1_mkpg2")] -position = Vector2(490, 44) +position = Vector2(966, 130) floor_constant_speed = true [node name="StaticBody2D" type="StaticBody2D" parent="."] [node name="TreeSwamp01Sprt" type="Sprite2D" parent="StaticBody2D"] z_as_relative = false -position = Vector2(0, -993) +position = Vector2(0, -895) scale = Vector2(4.06445, 4.06445) texture = ExtResource("2_hscig") [node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] -position = Vector2(-3.8147e-06, -133) +position = Vector2(21, -127.669) scale = Vector2(4.06445, 4.06445) shape = SubResource("RectangleShape2D_bjsqx") diff --git a/player.gd b/player.gd index a0bda13..43ce6b8 100644 --- a/player.gd +++ b/player.gd @@ -23,5 +23,10 @@ func _physics_process(delta): else: velocity.y = move_toward(velocity.y, 0, SPEED) #endregion + + var WalkLeft = directionX < 0 + $AnimationTree.set("parameters/Locomotion/conditions/Idle",(velocity.x == 0 and velocity.y == 0)) + $AnimationTree.set("parameters/Locomotion/conditions/WalkLeft",velocity.x != 0) + move_and_slide() diff --git a/player.tscn b/player.tscn index 06193b6..35b079b 100644 --- a/player.tscn +++ b/player.tscn @@ -1,13 +1,14 @@ -[gd_scene load_steps=22 format=3 uid="uid://0m1hk2nu4bps"] +[gd_scene load_steps=19 format=3 uid="uid://0m1hk2nu4bps"] [ext_resource type="Script" path="res://player.gd" id="1_0pgv8"] [ext_resource type="Texture2D" uid="uid://5pmqr3y62guu" path="res://player/currentCloth.tres" id="2_45h8h"] [ext_resource type="Animation" uid="uid://b85dikp6ps8i2" path="res://player/animations/idle.res" id="2_ymiw5"] +[ext_resource type="Animation" uid="uid://2woypk4u40b5" path="res://player/animations/WalkLeft.res" id="3_2eohq"] [ext_resource type="Texture2D" uid="uid://5qixrbrclydr" path="res://player/currentHat.tres" id="3_qyf3b"] [ext_resource type="Texture2D" uid="uid://sod0ms1cfkjf" path="res://player/playerSkin_ref.png" id="4_ytgpb"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_kapu3"] -size = Vector2(192, 256) +size = Vector2(192, 148) [sub_resource type="Animation" id="Animation_oktsg"] length = 0.001 @@ -166,67 +167,139 @@ tracks/13/keys = { "points": PackedFloat32Array(0, -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/root/Hips:position:x") +tracks/14/interp = 1 +tracks/14/loop_wrap = true +tracks/14/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-18, -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/root/Hips:position:y") +tracks/15/interp = 1 +tracks/15/loop_wrap = true +tracks/15/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-93, -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/root/Hips/LegLeft:position:x") +tracks/16/interp = 1 +tracks/16/loop_wrap = true +tracks/16/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(77, -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/root/Hips/LegLeft:position:y") +tracks/17/interp = 1 +tracks/17/loop_wrap = true +tracks/17/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(52, -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/root/Hips/LegLeft: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/root/Hips/LegRight:rotation") +tracks/19/interp = 1 +tracks/19/loop_wrap = true +tracks/19/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -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/root/Hips/LegRight:position:x") +tracks/20/interp = 1 +tracks/20/loop_wrap = true +tracks/20/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-36, -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/root/Hips/LegRight:position:y") +tracks/21/interp = 1 +tracks/21/loop_wrap = true +tracks/21/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(45, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} [sub_resource type="AnimationLibrary" id="AnimationLibrary_4k813"] _data = { "RESET": SubResource("Animation_oktsg"), +"WalkLeft": ExtResource("3_2eohq"), "idle": ExtResource("2_ymiw5") } [sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_hn1cf"] -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_1x8ew"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_myrjl"] +animation = &"WalkLeft" + +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_dx8h8"] animation = &"idle" -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_vrcgu"] -animation = &"player_WalkLeft" +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ogkr4"] +advance_mode = 2 -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_giw8e"] -animation = &"player_WalkRight" - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ylw4m"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_q2u5u"] advance_mode = 2 advance_condition = &"WalkLeft" -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_tx8bg"] +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0oq83"] advance_mode = 2 advance_condition = &"Idle" -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_flw2n"] -advance_mode = 2 -advance_condition = &"Idle" - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_um8f6"] -advance_mode = 2 -advance_condition = &"WalkRight" - -[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ks6oc"] -advance_mode = 2 - [sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_x16w7"] states/BlendTree/node = SubResource("AnimationNodeBlendTree_hn1cf") states/BlendTree/position = Vector2(668, 238) states/End/position = Vector2(328, 289) -states/Start/position = Vector2(585, 52) -states/idle/node = SubResource("AnimationNodeAnimation_1x8ew") -states/idle/position = Vector2(343, 98) -states/player_WalkLeft/node = SubResource("AnimationNodeAnimation_vrcgu") -states/player_WalkLeft/position = Vector2(224, 185) -states/player_WalkRight/node = SubResource("AnimationNodeAnimation_giw8e") -states/player_WalkRight/position = Vector2(451, 185) -transitions = ["idle", "player_WalkLeft", SubResource("AnimationNodeStateMachineTransition_ylw4m"), "player_WalkLeft", "idle", SubResource("AnimationNodeStateMachineTransition_tx8bg"), "player_WalkRight", "idle", SubResource("AnimationNodeStateMachineTransition_flw2n"), "idle", "player_WalkRight", SubResource("AnimationNodeStateMachineTransition_um8f6"), "Start", "player_WalkRight", SubResource("AnimationNodeStateMachineTransition_ks6oc")] -graph_offset = Vector2(-101, 1) +states/Start/position = Vector2(371, 25) +states/WalkLeft/node = SubResource("AnimationNodeAnimation_myrjl") +states/WalkLeft/position = Vector2(534, 122) +states/idle/node = SubResource("AnimationNodeAnimation_dx8h8") +states/idle/position = Vector2(371, 111) +transitions = ["Start", "idle", SubResource("AnimationNodeStateMachineTransition_ogkr4"), "idle", "WalkLeft", SubResource("AnimationNodeStateMachineTransition_q2u5u"), "WalkLeft", "idle", SubResource("AnimationNodeStateMachineTransition_0oq83")] +graph_offset = Vector2(-48, -19) [sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_wgp38"] -graph_offset = Vector2(-281.833, 96.4845) nodes/Locomotion/node = SubResource("AnimationNodeStateMachine_x16w7") -nodes/Locomotion/position = Vector2(120, 140) -nodes/output/position = Vector2(340, 140) +nodes/Locomotion/position = Vector2(180, 120) +nodes/output/position = Vector2(380, 120) node_connections = [&"output", 0, &"Locomotion"] -[sub_resource type="LabelSettings" id="LabelSettings_dgcsv"] -font_size = 50 - [sub_resource type="CanvasTexture" id="CanvasTexture_2b3h6"] diffuse_texture = ExtResource("4_ytgpb") @@ -234,7 +307,7 @@ diffuse_texture = ExtResource("4_ytgpb") script = ExtResource("1_0pgv8") [node name="CollisionShape2D" type="CollisionShape2D" parent="."] -position = Vector2(0, -129) +position = Vector2(0, -75) shape = SubResource("RectangleShape2D_kapu3") [node name="Camera2D" type="Camera2D" parent="."] @@ -258,75 +331,59 @@ tree_root = SubResource("AnimationNodeBlendTree_wgp38") anim_player = NodePath("../AnimationPlayer") parameters/Locomotion/conditions/Idle = false parameters/Locomotion/conditions/WalkLeft = false -parameters/Locomotion/conditions/WalkRight = false - -[node name="debug" type="Label" parent="."] -anchors_preset = 7 -anchor_left = 0.5 -anchor_top = 1.0 -anchor_right = 0.5 -anchor_bottom = 1.0 -offset_left = -188.5 -offset_top = -801.0 -offset_right = 188.5 -offset_bottom = -680.0 -grow_horizontal = 2 -grow_vertical = 0 -auto_translate = false -localize_numeral_system = false -text = "debug" -label_settings = SubResource("LabelSettings_dgcsv") -horizontal_alignment = 1 -vertical_alignment = 1 [node name="Skeleton2D" type="Skeleton2D" parent="."] position = Vector2(17, 0) [node name="BootL" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(42, -41) +position = Vector2(39.7013, -40.9008) +rotation = -0.509857 +scale = Vector2(1, 1) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(896, 768, 128, 128) [node name="BootR" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(-71, -48) +position = Vector2(-69.1147, -47.8842) +rotation = 0.472078 +scale = Vector2(1, 1) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(896, 768, 128, 128) [node name="Body" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(51, -227.086) +position = Vector2(51, -222) texture = ExtResource("2_45h8h") offset = Vector2(-15, 0) region_enabled = true region_rect = Rect2(0, 640, 384, 384) [node name="HandL" type="Sprite2D" parent="Skeleton2D/Body"] -position = Vector2(-21.1837, 56.4427) +position = Vector2(33, 58) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) [node name="HandR" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(-153.296, 34.1959) +position = Vector2(-151, 31) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) [node name="Tail" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(44, 97.0863) -rotation = -0.0492555 -scale = Vector2(1, 1) +position = Vector2(44, 92) +scale = Vector2(0.999991, 0.999991) texture = ExtResource("2_45h8h") offset = Vector2(70, 0) region_enabled = true region_rect = Rect2(768, 640, 256, 128) [node name="Head" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(-40, -400.086) -rotation = 0.0177547 +position = Vector2(-40, -395) +rotation = 0.00121922 +scale = Vector2(1, 1) texture = ExtResource("2_45h8h") offset = Vector2(0, -168) region_enabled = true @@ -334,7 +391,7 @@ region_rect = Rect2(0, 0, 512, 640) [node name="Hat" type="Sprite2D" parent="Skeleton2D/Head"] position = Vector2(65, -103) -scale = Vector2(0.60004, 0.60004) +scale = Vector2(0.600959, 0.600959) texture = ExtResource("3_qyf3b") region_enabled = true region_rect = Rect2(0, 0, 1152, 1136) @@ -349,6 +406,7 @@ rest = Transform2D(1, 0, 0, 1, -18, -93) [node name="LegLeft" type="Bone2D" parent="Skeleton2D/root/Hips"] position = Vector2(77, 52) +scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, 77, 52) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/LegLeft"] @@ -356,6 +414,7 @@ remote_path = NodePath("../../../../BootL") [node name="LegRight" type="Bone2D" parent="Skeleton2D/root/Hips"] position = Vector2(-36, 45) +scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, -36, 45) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/LegRight"] @@ -367,6 +426,7 @@ rest = Transform2D(1, 0, 0, 1, 86, -129) [node name="Head" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] position = Vector2(-91, -173) +scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, -91, -173) [node name="Hat" type="Bone2D" parent="Skeleton2D/root/Hips/Spine/Head"] @@ -400,7 +460,6 @@ update_scale = false [node name="Tail" type="Bone2D" parent="Skeleton2D/root/Hips"] position = Vector2(130, -37) -scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, 130, -37) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Tail"] diff --git a/player/animations/WalkLeft.res b/player/animations/WalkLeft.res new file mode 100644 index 0000000..c5ba134 --- /dev/null +++ b/player/animations/WalkLeft.res @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd8853cb7ddbfbab53f9a4454e3a97449f9b38644740f3f8219a59bd2779c47e +size 863 diff --git a/player/animations/WalkRight.res b/player/animations/WalkRight.res new file mode 100644 index 0000000..1ad3aa4 --- /dev/null +++ b/player/animations/WalkRight.res @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08c4b86d1a319b9087bce4a2ee3a0edb7fa7e8b6a45f673db61e499162f50485 +size 867 diff --git a/player/animations/idle.res b/player/animations/idle.res index f99cf75..074d6ef 100644 --- a/player/animations/idle.res +++ b/player/animations/idle.res @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b2d35003e5d3bbf9886148a79b1f64e8ab69cb440983011ce66d80fe70ca2472 -size 1400 +oid sha256:60830d024859677bd58d684d35f8b1317f1a69aa060ef02f578287fc70ef92f1 +size 1548 diff --git a/player/currentCloth.tres b/player/currentCloth.tres index f6b0291..6cbfb95 100644 --- a/player/currentCloth.tres +++ b/player/currentCloth.tres @@ -1,6 +1,6 @@ [gd_resource type="CanvasTexture" load_steps=2 format=3 uid="uid://5pmqr3y62guu"] -[ext_resource type="Texture2D" uid="uid://dptor7en7li7e" path="res://player/hermandad-black.png" id="1_bh8p5"] +[ext_resource type="Texture2D" uid="uid://dc0ryln54y2hw" path="res://player/archer.png" id="1_31kra"] [resource] -diffuse_texture = ExtResource("1_bh8p5") +diffuse_texture = ExtResource("1_31kra") diff --git a/player/currentHat.tres b/player/currentHat.tres index 0ad1e19..5a78399 100644 --- a/player/currentHat.tres +++ b/player/currentHat.tres @@ -1,6 +1,6 @@ [gd_resource type="CanvasTexture" load_steps=2 format=3 uid="uid://5qixrbrclydr"] -[ext_resource type="Texture2D" uid="uid://pkf86c0n3xig" path="res://extracted/Texture2D/Whitch Hat #62998.png" id="1_7652k"] +[ext_resource type="Texture2D" uid="uid://0m4sejstlmy7" path="res://extracted/Texture2D/Hat Glasses.png" id="1_ogipp"] [resource] -diffuse_texture = ExtResource("1_7652k") +diffuse_texture = ExtResource("1_ogipp") From 04a924943ba45c8f590d43a52a1912115dace8ef Mon Sep 17 00:00:00 2001 From: LUCASTUCIOUS Date: Mon, 22 Jul 2024 23:08:48 +0200 Subject: [PATCH 11/11] Animation Tree animation --- player.gd | 11 +- player.tscn | 260 ++++++++++++++++++++++++++++---- player/animations/WalkLeft.res | 4 +- player/animations/WalkRight.res | 4 +- player/animations/idle.res | 4 +- 5 files changed, 242 insertions(+), 41 deletions(-) diff --git a/player.gd b/player.gd index 43ce6b8..2bc4517 100644 --- a/player.gd +++ b/player.gd @@ -24,9 +24,14 @@ func _physics_process(delta): velocity.y = move_toward(velocity.y, 0, SPEED) #endregion - var WalkLeft = directionX < 0 - $AnimationTree.set("parameters/Locomotion/conditions/Idle",(velocity.x == 0 and velocity.y == 0)) - $AnimationTree.set("parameters/Locomotion/conditions/WalkLeft",velocity.x != 0) +#region Animation + + var WalkLeft = directionX < 0 or (directionY < 0 and directionY != 0) + var Idle = (velocity.x == 0 and velocity.y == 0) + $AnimationTree.set("parameters/Locomotion/conditions/Idle",Idle) + $AnimationTree.set("parameters/Locomotion/conditions/WalkLeft",WalkLeft and !Idle ) + $AnimationTree.set("parameters/Locomotion/conditions/WalkRight",!WalkLeft and !Idle) +#endregion move_and_slide() diff --git a/player.tscn b/player.tscn index 35b079b..c930d65 100644 --- a/player.tscn +++ b/player.tscn @@ -1,10 +1,11 @@ -[gd_scene load_steps=19 format=3 uid="uid://0m1hk2nu4bps"] +[gd_scene load_steps=25 format=3 uid="uid://0m1hk2nu4bps"] [ext_resource type="Script" path="res://player.gd" id="1_0pgv8"] [ext_resource type="Texture2D" uid="uid://5pmqr3y62guu" path="res://player/currentCloth.tres" id="2_45h8h"] [ext_resource type="Animation" uid="uid://b85dikp6ps8i2" path="res://player/animations/idle.res" id="2_ymiw5"] [ext_resource type="Animation" uid="uid://2woypk4u40b5" path="res://player/animations/WalkLeft.res" id="3_2eohq"] [ext_resource type="Texture2D" uid="uid://5qixrbrclydr" path="res://player/currentHat.tres" id="3_qyf3b"] +[ext_resource type="Animation" uid="uid://d3wpyd6di1ada" path="res://player/animations/WalkRight.res" id="4_pyvsf"] [ext_resource type="Texture2D" uid="uid://sod0ms1cfkjf" path="res://player/playerSkin_ref.png" id="4_ytgpb"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_kapu3"] @@ -42,7 +43,7 @@ tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"points": PackedFloat32Array(0.153589, -0.25, 0, 0.25, 0), "times": PackedFloat32Array(0) } tracks/3/type = "bezier" @@ -86,7 +87,7 @@ tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { "handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(33, -0.25, 0, 0.25, 0), +"points": PackedFloat32Array(-30, -0.25, 0, 0.25, 0), "times": PackedFloat32Array(0) } tracks/7/type = "bezier" @@ -97,7 +98,7 @@ tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { "handle_modes": PackedInt32Array(0), -"points": PackedFloat32Array(58, -0.25, 0, 0.25, 0), +"points": PackedFloat32Array(50, -0.25, 0, 0.25, 0), "times": PackedFloat32Array(0) } tracks/8/type = "bezier" @@ -255,11 +256,189 @@ tracks/21/keys = { "points": PackedFloat32Array(45, -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/root/Hips/Spine/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("Skeleton2D/root/Hips/Spine/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 = "value" +tracks/24/imported = false +tracks/24/enabled = true +tracks/24/path = NodePath("Skeleton2D/Body/HandL:show_behind_parent") +tracks/24/interp = 1 +tracks/24/loop_wrap = true +tracks/24/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} +tracks/25/type = "bezier" +tracks/25/imported = false +tracks/25/enabled = true +tracks/25/path = NodePath("Skeleton2D/root/Hips/Spine:scale:x") +tracks/25/interp = 1 +tracks/25/loop_wrap = true +tracks/25/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -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/root/Hips/Spine:scale:y") +tracks/26/interp = 1 +tracks/26/loop_wrap = true +tracks/26/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -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/root/Hips/Tail:scale:x") +tracks/27/interp = 1 +tracks/27/loop_wrap = true +tracks/27/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/28/type = "bezier" +tracks/28/imported = false +tracks/28/enabled = true +tracks/28/path = NodePath("Skeleton2D/root/Hips/Tail:scale:y") +tracks/28/interp = 1 +tracks/28/loop_wrap = true +tracks/28/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/29/type = "bezier" +tracks/29/imported = false +tracks/29/enabled = true +tracks/29/path = NodePath("Skeleton2D/root/Hips/Spine/Head/Hat:scale:x") +tracks/29/interp = 1 +tracks/29/loop_wrap = true +tracks/29/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0.6, -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("Skeleton2D/root/Hips/Spine/Head/Hat:scale:y") +tracks/30/interp = 1 +tracks/30/loop_wrap = true +tracks/30/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0.6, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/31/type = "bezier" +tracks/31/imported = false +tracks/31/enabled = true +tracks/31/path = NodePath("Skeleton2D/root/Hips/Spine/Head/Hat:position:x") +tracks/31/interp = 1 +tracks/31/loop_wrap = true +tracks/31/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(65, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/32/type = "bezier" +tracks/32/imported = false +tracks/32/enabled = true +tracks/32/path = NodePath("Skeleton2D/root/Hips/Spine/Head/Hat:position:y") +tracks/32/interp = 1 +tracks/32/loop_wrap = true +tracks/32/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-103, -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("Skeleton2D/root/Hips/Spine/ArmLeft:rotation") +tracks/33/interp = 1 +tracks/33/loop_wrap = true +tracks/33/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -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("Skeleton2D/root/Hips/LegLeft:scale:x") +tracks/34/interp = 1 +tracks/34/loop_wrap = true +tracks/34/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -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("Skeleton2D/root/Hips/LegLeft:scale:y") +tracks/35/interp = 1 +tracks/35/loop_wrap = true +tracks/35/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -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/root/Hips/LegRight:scale:x") +tracks/36/interp = 1 +tracks/36/loop_wrap = true +tracks/36/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -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/root/Hips/LegRight:scale:y") +tracks/37/interp = 1 +tracks/37/loop_wrap = true +tracks/37/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(1, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} [sub_resource type="AnimationLibrary" id="AnimationLibrary_4k813"] _data = { "RESET": SubResource("Animation_oktsg"), "WalkLeft": ExtResource("3_2eohq"), +"WalkRight": ExtResource("4_pyvsf"), "idle": ExtResource("2_ymiw5") } @@ -268,6 +447,9 @@ _data = { [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_myrjl"] animation = &"WalkLeft" +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_50xfb"] +animation = &"WalkRight" + [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_dx8h8"] animation = &"idle" @@ -279,22 +461,43 @@ advance_mode = 2 advance_condition = &"WalkLeft" [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0oq83"] +xfade_time = 0.2 advance_mode = 2 advance_condition = &"Idle" +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_p8n5f"] +advance_mode = 2 +advance_condition = &"WalkRight" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_yhvwn"] +xfade_time = 0.2 +advance_mode = 2 +advance_condition = &"Idle" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_xfa3x"] +advance_mode = 2 +advance_condition = &"WalkLeft" + +[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_m2u4j"] +advance_mode = 2 +advance_condition = &"WalkRight" + [sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_x16w7"] states/BlendTree/node = SubResource("AnimationNodeBlendTree_hn1cf") states/BlendTree/position = Vector2(668, 238) states/End/position = Vector2(328, 289) states/Start/position = Vector2(371, 25) states/WalkLeft/node = SubResource("AnimationNodeAnimation_myrjl") -states/WalkLeft/position = Vector2(534, 122) +states/WalkLeft/position = Vector2(495, 179) +states/WalkRight/node = SubResource("AnimationNodeAnimation_50xfb") +states/WalkRight/position = Vector2(259, 179) states/idle/node = SubResource("AnimationNodeAnimation_dx8h8") states/idle/position = Vector2(371, 111) -transitions = ["Start", "idle", SubResource("AnimationNodeStateMachineTransition_ogkr4"), "idle", "WalkLeft", SubResource("AnimationNodeStateMachineTransition_q2u5u"), "WalkLeft", "idle", SubResource("AnimationNodeStateMachineTransition_0oq83")] -graph_offset = Vector2(-48, -19) +transitions = ["Start", "idle", SubResource("AnimationNodeStateMachineTransition_ogkr4"), "idle", "WalkLeft", SubResource("AnimationNodeStateMachineTransition_q2u5u"), "WalkLeft", "idle", SubResource("AnimationNodeStateMachineTransition_0oq83"), "idle", "WalkRight", SubResource("AnimationNodeStateMachineTransition_p8n5f"), "WalkRight", "idle", SubResource("AnimationNodeStateMachineTransition_yhvwn"), "WalkRight", "WalkLeft", SubResource("AnimationNodeStateMachineTransition_xfa3x"), "WalkLeft", "WalkRight", SubResource("AnimationNodeStateMachineTransition_m2u4j")] +graph_offset = Vector2(-106, 41) [sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_wgp38"] +graph_offset = Vector2(-144, 42) nodes/Locomotion/node = SubResource("AnimationNodeStateMachine_x16w7") nodes/Locomotion/position = Vector2(180, 120) nodes/output/position = Vector2(380, 120) @@ -331,59 +534,56 @@ tree_root = SubResource("AnimationNodeBlendTree_wgp38") anim_player = NodePath("../AnimationPlayer") parameters/Locomotion/conditions/Idle = false parameters/Locomotion/conditions/WalkLeft = false +parameters/Locomotion/conditions/WalkRight = false [node name="Skeleton2D" type="Skeleton2D" parent="."] position = Vector2(17, 0) [node name="BootL" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(39.7013, -40.9008) -rotation = -0.509857 -scale = Vector2(1, 1) +position = Vector2(42, -41) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(896, 768, 128, 128) [node name="BootR" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(-69.1147, -47.8842) -rotation = 0.472078 -scale = Vector2(1, 1) +position = Vector2(-71, -48) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(896, 768, 128, 128) [node name="Body" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(51, -222) +position = Vector2(51, -222.399) texture = ExtResource("2_45h8h") offset = Vector2(-15, 0) region_enabled = true region_rect = Rect2(0, 640, 384, 384) [node name="HandL" type="Sprite2D" parent="Skeleton2D/Body"] -position = Vector2(33, 58) +position = Vector2(-29.3091, 50.5049) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) [node name="HandR" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(-151, 31) +position = Vector2(-151.18, 31.2505) texture = ExtResource("2_45h8h") region_enabled = true region_rect = Rect2(768, 768, 128, 128) [node name="Tail" type="Sprite2D" parent="Skeleton2D/Body"] show_behind_parent = true -position = Vector2(44, 92) -scale = Vector2(0.999991, 0.999991) +position = Vector2(44, 92.3986) +rotation = -0.217798 +scale = Vector2(1, 1) texture = ExtResource("2_45h8h") offset = Vector2(70, 0) region_enabled = true region_rect = Rect2(768, 640, 256, 128) [node name="Head" type="Sprite2D" parent="Skeleton2D"] -position = Vector2(-40, -395) -rotation = 0.00121922 -scale = Vector2(1, 1) +position = Vector2(-40, -395.399) +rotation = 0.00139138 texture = ExtResource("2_45h8h") offset = Vector2(0, -168) region_enabled = true @@ -391,7 +591,7 @@ region_rect = Rect2(0, 0, 512, 640) [node name="Hat" type="Sprite2D" parent="Skeleton2D/Head"] position = Vector2(65, -103) -scale = Vector2(0.600959, 0.600959) +scale = Vector2(0.6, 0.6) texture = ExtResource("3_qyf3b") region_enabled = true region_rect = Rect2(0, 0, 1152, 1136) @@ -406,7 +606,6 @@ rest = Transform2D(1, 0, 0, 1, -18, -93) [node name="LegLeft" type="Bone2D" parent="Skeleton2D/root/Hips"] position = Vector2(77, 52) -scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, 77, 52) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/LegLeft"] @@ -414,7 +613,6 @@ remote_path = NodePath("../../../../BootL") [node name="LegRight" type="Bone2D" parent="Skeleton2D/root/Hips"] position = Vector2(-36, 45) -scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, -36, 45) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/LegRight"] @@ -426,23 +624,22 @@ rest = Transform2D(1, 0, 0, 1, 86, -129) [node name="Head" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] position = Vector2(-91, -173) -scale = Vector2(1, 1) rest = Transform2D(1, 0, 0, 1, -91, -173) [node name="Hat" type="Bone2D" parent="Skeleton2D/root/Hips/Spine/Head"] position = Vector2(65, -103) -rest = Transform2D(1, 0, 0, 1, 65, -103) +scale = Vector2(0.6, 0.6) +rest = Transform2D(0.6, 0, 0, 0.6, 65, -103) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/Head/Hat"] remote_path = NodePath("../../../../../../Head/Hat") -update_scale = false [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/Head"] remote_path = NodePath("../../../../../Head") [node name="ArmLeft" type="Bone2D" parent="Skeleton2D/root/Hips/Spine"] -position = Vector2(33, 58) -rest = Transform2D(1, 0, 0, 1, 33, 58) +position = Vector2(-30, 50) +rest = Transform2D(1, 0, 0, 1, -30, 50) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine/ArmLeft"] remote_path = NodePath("../../../../../Body/HandL") @@ -456,15 +653,14 @@ remote_path = NodePath("../../../../../Body/HandR") [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Spine"] remote_path = NodePath("../../../../Body") -update_scale = false [node name="Tail" type="Bone2D" parent="Skeleton2D/root/Hips"] position = Vector2(130, -37) -rest = Transform2D(1, 0, 0, 1, 130, -37) +rotation = 0.153589 +rest = Transform2D(0.973179, -0.23005, 0.23005, 0.973179, 130, -37) [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Skeleton2D/root/Hips/Tail"] remote_path = NodePath("../../../../Body/Tail") -update_scale = false [node name="debug2" type="Sprite2D" parent="."] visible = false diff --git a/player/animations/WalkLeft.res b/player/animations/WalkLeft.res index c5ba134..2d999d1 100644 --- a/player/animations/WalkLeft.res +++ b/player/animations/WalkLeft.res @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cd8853cb7ddbfbab53f9a4454e3a97449f9b38644740f3f8219a59bd2779c47e -size 863 +oid sha256:07d8882c60e6f472e0e811e3db4c12c02ebb3e27c8040eeae69c34e826815c74 +size 1755 diff --git a/player/animations/WalkRight.res b/player/animations/WalkRight.res index 1ad3aa4..3b2d6ce 100644 --- a/player/animations/WalkRight.res +++ b/player/animations/WalkRight.res @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:08c4b86d1a319b9087bce4a2ee3a0edb7fa7e8b6a45f673db61e499162f50485 -size 867 +oid sha256:3d4577879ae4ddd28b842ee1565b59f97c0a2db70cbcd1dab6f1b2194a9e132d +size 1753 diff --git a/player/animations/idle.res b/player/animations/idle.res index 074d6ef..93b2d04 100644 --- a/player/animations/idle.res +++ b/player/animations/idle.res @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:60830d024859677bd58d684d35f8b1317f1a69aa060ef02f578287fc70ef92f1 -size 1548 +oid sha256:0cd989c7127fc633c1c5c62b87f50cb9f974338bdd42209c40af92975952791f +size 1969