Initial commit

wip/multiplayer
copygirl 5 months ago
commit eba2e0eaba
  1. 9
      .editorconfig
  2. 2
      .gitattributes
  3. 2
      .gitignore
  4. 47
      .vscode/launch.json
  5. 11
      .vscode/settings.json
  6. 18
      .vscode/tasks.json
  7. 5
      GlobalUsings.cs
  8. 8
      Inventory2.csproj
  9. 19
      Inventory2.sln
  10. 7
      PhysicsLayer.cs
  11. 5
      RenderLayer.cs
  12. BIN
      assets/crosshair.png
  13. 34
      assets/crosshair.png.import
  14. 1
      assets/icon.svg
  15. 37
      assets/icon.svg.import
  16. BIN
      assets/models/character.blend
  17. 50
      assets/models/character.blend.import
  18. BIN
      assets/models/character.blend1
  19. 1
      assets/models/crate.bbmodel
  20. 1
      assets/models/crate.gltf
  21. 34
      assets/models/crate.gltf.import
  22. BIN
      assets/models/crate_0.png
  23. 35
      assets/models/crate_0.png.import
  24. BIN
      assets/palettes/metal.png
  25. 34
      assets/palettes/metal.png.import
  26. BIN
      assets/palettes/wood.png
  27. 34
      assets/palettes/wood.png.import
  28. 69
      assets/shaders/ReplacePalette.cs
  29. 24
      assets/shaders/outline.gdshader
  30. 25
      assets/shaders/palette_swap.gdshader
  31. 99
      objects/Grid.cs
  32. 7
      objects/Item.cs
  33. 17
      objects/crate.tscn
  34. 149
      player/AnimationController.cs
  35. 39
      player/CameraController.cs
  36. 77
      player/MovementController.cs
  37. 119
      player/PickupController.cs
  38. 915
      player/player.tscn
  39. 89
      project.godot
  40. 60
      scenes/game.tscn
  41. 122
      scenes/warehouse.tscn
  42. 7
      scripts/Crosshair.cs
  43. 9
      scripts/OutlineCamera.cs

@ -0,0 +1,9 @@
root = true
[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = tab
trim_trailing_whitespace = true
insert_final_newline = true

2
.gitattributes vendored

@ -0,0 +1,2 @@
# Normalize EOL for all files that Git considers text files.
* text=auto eol=lf

2
.gitignore vendored

@ -0,0 +1,2 @@
# Godot 4+ specific ignores
.godot/

@ -0,0 +1,47 @@
{
"version": "2.0.0",
"configurations": [
{
"name": "Play in Editor",
"type": "godot-mono",
"mode": "playInEditor",
"request": "launch"
},
{
"name": "Launch",
"type": "godot-mono",
"request": "launch",
"mode": "executable",
"preLaunchTask": "build",
"executable": "/usr/bin/godot-mono",
// See which arguments are available here:
// https://docs.godotengine.org/en/stable/getting_started/editor/command_line_tutorial.html
"executableArguments": [
"--path",
"${workspaceRoot}"
]
},
{
"name": "Launch (Select Scene)",
"type": "godot-mono",
"request": "launch",
"mode": "executable",
"preLaunchTask": "build",
"executable": "/usr/bin/godot-mono",
// See which arguments are available here:
// https://docs.godotengine.org/en/stable/getting_started/editor/command_line_tutorial.html
"executableArguments": [
"--path",
"${workspaceRoot}",
"${command:SelectLaunchScene}"
]
},
{
"name": "Attach",
"type": "godot-mono",
"request": "attach",
"address": "localhost",
"port": 23685
}
]
}

@ -0,0 +1,11 @@
{
"files.exclude": {
"**/.git": true,
"**/.svn": true,
"**/.hg": true,
"**/CVS": true,
"**/.DS_Store": true,
"**/Thumbs.db": true,
"**/*.import": true,
}
}

18
.vscode/tasks.json vendored

@ -0,0 +1,18 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"command": "/usr/bin/godot",
"type": "process",
"args": [
"--build-solutions",
"--path",
"${workspaceRoot}",
"--no-window",
"-q"
],
"problemMatcher": "$msCompile"
}
]
}

@ -0,0 +1,5 @@
global using System;
global using Godot;
global using Godot.Collections;
global using static Godot.GD;
global using static Godot.Mathf;

@ -0,0 +1,8 @@
<Project Sdk="Godot.NET.Sdk/4.2.1">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<!--<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'android' ">net7.0</TargetFramework>-->
<!--<TargetFramework Condition=" '$(GodotTargetPlatform)' == 'ios' ">net8.0</TargetFramework>-->
<EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup>
</Project>

@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Inventory2", "Inventory2.csproj", "{71CAFB73-32EF-4046-8B58-C5AF435165DD}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
ExportDebug|Any CPU = ExportDebug|Any CPU
ExportRelease|Any CPU = ExportRelease|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{71CAFB73-32EF-4046-8B58-C5AF435165DD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{71CAFB73-32EF-4046-8B58-C5AF435165DD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{71CAFB73-32EF-4046-8B58-C5AF435165DD}.ExportDebug|Any CPU.ActiveCfg = ExportDebug|Any CPU
{71CAFB73-32EF-4046-8B58-C5AF435165DD}.ExportDebug|Any CPU.Build.0 = ExportDebug|Any CPU
{71CAFB73-32EF-4046-8B58-C5AF435165DD}.ExportRelease|Any CPU.ActiveCfg = ExportRelease|Any CPU
{71CAFB73-32EF-4046-8B58-C5AF435165DD}.ExportRelease|Any CPU.Build.0 = ExportRelease|Any CPU
EndGlobalSection
EndGlobal

@ -0,0 +1,7 @@
[Flags]
public enum PhysicsLayer : uint {
Static = 1 << 0,
Dynamic = 1 << 1,
Player = 1 << 2,
Interactable = 1 << 3,
}

@ -0,0 +1,5 @@
[Flags]
public enum RenderLayer : uint {
Default = 1 << 0,
Outline = 1 << 1,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 725 B

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://lxxfestfg2dt"
path="res://.godot/imported/crosshair.png-7a5ee98d03b748045923e3a0fa977b20.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/crosshair.png"
dest_files=["res://.godot/imported/crosshair.png-7a5ee98d03b748045923e3a0fa977b20.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

@ -0,0 +1 @@
<svg height="128" width="128" xmlns="http://www.w3.org/2000/svg"><rect x="2" y="2" width="124" height="124" rx="14" fill="#363d52" stroke="#212532" stroke-width="4"/><g transform="scale(.101) translate(122 122)"><g fill="#fff"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 813 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H447l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c3 34 55 34 58 0v-86c-3-34-55-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></g></svg>

After

Width:  |  Height:  |  Size: 950 B

@ -0,0 +1,37 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bqnhauc5a26p2"
path="res://.godot/imported/icon.svg-56083ea2a1f1a4f1e49773bdc6d7826c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/icon.svg"
dest_files=["res://.godot/imported/icon.svg-56083ea2a1f1a4f1e49773bdc6d7826c.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
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

Binary file not shown.

@ -0,0 +1,50 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bfh3eqgywr0ul"
path="res://.godot/imported/character.blend-d9f9493f3cef4e595f786664ae42c415.scn"
[deps]
source_file="res://assets/models/character.blend"
dest_files=["res://.godot/imported/character.blend-d9f9493f3cef4e595f786664ae42c415.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/naming_version=1
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -0,0 +1,34 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://b2f0teloaalm7"
path="res://.godot/imported/crate.gltf-bbb7f590716c60fd1f3c7c6892f404dc.scn"
[deps]
source_file="res://assets/models/crate.gltf"
dest_files=["res://.godot/imported/crate.gltf-bbb7f590716c60fd1f3c7c6892f404dc.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/naming_version=1
gltf/embedded_image_handling=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 713 B

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bg3s6d22v46jw"
path="res://.godot/imported/crate_0.png-729a30ceda2fbbe43202fd925d32d34d.ctex"
metadata={
"vram_texture": false
}
generator_parameters={}
[deps]
source_file="res://assets/models/crate_0.png"
dest_files=["res://.godot/imported/crate_0.png-729a30ceda2fbbe43202fd925d32d34d.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=true
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=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dts3g3ivc4stn"
path="res://.godot/imported/metal.png-2d0cacc6869ab43dc3901a386639f81a.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/palettes/metal.png"
dest_files=["res://.godot/imported/metal.png-2d0cacc6869ab43dc3901a386639f81a.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=true
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=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 530 B

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dv3741xvn5lo1"
path="res://.godot/imported/wood.png-e71b940f7ec72b8deeb293f8642ac1ac.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/palettes/wood.png"
dest_files=["res://.godot/imported/wood.png-e71b940f7ec72b8deeb293f8642ac1ac.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=true
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=0

@ -0,0 +1,69 @@
public partial class ReplacePalette : Node3D
{
readonly struct TextureInfo(float min, float max)
{
public float MinBrightness { get; } = min;
public float MaxBrightness { get; } = max;
}
static Shader _paletteShader;
static System.Collections.Generic.Dictionary<Texture2D, TextureInfo> _textureCache = [];
[Export] public Texture2D Palette { get; set; }
public override void _Ready()
{
_paletteShader ??= Load<Shader>("res://assets/shaders/palette_swap.gdshader");
ReplaceShaderRecursive(this, Palette);
}
static void ReplaceShaderRecursive(Node node, Texture2D palette)
{
if (node is MeshInstance3D mesh) {
var oldMaterial = (StandardMaterial3D)mesh.Mesh.SurfaceGetMaterial(0);
var texture = oldMaterial.AlbedoTexture;
var info = GetOrCreateTextureInfo(texture);
var material = new ShaderMaterial { Shader = _paletteShader };
material.SetShaderParameter("palette", palette);
material.SetShaderParameter("albedo_texture", texture);
material.SetShaderParameter("min_brightness", info.MinBrightness);
material.SetShaderParameter("max_brightness", info.MaxBrightness);
mesh.MaterialOverride = material;
}
foreach (var child in node.GetChildren())
ReplaceShaderRecursive(child, palette);
}
static TextureInfo GetOrCreateTextureInfo(Texture2D texture)
{
if (!_textureCache.TryGetValue(texture, out var info)) {
var minBrightness = 1.0f;
var maxBrightness = 0.0f;
var image = texture.GetImage();
image.Convert(Image.Format.Rgba8);
var data = image.GetData().AsSpan();
for (var i = 0; i < data.Length; i += 4) {
var rgba = data.Slice(i, 4);
if (rgba[3] <= byte.MaxValue / 2) continue;
var brightness = Max(rgba[0], Max(rgba[1], rgba[2])) / (float)byte.MaxValue;
minBrightness = Min(minBrightness, brightness);
maxBrightness = Max(maxBrightness, brightness);
}
// for (var x = 0; x < image.GetWidth(); x++)
// for (var y = 0; y < image.GetHeight(); y++) {
// var color = image.GetPixel(x, y);
// // var brightness = Max(color.R, Max(color.G, color.B));
// color.ToHsv(out _, out _, out var brightness);
// minBrightness = Min(minBrightness, brightness);
// maxBrightness = Max(maxBrightness, brightness);
// }
info = new(minBrightness, maxBrightness);
_textureCache.Add(texture, info);
}
return info;
}
}

@ -0,0 +1,24 @@
// Adapted from Leafshade Interactive's outline shader
// explained and shown in https://youtu.be/yh1Kdr37RmI.
shader_type canvas_item;
uniform vec4 line_color : source_color = vec4(1.0);
uniform float line_thickness : hint_range(0.0, 10.0) = 2.0;
void fragment() {
vec2 size = TEXTURE_PIXEL_SIZE * line_thickness;
float outline =
texture(TEXTURE, UV + vec2( size.x, 0)).a +
texture(TEXTURE, UV + vec2(-size.x, 0)).a +
texture(TEXTURE, UV + vec2(0, size.y)).a +
texture(TEXTURE, UV + vec2(0, -size.y)).a +
texture(TEXTURE, UV + vec2( size.x, size.y)).a +
texture(TEXTURE, UV + vec2(-size.x, size.y)).a +
texture(TEXTURE, UV + vec2(-size.x, -size.y)).a +
texture(TEXTURE, UV + vec2( size.x, -size.y)).a;
float alpha = min(outline, 1.0) - texture(TEXTURE, UV).a;
COLOR = vec4(line_color.rgb, line_color.a * alpha);
}

@ -0,0 +1,25 @@
shader_type spatial;
uniform sampler2D palette : filter_nearest;
uniform sampler2D albedo_texture : filter_nearest;
uniform float min_brightness = 0.0; // This is calculated for the
uniform float max_brightness = 1.0; // provided albedo texture.
// vec3 rgb2hsv(vec3 c) {
// vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
// vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g));
// vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r));
//
// float d = q.x - min(q.w, q.y);
// const float e = 1.0e-10;
// return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
// }
void fragment() {
ivec2 size = textureSize(palette, 0);
vec3 color = texture(albedo_texture, UV).rgb;
float brightness = max(color.r, max(color.g, color.b));
brightness = (brightness - min_brightness) / (max_brightness - min_brightness);
float palette_u = (0.5 + (brightness * float(size.r - 1))) / float(size.r);
ALBEDO = texture(palette, vec2(palette_u, 0.5)).rgb;
}

@ -0,0 +1,99 @@
[Tool]
public partial class Grid : Area3D
{
public const float StepSize = 1.0f / 16;
const float Offset = 0.001f;
const int ThickLineEvery = 4;
const float ThickLineWidth = 0.006f;
const float ThinLineWidth = 0.004f;
static readonly Color ThickLineColor = new(0.25f, 0.25f, 0.25f);
static readonly Color ThinLineColor = new(0.35f, 0.35f, 0.35f);
Vector2I _gridSize = new(16, 16);
[Export] public Vector2I GridSize {
get => _gridSize;
set { _gridSize = value; Update(); }
}
public override void _Ready() => Update();
void Update()
{
UpdateCollisionShape();
UpdateImmediateMesh();
}
static StandardMaterial3D _material;
static StandardMaterial3D GetOrCreateMaterial()
{
if (_material == null) {
_material = new StandardMaterial3D();
_material.VertexColorUseAsAlbedo = true;
}
return _material;
}
BoxShape3D _shape;
void UpdateCollisionShape()
{
if (Engine.IsEditorHint()) return;
if (_shape == null) {
_shape = new BoxShape3D();
AddChild(new CollisionShape3D { Shape = _shape });
}
_shape.Size = new(GridSize.X * StepSize, 0.001f, GridSize.Y * StepSize);
}
ImmediateMesh _mesh;
void UpdateImmediateMesh()
{
static bool IsThickLine(int line)
=> (line % ThickLineEvery) == 0;
static (float, Color) GetLineWidthAndColor(int line)
=> IsThickLine(line) ? (ThickLineWidth, ThickLineColor) : (ThinLineWidth, ThinLineColor);
static void FlatQuad(ImmediateMesh mesh, float x1, float x2, float y1, float y2) {
mesh.SurfaceAddVertex(new(x1, Offset, y1)); // 1--2
mesh.SurfaceAddVertex(new(x2, Offset, y1)); // | /
mesh.SurfaceAddVertex(new(x1, Offset, y2)); // 3'
mesh.SurfaceAddVertex(new(x2, Offset, y1)); // .1
mesh.SurfaceAddVertex(new(x2, Offset, y2)); // / |
mesh.SurfaceAddVertex(new(x1, Offset, y2)); // 3--2
}
if (_mesh == null) {
var meshInstance = new MeshInstance3D();
meshInstance.Mesh = _mesh = new();
AddChild(meshInstance);
} else {
_mesh.ClearSurfaces();
}
_mesh.SurfaceBegin(Mesh.PrimitiveType.Triangles);
// Horizontal Lines
var half_width = GridSize.X * StepSize / 2;
for (var line = 0; line <= GridSize.Y; line++) {
var (line_width, line_color) = GetLineWidthAndColor(line);
var y = StepSize * (line - GridSize.Y / 2.0f);
_mesh.SurfaceSetColor(line_color);
FlatQuad(_mesh, -half_width, +half_width, y - line_width / 2, y + line_width / 2);
}
// Vertical Lines
var half_depth = GridSize.Y * StepSize / 2;
for (var line = 0; line <= GridSize.X; line++) {
var (line_width, line_color) = GetLineWidthAndColor(line);
var x = StepSize * (line - GridSize.X / 2.0f);
_mesh.SurfaceSetColor(line_color);
FlatQuad(_mesh, x - line_width / 2, x + line_width / 2, -half_depth, +half_depth);
}
_mesh.SurfaceEnd();
_mesh.SurfaceSetMaterial(0, GetOrCreateMaterial());
}
}

@ -0,0 +1,7 @@
public partial class Item : StaticBody3D
{
[Export] public Vector3I Size { get; set; }
public virtual MeshInstance3D Mesh
=> GetNode<MeshInstance3D>("MeshInstance3D");
}

@ -0,0 +1,17 @@
[gd_scene load_steps=5 format=3 uid="uid://yvy5vvaqgxy8"]
[ext_resource type="Script" path="res://assets/shaders/ReplacePalette.cs" id="1_mtvxk"]
[ext_resource type="Texture2D" uid="uid://dv3741xvn5lo1" path="res://assets/palettes/wood.png" id="2_n415g"]
[ext_resource type="PackedScene" uid="uid://b2f0teloaalm7" path="res://assets/models/crate.gltf" id="3_tncd6"]
[sub_resource type="BoxShape3D" id="BoxShape3D_to3fn"]
[node name="Crate" type="StaticBody3D"]
script = ExtResource("1_mtvxk")
Palette = ExtResource("2_n415g")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("BoxShape3D_to3fn")
[node name="blockbench_export" parent="." instance=ExtResource("3_tncd6")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0)

@ -0,0 +1,149 @@
public partial class AnimationController : Node3D
{
[Export] public Skeleton3D Skeleton { get; set; }
[Export] public BoneAttachment3D RootBone { get; set; }
// Contains all the bones in the skeleton, keyed by name (e.g. "LowerArm_L").
Dictionary<string, BoneAttachment3D> _bones = [];
// Whether the player's body is currently turning to match up with the camera rotation.
bool _isTurning = false;
// Current amount the body is turned due to walking sideways.
float _bodyYaw = 0.0f;
CharacterBody3D _player;
MovementController _movementController;
CameraController _cameraController;
Camera3D _camera;
Transform3D _cameraDefaultTransform;
AnimationTree _animTree;
Animation _walkForwardAnim;
Animation _walkBackwardAnim;
public override void _Ready()
{
_player = GetParent<CharacterBody3D>();
_movementController = _player.GetNode<MovementController>("MovementController");
_cameraController = _player.GetNode<CameraController>("CameraController");
_camera = _cameraController.Camera;
_cameraDefaultTransform = _camera.Transform;
_animTree = GetNode<AnimationTree>("AnimationTree");
_walkForwardAnim = _animTree.GetAnimation("walk_forward");
_walkBackwardAnim = _animTree.GetAnimation("walk_backward");
void AddBone(BoneAttachment3D bone)
{ bone.OverridePose = true; _bones[bone.Name] = bone; }
AddBone(RootBone);
foreach (var child in RootBone.FindChildren("*", "BoneAttachment3D"))
AddBone((BoneAttachment3D)child);
}
public override void _Process(double delta)
{
ResetTransforms();
HandleTurning(delta);
HandleLookingAnimation(delta);
HandleWalkingAnimation(delta);
}
void ResetTransforms()
{
foreach (var bone in _bones.Values)
bone.Transform = Skeleton.GetBonePose(bone.BoneIdx);
_camera.Transform = _cameraDefaultTransform;
}
void HandleTurning(double delta)
{
const float TurnBegin = 60.0f; // Start turning when camera is rotated this much.
const float TurnEnd = 5.0f; // Stop turning when body is this close to camera rotation.
const float TurnSpeed = 6.0f;
var yaw = _cameraController.CurrentYaw; // Camera yaw relative to player yaw.
var isMoving = _movementController.RealMoveSpeed > 0.01f;
_isTurning = isMoving || (Abs(yaw) > DegToRad(TurnBegin));
if (_isTurning) {
var yawDelta = Sign(yaw) * Min(Abs(yaw), Abs(yaw) * TurnSpeed * (float)delta);
_cameraController.CurrentYaw -= (float)yawDelta;
_player.RotateY(yawDelta);
if (Abs(_cameraController.CurrentYaw) < DegToRad(TurnEnd))
_isTurning = false;
}
}
void HandleLookingAnimation(double delta)
{
const float PitchFactorLowerBody = 0.05f;
const float PitchFactorUpperBody = 0.20f;
const float PitchFactorNeck = 0.25f;
const float PitchFactorHead = 0.35f;
var pitch = _cameraController.CurrentPitch;
_bones["LowerBody"].RotateX(pitch * PitchFactorLowerBody);
_bones["UpperBody"].RotateX(-pitch * PitchFactorUpperBody);
_bones["Neck"].RotateX(-pitch * PitchFactorNeck);
_bones["Head"].RotateX(-pitch * PitchFactorHead);
_bones["UpperArm_L"].RotateX(pitch * (PitchFactorLowerBody + PitchFactorUpperBody) / 2);
_bones["UpperArm_R"].RotateX(pitch * (PitchFactorLowerBody + PitchFactorUpperBody) / 2);
_camera.RotateX(pitch * (1 - PitchFactorLowerBody - PitchFactorUpperBody - PitchFactorNeck - PitchFactorHead));
const float YawFactorLowerBody = 0.06f;
const float YawFactorUpperBody = 0.18f;
const float YawFactorNeck = 0.2f;
const float YawFactorHead = 0.3f;
var yaw = _cameraController.CurrentYaw;
_bones["LowerBody"].GlobalRotate(Vector3.Up, yaw * YawFactorLowerBody);
_bones["UpperBody"].GlobalRotate(Vector3.Up, yaw * YawFactorUpperBody);
_bones["Neck"].GlobalRotate(Vector3.Up, yaw * YawFactorNeck);
_bones["Head"].GlobalRotate(Vector3.Up, yaw * YawFactorHead);
_camera.GlobalRotate(Vector3.Up, yaw * (1 - YawFactorLowerBody - YawFactorUpperBody - YawFactorNeck - YawFactorHead));
// How much of the "ideal" camera rotation (rather than animation rotation) should be applied.
const float CameraFactorIdealPitch = 0.7f;
const float CameraFactorIdealYaw = 0.8f;
const float CameraFactorIdealRoll = 0.9f;
var global_yaw = _player.Rotation.Y + yaw;
var cameraRotation = _camera.GlobalRotation;
cameraRotation.X = LerpAngle(cameraRotation.X, pitch, CameraFactorIdealPitch);
cameraRotation.Y = LerpAngle(cameraRotation.Y, global_yaw, CameraFactorIdealYaw);
cameraRotation.Z = LerpAngle(cameraRotation.Z, 0, CameraFactorIdealRoll);
_camera.GlobalRotation = cameraRotation;
}
void HandleWalkingAnimation(double delta)
{
var input = Input.GetVector("move_strafe_left", "move_strafe_right", "move_forward", "move_back");
var isOnFloor = _movementController.TimeSinceOnFloor < 0.25f;
var isMoving = _movementController.RealMoveSpeed > 0.01f;
var isMovingForward = input.Y <= 0;
var walkState = (isOnFloor && isMoving) ? "move" : "idle";
var walkDirection = isMovingForward ? "forward" : "backward";
var walkSpeed = _movementController.RealMoveSpeed / _movementController.MaxSpeed;
var targetBodyYaw = -(isMovingForward ? Vector2.Up : Vector2.Down).AngleTo(input);
_animTree.Set("parameters/walk_state/transition_request", walkState);
_animTree.Set("parameters/walk_direction/transition_request", walkDirection);
var prevWalkSpeed = (float)_animTree.Get("parameters/walk_speed/blend_amount");
_animTree.Set("parameters/walk_speed/blend_amount", Lerp(prevWalkSpeed, walkSpeed, 10 * (float)delta));
const float YAW_FACTOR_LOWER_BODY = 0.25f;
const float YAW_FACTOR_UPPER_BODY = 0.25f;
const float YAW_FACTOR_NECK = 0.50f;
_bodyYaw += (targetBodyYaw - _bodyYaw) * (float)delta * 6;
_bones["Root"].GlobalRotate(Vector3.Up, _bodyYaw);
_bones["LowerBody"].GlobalRotate(Vector3.Up, -_bodyYaw * YAW_FACTOR_LOWER_BODY);
_bones["UpperBody"].GlobalRotate(Vector3.Up, -_bodyYaw * YAW_FACTOR_UPPER_BODY);
_bones["Neck"].GlobalRotate(Vector3.Up, -_bodyYaw * YAW_FACTOR_NECK);
}
}

@ -0,0 +1,39 @@
public partial class CameraController : Node
{
[Export] public Camera3D Camera { get; set; }
[Export] public Vector2 MouseSensitivity { get; set; } = new(0.2f, 0.2f); // Degrees per pixel.
[Export] public float PitchMinimum { get; set; } = -85;
[Export] public float PitchMaximum { get; set; } = 85;
public float CurrentPitch { get; set; }
public float CurrentYaw { get; set; }
public static bool IsMouseCaptured
=> Input.MouseMode == Input.MouseModeEnum.Captured;
public override void _UnhandledInput(InputEvent @event)
{
if (@event.IsActionPressed("ui_cancel") && IsMouseCaptured) {
// When escape is pressed, release the mouse.
Input.MouseMode = Input.MouseModeEnum.Visible;
GetViewport().SetInputAsHandled();
} else switch (@event) {
case InputEventMouseButton { ButtonIndex: MouseButton.Left, Pressed: true } when !IsMouseCaptured:
// When left mouse button is pressed, capture the mouse.
Input.MouseMode = Input.MouseModeEnum.Captured;
GetViewport().SetInputAsHandled();
break;
case InputEventMouseMotion motion when IsMouseCaptured:
ApplyRotation(-motion.Relative * MouseSensitivity);
break;
}
}
void ApplyRotation(Vector2 delta)
{
delta *= Tau / 360; // degrees to radians
CurrentYaw += delta.X;
CurrentPitch += delta.Y;
CurrentPitch = Clamp(CurrentPitch, DegToRad(PitchMinimum), DegToRad(PitchMaximum));
}
}

@ -0,0 +1,77 @@
public partial class MovementController : Node
{
[ExportGroup("Movement")]
[Export] public float Acceleration { get; set; } = 4.0f;
[Export] public float MaxSpeed { get; set; } = 2.1f;
[Export] public float FrictionFloor { get; set; } = 12.0f;
[Export] public float FrictionAir { get; set; } = 2.0f;
[Export] public float Gravity { get; set; } = 12.0f;
[ExportGroup("Jumping")]
[Export] public float JumpVelocity { get; set; } = 4.0f;
[Export] public float JumpEarlyTime { get; set; } = 0.0f; // Time (in seconds) after pressing the jump button a jump may occur late.
[Export] public float JumpCoyoteTime { get; set; } = 0.0f; // Time (in seconds) after leaving a jumpable surface when a jump may still occur.
public float RealMoveSpeed { get; private set; }
public bool IsSprinting { get; private set; }
public float TimeSinceJumpPressed { get; private set; } = float.PositiveInfinity;
public float TimeSinceOnFloor { get; private set; } = float.PositiveInfinity;
CharacterBody3D _player;
CameraController _cameraController;
public override void _Ready()
{
_player = GetParent<CharacterBody3D>();
_cameraController = _player.GetNode<CameraController>("CameraController");
}
public override void _UnhandledInput(InputEvent @event)
{
// TODO: Sprinting.
// TODO: Jumping.
}
public override void _PhysicsProcess(double delta)
{
// Get the (normalized) movement vector from the current input.
var input = Input.GetVector("move_strafe_left", "move_strafe_right", "move_forward", "move_back");
var velocity = _player.Velocity;
var horVelocity = velocity with { Y = 0 };
// TODO: Gravity.
// velocity.Y -= Gravity * (float)delta;
var basis = _player.Basis.Rotated(Vector3.Up, _cameraController.CurrentYaw);
var target = basis * new Vector3(input.X, 0, input.Y) * MaxSpeed;
var isMoving = target.Dot(horVelocity) > 0.0f;
var isOnFloor = true; // _player.IsOnFloor();
var accel = isMoving ? Acceleration
: isOnFloor ? FrictionFloor
: FrictionAir;
if (IsSprinting) {
target *= 5;
accel *= 5;
}
horVelocity = horVelocity.Lerp(target, accel * (float)delta);
velocity.X = horVelocity.X;
velocity.Z = horVelocity.Z;
if (isOnFloor) TimeSinceOnFloor = 0.0f;
else TimeSinceOnFloor += (float)delta;
if ((TimeSinceJumpPressed <= JumpEarlyTime) && (TimeSinceOnFloor <= JumpCoyoteTime)) {
TimeSinceJumpPressed = TimeSinceOnFloor = float.PositiveInfinity;
velocity.Y = JumpVelocity;
}
_player.Velocity = velocity;
_player.MoveAndSlide();
RealMoveSpeed = (_player.Velocity with { Y = 0 }).Length();
}
}

@ -0,0 +1,119 @@
public partial class PickupController : Node3D
{
public Item CurrentItem { get; private set; }
public bool IsCurrentItemHeld { get; private set; }
MeshInstance3D _placementPreview;
[Export] public Camera3D Camera { get; set; }
[Export] public float PickupDistance { get; set; } = 2.0f;
Node3D _world;
public override void _Ready()
{
// TODO: Find a better way to find the world.
_world = (Node3D)FindParent("Warehouse");
}
public override void _UnhandledInput(InputEvent @event)
{
EnsureCurrentItemValid();
if (CurrentItem == null) return;
if (@event.IsActionPressed("interact_pickup")) {
if (!IsCurrentItemHeld) {
IsCurrentItemHeld = true;
// Parent item to the `PickupController`.
var prevRot = CurrentItem.GlobalRotation;
CurrentItem.GetParent().RemoveChild(CurrentItem);
AddChild(CurrentItem);
CurrentItem.Mesh.Layers &= (uint)~RenderLayer.Outline;
CurrentItem.Position = Vector3.Zero;
CurrentItem.GlobalRotation = prevRot;
CurrentItem.CollisionLayer &= (uint)~PhysicsLayer.Static;
// CurrentItem.Freeze = true;
GetViewport().SetInputAsHandled();
}
} else if (@event.IsActionPressed("interact_place")) {
if (IsCurrentItemHeld) {
IsCurrentItemHeld = false;
// Parent item back to the world.
var prevTransform = CurrentItem.GlobalTransform;
CurrentItem.CollisionLayer |= (uint)PhysicsLayer.Static;
// CurrentItem.Freeze = false;
RemoveChild(CurrentItem);
_world.AddChild(CurrentItem);
CurrentItem.GlobalTransform = prevTransform;
GetViewport().SetInputAsHandled();
}
}
}
public override void _PhysicsProcess(double delta)
{
EnsureCurrentItemValid();
if (IsCurrentItemHeld) {
if ((RayToMouseCursor() is RayResult ray) && (ray.Collider is Grid)) {
// Snao rotation to nearest axis.
// FIXME: This needs to snap to the
// var globalRot = CurrentItem.GlobalRotation;
// globalRot.X = Snapped(globalRot.X, Tau / 4);
// globalRot.Y = Snapped(globalRot.Y, Tau / 4);
// globalRot.Z = Snapped(globalRot.Z, Tau / 4);
// CurrentItem.GlobalRotation = globalRot;
// Snap the position to the grid.
var halfSize = (Vector3)CurrentItem.Size * Grid.StepSize / 2;
var pos = ray.Position + halfSize * (ray.Normal * CurrentItem.GlobalTransform.Basis);
pos = pos.Snapped(Grid.StepSize * Vector3.One); // FIXME: This does global snapping only
CurrentItem.GlobalPosition = pos;
}
} else {
var interactable = RayToMouseCursor()?.Collider;
// Remove the outline from the previously looked-at item.
if (CurrentItem != null) CurrentItem.Mesh.Layers &= (uint)~RenderLayer.Outline;
// If the ray hits anything and the object hit is an item, set it as current.
CurrentItem = interactable as Item;
// Add the outline to the currently looked-at item.
if (CurrentItem != null) CurrentItem.Mesh.Layers |= (uint)RenderLayer.Outline;
}
}
void EnsureCurrentItemValid()
{
if (CurrentItem == null) return;
if (!IsInstanceValid(CurrentItem)) {
CurrentItem = null;
IsCurrentItemHeld = false;
_placementPreview.QueueFree();
}
}
RayResult RayToMouseCursor()
{
var mouse = GetViewport().GetMousePosition();
var from = Camera.ProjectRayOrigin(mouse);
var to = from + Camera.ProjectRayNormal(mouse) * PickupDistance;
var query = PhysicsRayQueryParameters3D.Create(from, to);
query.CollisionMask = (uint)PhysicsLayer.Interactable;
query.CollideWithAreas = true;
// Exclude the `CurrentItem` from collision checking if it's being held.
query.Exclude = IsCurrentItemHeld ? [ CurrentItem.GetRid() ] : [];
var result = GetWorld3D().DirectSpaceState.IntersectRay(query);
return (result.Count > 0) ? new(result) : null;
}
class RayResult(Dictionary dict)
{
public CollisionObject3D Collider { get; } = dict["collider"].As<CollisionObject3D>();
public Vector3 Position { get; } = (Vector3)dict["position"];
public Vector3 Normal { get; } = (Vector3)dict["normal"];
}
}

@ -0,0 +1,915 @@
[gd_scene load_steps=21 format=3 uid="uid://dmd7w2r8s0x6y"]
[ext_resource type="PackedScene" uid="uid://bfh3eqgywr0ul" path="res://assets/models/character.blend" id="1_3qh37"]
[ext_resource type="Script" path="res://player/MovementController.cs" id="2_1pst4"]
[ext_resource type="Script" path="res://player/PickupController.cs" id="2_ns2pe"]
[ext_resource type="Script" path="res://player/CameraController.cs" id="2_r3gna"]
[ext_resource type="Script" path="res://player/AnimationController.cs" id="3_5rlwc"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_h1mfd"]
radius = 0.3
height = 1.5
[sub_resource type="Animation" id="Animation_wjxw2"]
resource_name = "idle_loop"
length = 2.5
loop_mode = 1
tracks/0/type = "position_3d"
tracks/0/imported = true
tracks/0/enabled = true
tracks/0/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = PackedFloat32Array(0, 1, 0.0827106, -0.787835, -0.0142412)
tracks/1/type = "rotation_3d"
tracks/1/imported = true
tracks/1/enabled = true
tracks/1/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = PackedFloat32Array(0, 1, -0.707001, 4.51326e-18, -4.26954e-18, 0.707212, 0.166667, 1, -0.707898, 4.51333e-18, -4.26961e-18, 0.706315, 0.233333, 1, -0.708755, 4.5134e-18, -4.26967e-18, 0.705454, 0.3, 1, -0.709809, 4.51347e-18, -4.26974e-18, 0.704395, 0.366667, 1, -0.711039, 4.51354e-18, -4.26981e-18, 0.703153, 0.466667, 1, -0.713127, 4.51363e-18, -4.26989e-18, 0.701034, 0.5, 1, -0.713869, 4.51366e-18, -4.26991e-18, 0.700279, 0.533333, 1, -0.71463, 4.51367e-18, -4.26993e-18, 0.699502, 0.566667, 1, -0.715401, 4.51369e-18, -4.26994e-18, 0.698714, 0.6, 1, -0.716178, 4.51369e-18, -4.26995e-18, 0.697918, 0.633333, 1, -0.716958, 4.51369e-18, -4.26995e-18, 0.697116, 0.733333, 1, -0.719267, 4.51367e-18, -4.26992e-18, 0.694734, 0.8, 1, -0.720739, 4.51362e-18, -4.26988e-18, 0.693206, 0.866667, 1, -0.722115, 4.51356e-18, -4.26982e-18, 0.691773, 0.933333, 1, -0.723357, 4.51349e-18, -4.26976e-18, 0.690474, 1, 1, -0.724446, 4.51342e-18, -4.26969e-18, 0.689331, 1.06667, 1, -0.725318, 4.51335e-18, -4.26963e-18, 0.688414, 1.16667, 1, -0.726204, 4.51327e-18, -4.26955e-18, 0.687479, 1.43333, 1, -0.725318, 0, 0, 0.688414, 1.5, 1, -0.724446, 0, 0, 0.689331, 1.6, 1, -0.722753, 0, 0, 0.691106, 1.66667, 1, -0.721445, 0, 0, 0.692472, 1.73333, 1, -0.720012, 0, 0, 0.693961, 1.76667, 1, -0.719267, 0, 0, 0.694734, 1.8, 1, -0.718508, 0, 0, 0.695519, 1.83333, 1, -0.717737, 0, 0, 0.696315, 1.86667, 1, -0.716958, 0, 0, 0.697116, 1.9, 1, -0.716178, 0, 0, 0.697918, 1.93333, 1, -0.715401, 0, 0, 0.698714, 1.96667, 1, -0.71463, 0, 0, 0.699502, 2.03333, 1, -0.713127, 0, 0, 0.701034, 2.1, 1, -0.711709, 0, 0, 0.702475, 2.16667, 1, -0.710399, 0, 0, 0.703799, 2.23333, 1, -0.709259, 0, 0, 0.704948, 2.3, 1, -0.7083, 0, 0, 0.705911, 2.36667, 1, -0.707572, 0, 0, 0.706641, 2.5, 1, -0.706937, 4.51325e-18, -4.26953e-18, 0.707277)
tracks/2/type = "position_3d"
tracks/2/imported = true
tracks/2/enabled = true
tracks/2/path = NodePath("Skeleton/Skeleton3D:Root")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = PackedFloat32Array(0, 1, 0, 0.199995, 0, 1.2, 1, 0, 0.198469, 0, 2.46667, 1, 0, 0.199996, 0, 2.5, 1, 0, 0.2, 0)
tracks/3/type = "rotation_3d"
tracks/3/imported = true
tracks/3/enabled = true
tracks/3/path = NodePath("Skeleton/Skeleton3D:LowerBody")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = PackedFloat32Array(0, 1, 2.96978e-08, 0.733762, 0.679407, 3.20738e-08, 0.566667, 1, 2.96646e-08, 0.733058, 0.680166, 3.21045e-08, 0.7, 1, 2.95948e-08, 0.731579, 0.681756, 3.21688e-08, 0.966667, 1, 2.94166e-08, 0.727801, 0.685788, 3.23319e-08, 1.03333, 1, 2.93778e-08, 0.726979, 0.68666, 3.23671e-08, 1.13333, 1, 2.93338e-08, 0.726044, 0.687649, 3.2407e-08, 1.46667, 1, 2.93778e-08, 0.726979, 0.68666, 3.23671e-08, 1.53333, 1, 2.94166e-08, 0.727801, 0.685788, 3.23319e-08, 1.73333, 1, 2.95515e-08, 0.730662, 0.68274, 3.22086e-08, 1.8, 1, 2.95948e-08, 0.731579, 0.681756, 3.21688e-08, 1.86667, 1, 2.96333e-08, 0.732396, 0.680879, 3.21333e-08, 1.96667, 1, 2.96771e-08, 0.733322, 0.679881, 3.2093e-08, 2.5, 1, 2.96978e-08, 0.733762, 0.679407, 3.20738e-08)
tracks/4/type = "rotation_3d"
tracks/4/imported = true
tracks/4/enabled = true
tracks/4/path = NodePath("Skeleton/Skeleton3D:UpperBody")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = PackedFloat32Array(0, 1, -0.0619498, 4.36274e-08, 2.70791e-09, 0.998079, 0.533333, 1, -0.0607408, 4.36307e-08, 2.65506e-09, 0.998154, 0.6, 1, -0.0591635, 4.36348e-08, 2.58612e-09, 0.998248, 0.633333, 1, -0.0581974, 4.36373e-08, 2.54389e-09, 0.998305, 0.666667, 1, -0.0571308, 4.364e-08, 2.49727e-09, 0.998367, 0.7, 1, -0.055957, 4.36429e-08, 2.44596e-09, 0.998433, 0.733333, 1, -0.0547229, 4.36459e-08, 2.39201e-09, 0.998502, 0.766667, 1, -0.0534418, 4.36489e-08, 2.33601e-09, 0.998571, 0.8, 1, -0.0521271, 4.3652e-08, 2.27855e-09, 0.99864, 0.833333, 1, -0.0507922, 4.3655e-08, 2.2202e-09, 0.998709, 0.866667, 1, -0.0494573, 4.36579e-08, 2.16185e-09, 0.998776, 0.933333, 1, -0.0468608, 4.36634e-08, 2.04835e-09, 0.998901, 0.966667, 1, -0.0456261, 4.36659e-08, 1.99438e-09, 0.998959, 1, 1, -0.0444516, 4.36682e-08, 1.94304e-09, 0.999012, 1.06667, 1, -0.0424174, 4.3672e-08, 1.85412e-09, 0.9991, 1.13333, 1, -0.0408386, 4.36749e-08, 1.78511e-09, 0.999166, 1.26667, 1, -0.039693, 4.36769e-08, 1.73504e-09, 0.999212, 1.36667, 1, -0.0408386, 4.36749e-08, 1.78511e-09, 0.999166, 1.43333, 1, -0.0424174, 4.3672e-08, 1.85412e-09, 0.9991, 1.5, 1, -0.0444516, 4.36682e-08, 1.94304e-09, 0.999012, 1.53333, 1, -0.0456261, 4.36659e-08, 1.99438e-09, 0.998959, 1.6, 1, -0.0481423, 4.36607e-08, 2.10437e-09, 0.998841, 1.63333, 1, -0.0494573, 4.36579e-08, 2.16185e-09, 0.998776, 1.66667, 1, -0.0507922, 4.3655e-08, 2.2202e-09, 0.998709, 1.7, 1, -0.0521271, 4.3652e-08, 2.27855e-09, 0.99864, 1.73333, 1, -0.0534418, 4.36489e-08, 2.33601e-09, 0.998571, 1.76667, 1, -0.0547229, 4.36459e-08, 2.39201e-09, 0.998502, 1.8, 1, -0.055957, 4.36429e-08, 2.44596e-09, 0.998433, 1.83333, 1, -0.0571308, 4.364e-08, 2.49727e-09, 0.998367, 1.86667, 1, -0.0581974, 4.36373e-08, 2.54389e-09, 0.998305, 1.93333, 1, -0.0600158, 4.36326e-08, 2.62337e-09, 0.998197, 2, 1, -0.0613253, 4.36291e-08, 2.68061e-09, 0.998118, 2.5, 1, -0.0619498, 4.36274e-08, 2.70791e-09, 0.998079)
tracks/5/type = "rotation_3d"
tracks/5/imported = true
tracks/5/enabled = true
tracks/5/path = NodePath("Skeleton/Skeleton3D:Head")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = PackedFloat32Array(0, 1, 3.09086e-08, 0.707107, 0.707107, 3.09086e-08, 0.7, 1, 3.09413e-08, 0.707855, 0.706358, 3.08759e-08, 0.866667, 1, 3.09767e-08, 0.708664, 0.705546, 3.08404e-08, 1.03333, 1, 3.10097e-08, 0.70942, 0.704786, 3.08072e-08, 1.63333, 1, 3.09767e-08, 0.708664, 0.705546, 3.08404e-08, 1.8, 1, 3.09413e-08, 0.707855, 0.706358, 3.08759e-08, 2.03333, 1, 3.091e-08, 0.707139, 0.707075, 3.09072e-08, 2.5, 1, 3.09086e-08, 0.707107, 0.707107, 3.09086e-08)
tracks/6/type = "rotation_3d"
tracks/6/imported = true
tracks/6/enabled = true
tracks/6/path = NodePath("Skeleton/Skeleton3D:UpperArm_L")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = PackedFloat32Array(0, 1, 0.00411019, 0.0231814, -0.984378, 0.174488, 0.2, 1, 0.00410711, 0.0231819, -0.984577, 0.173358, 0.3, 1, 0.00410353, 0.0231825, -0.984808, 0.172044, 0.366667, 1, 0.0041006, 0.023183, -0.984995, 0.17097, 0.433333, 1, 0.00409732, 0.0231834, -0.985202, 0.169774, 0.5, 1, 0.00409381, 0.0231839, -0.985422, 0.168491, 0.566667, 1, 0.00409011, 0.0231843, -0.985651, 0.167144, 0.633333, 1, 0.00408633, 0.0231847, -0.985883, 0.165773, 0.7, 1, 0.00408256, 0.023185, -0.986112, 0.164404, 0.766667, 1, 0.00407888, 0.0231853, -0.986333, 0.163071, 0.833333, 1, 0.00407537, 0.0231856, -0.986543, 0.1618, 0.933333, 1, 0.00407065, 0.0231859, -0.986821, 0.160097, 1.03333, 1, 0.0040668, 0.023186, -0.987044, 0.158712, 1.16667, 1, 0.00406358, 0.0231861, -0.98723, 0.157552, 1.46667, 1, 0.0040668, 0.023186, -0.987044, 0.158712, 1.56667, 1, 0.00407065, 0.0231859, -0.986821, 0.160097, 1.63333, 1, 0.00407371, 0.0231857, -0.98664, 0.161203, 1.8, 1, 0.00408256, 0.023185, -0.986112, 0.164404, 1.9, 1, 0.00408823, 0.0231845, -0.985767, 0.16646, 1.96667, 1, 0.00409197, 0.0231841, -0.985536, 0.167822, 2.03333, 1, 0.00409559, 0.0231836, -0.985311, 0.169142, 2.1, 1, 0.00409899, 0.0231832, -0.985096, 0.170384, 2.16667, 1, 0.00410212, 0.0231827, -0.984898, 0.171529, 2.23333, 1, 0.00410484, 0.0231823, -0.984724, 0.172523, 2.33333, 1, 0.00410807, 0.0231818, -0.984516, 0.173709, 2.5, 1, 0.00411034, 0.0231814, -0.984368, 0.174544)
tracks/7/type = "rotation_3d"
tracks/7/imported = true
tracks/7/enabled = true
tracks/7/path = NodePath("Skeleton/Skeleton3D:LowerArm_L")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = PackedFloat32Array(0, 1, 3.36945e-07, 1.26947e-06, -0.0622794, 0.998059, 0.2, 1, 7.13704e-06, 2.41641e-05, -0.0634238, 0.997987, 0.3, 1, 1.50471e-05, 5.07958e-05, -0.064755, 0.997901, 0.366667, 1, 2.15102e-05, 7.25556e-05, -0.0658426, 0.99783, 0.433333, 1, 2.87091e-05, 9.6793e-05, -0.0670539, 0.997749, 0.5, 1, 3.64231e-05, 0.000122765, -0.0683517, 0.997661, 0.566667, 1, 4.45235e-05, 0.000150037, -0.0697144, 0.997567, 0.633333, 1, 5.27709e-05, 0.000177804, -0.0711018, 0.997469, 0.733333, 1, 6.50404e-05, 0.000219114, -0.0731656, 0.99732, 0.8, 1, 7.28831e-05, 0.000245518, -0.0744846, 0.997222, 0.866667, 1, 8.02285e-05, 0.000270249, -0.0757199, 0.997129, 0.933333, 1, 8.6875e-05, 0.000292626, -0.0768375, 0.997044, 1.03333, 1, 9.51891e-05, 0.000320618, -0.0782354, 0.996935, 1.16667, 1, 0.000102154, 0.000344066, -0.0794064, 0.996842, 1.46667, 1, 9.5189e-05, 0.000320618, -0.0782354, 0.996935, 1.56667, 1, 8.68746e-05, 0.000292626, -0.0768375, 0.997044, 1.66667, 1, 7.66481e-05, 0.000258194, -0.0751177, 0.997175, 1.73333, 1, 6.90076e-05, 0.000232471, -0.0738328, 0.997271, 1.83333, 1, 5.69041e-05, 0.000191719, -0.071797, 0.997419, 1.9, 1, 4.86381e-05, 0.00016389, -0.0704066, 0.997518, 1.96667, 1, 4.04457e-05, 0.000136308, -0.0690284, 0.997615, 2.03333, 1, 3.25109e-05, 0.000109593, -0.0676935, 0.997706, 2.1, 1, 2.5036e-05, 8.44265e-05, -0.0664358, 0.997791, 2.16667, 1, 1.81499e-05, 6.12421e-05, -0.0652771, 0.997867, 2.23333, 1, 1.21651e-05, 4.10927e-05, -0.06427, 0.997933, 2.33333, 1, 5.02771e-06, 1.70624e-05, -0.0630689, 0.998009, 2.5, 1, -2.97549e-10, 1.34038e-07, -0.0622227, 0.998062)
tracks/8/type = "rotation_3d"
tracks/8/imported = true
tracks/8/enabled = true
tracks/8/path = NodePath("Skeleton/Skeleton3D:Wrist_L")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = PackedFloat32Array(0, 1, -2.39681e-07, -9.84988e-07, -0.0181898, 0.999835, 0.2, 1, -5.17686e-06, -2.43523e-05, -0.0170433, 0.999855, 0.3, 1, -1.09199e-05, -5.1534e-05, -0.0157096, 0.999877, 0.366667, 1, -1.56124e-05, -7.37431e-05, -0.0146198, 0.999893, 0.433333, 1, -2.08391e-05, -9.84809e-05, -0.0134059, 0.99991, 0.5, 1, -2.64399e-05, -0.000124989, -0.0121052, 0.999927, 0.566667, 1, -3.2321e-05, -0.000152824, -0.0107393, 0.999942, 0.633333, 1, -3.83091e-05, -0.000181165, -0.00934855, 0.999956, 0.7, 1, -4.42839e-05, -0.000209443, -0.00796087, 0.999968, 0.766667, 1, -5.00977e-05, -0.000236961, -0.00661043, 0.999978, 0.833333, 1, -5.56446e-05, -0.000263214, -0.005322, 0.999986, 0.9, 1, -6.07236e-05, -0.000287255, -0.00414218, 0.999991, 0.966667, 1, -6.52694e-05, -0.000308766, -0.00308643, 0.999995, 1.06667, 1, -7.0705e-05, -0.000334491, -0.00182389, 0.999998, 1.23333, 1, -7.50224e-05, -0.000354926, -0.000820912, 1, 1.43333, 1, -7.0705e-05, -0.000334491, -0.00182389, 0.999998, 1.53333, 1, -6.52695e-05, -0.000308766, -0.00308642, 0.999995, 1.6, 1, -6.07239e-05, -0.000287255, -0.00414218, 0.999991, 1.7, 1, -5.29112e-05, -0.000250277, -0.00595691, 0.999982, 1.76667, 1, -4.72175e-05, -0.000223328, -0.00727944, 0.999973, 1.83333, 1, -4.13098e-05, -0.000195367, -0.00865161, 0.999963, 1.9, 1, -3.53084e-05, -0.000166963, -0.0100455, 0.99995, 1.96667, 1, -2.93604e-05, -0.000138812, -0.0114269, 0.999935, 2.03333, 1, -2.35994e-05, -0.000111545, -0.0127649, 0.999919, 2.1, 1, -1.81723e-05, -8.58592e-05, -0.0140253, 0.999902, 2.16667, 1, -1.31727e-05, -6.2196e-05, -0.0151864, 0.999885, 2.23333, 1, -8.82748e-06, -4.16305e-05, -0.0161955, 0.999869, 2.33333, 1, -3.64539e-06, -1.7104e-05, -0.0173989, 0.999849, 2.5, 1, 5.1721e-09, 1.73886e-07, -0.0182467, 0.999834)
tracks/9/type = "rotation_3d"
tracks/9/imported = true
tracks/9/enabled = true
tracks/9/path = NodePath("Skeleton/Skeleton3D:UpperArm_R")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = PackedFloat32Array(0, 1, 0.00411019, -0.0231814, 0.984378, 0.174488, 0.2, 1, 0.00410711, -0.0231819, 0.984577, 0.173358, 0.3, 1, 0.00410353, -0.0231825, 0.984808, 0.172044, 0.366667, 1, 0.0041006, -0.023183, 0.984995, 0.17097, 0.433333, 1, 0.00409732, -0.0231834, 0.985202, 0.169774, 0.5, 1, 0.00409381, -0.0231839, 0.985422, 0.168491, 0.566667, 1, 0.00409011, -0.0231843, 0.985651, 0.167144, 0.633333, 1, 0.00408633, -0.0231847, 0.985883, 0.165773, 0.7, 1, 0.00408256, -0.023185, 0.986112, 0.164404, 0.766667, 1, 0.00407888, -0.0231853, 0.986333, 0.163071, 0.833333, 1, 0.00407537, -0.0231856, 0.986543, 0.1618, 0.933333, 1, 0.00407065, -0.0231859, 0.986821, 0.160097, 1.03333, 1, 0.0040668, -0.023186, 0.987044, 0.158712, 1.16667, 1, 0.00406357, -0.0231861, 0.98723, 0.157552, 1.46667, 1, 0.0040668, -0.023186, 0.987044, 0.158712, 1.56667, 1, 0.00407065, -0.0231859, 0.986821, 0.160097, 1.63333, 1, 0.00407371, -0.0231857, 0.98664, 0.161203, 1.8, 1, 0.00408256, -0.023185, 0.986112, 0.164404, 1.9, 1, 0.00408823, -0.0231845, 0.985767, 0.16646, 1.96667, 1, 0.00409197, -0.0231841, 0.985536, 0.167822, 2.03333, 1, 0.00409559, -0.0231836, 0.985311, 0.169142, 2.1, 1, 0.00409899, -0.0231832, 0.985096, 0.170384, 2.16667, 1, 0.00410212, -0.0231827, 0.984898, 0.171529, 2.23333, 1, 0.00410484, -0.0231823, 0.984724, 0.172523, 2.33333, 1, 0.00410807, -0.0231818, 0.984516, 0.173709, 2.5, 1, 0.00411034, -0.0231814, 0.984368, 0.174544)
tracks/10/type = "rotation_3d"
tracks/10/imported = true
tracks/10/enabled = true
tracks/10/path = NodePath("Skeleton/Skeleton3D:LowerArm_R")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = PackedFloat32Array(0, 1, 3.36936e-07, -1.26943e-06, 0.0622794, 0.998059, 0.2, 1, 7.13704e-06, -2.41641e-05, 0.0634239, 0.997987, 0.3, 1, 1.50471e-05, -5.07958e-05, 0.064755, 0.997901, 0.366667, 1, 2.15101e-05, -7.25556e-05, 0.0658426, 0.99783, 0.433333, 1, 2.87091e-05, -9.6793e-05, 0.0670539, 0.997749, 0.5, 1, 3.64231e-05, -0.000122765, 0.0683517, 0.997661, 0.566667, 1, 4.45235e-05, -0.000150037, 0.0697144, 0.997567, 0.633333, 1, 5.27709e-05, -0.000177804, 0.0711018, 0.997469, 0.733333, 1, 6.50405e-05, -0.000219115, 0.0731656, 0.99732, 0.8, 1, 7.28831e-05, -0.000245518, 0.0744846, 0.997222, 0.866667, 1, 8.02287e-05, -0.000270249, 0.0757199, 0.997129, 0.933333, 1, 8.68751e-05, -0.000292627, 0.0768375, 0.997044, 1.03333, 1, 9.51883e-05, -0.000320618, 0.0782354, 0.996935, 1.16667, 1, 0.000102154, -0.000344067, 0.0794064, 0.996842, 1.46667, 1, 9.51886e-05, -0.000320618, 0.0782354, 0.996935, 1.56667, 1, 8.68748e-05, -0.000292627, 0.0768375, 0.997044, 1.66667, 1, 7.66481e-05, -0.000258194, 0.0751177, 0.997175, 1.73333, 1, 6.90077e-05, -0.000232471, 0.0738328, 0.997271, 1.83333, 1, 5.69041e-05, -0.000191719, 0.071797, 0.997419, 1.9, 1, 4.8638e-05, -0.00016389, 0.0704066, 0.997518, 1.96667, 1, 4.04457e-05, -0.000136308, 0.0690285, 0.997615, 2.03333, 1, 3.25109e-05, -0.000109593, 0.0676935, 0.997706, 2.1, 1, 2.5036e-05, -8.44265e-05, 0.0664359, 0.997791, 2.16667, 1, 1.81499e-05, -6.1242e-05, 0.0652771, 0.997867, 2.23333, 1, 1.21651e-05, -4.10927e-05, 0.06427, 0.997933, 2.33333, 1, 5.02771e-06, -1.70624e-05, 0.0630689, 0.998009, 2.5, 1, -3.05931e-10, -1.34004e-07, 0.0622227, 0.998062)
tracks/11/type = "rotation_3d"
tracks/11/imported = true
tracks/11/enabled = true
tracks/11/path = NodePath("Skeleton/Skeleton3D:Wrist_R")
tracks/11/interp = 1
tracks/11/loop_wrap = true
tracks/11/keys = PackedFloat32Array(0, 1, -2.39681e-07, 9.84989e-07, 0.0181898, 0.999835, 0.2, 1, -5.17686e-06, 2.43524e-05, 0.0170433, 0.999855, 0.3, 1, -1.09199e-05, 5.1534e-05, 0.0157096, 0.999877, 0.366667, 1, -1.56124e-05, 7.37431e-05, 0.0146198, 0.999893, 0.433333, 1, -2.08391e-05, 9.8481e-05, 0.013406, 0.99991, 0.5, 1, -2.64399e-05, 0.000124989, 0.0121052, 0.999927, 0.566667, 1, -3.2321e-05, 0.000152824, 0.0107393, 0.999942, 0.633333, 1, -3.83091e-05, 0.000181165, 0.00934854, 0.999956, 0.7, 1, -4.42837e-05, 0.000209443, 0.00796088, 0.999968, 0.766667, 1, -5.00976e-05, 0.000236961, 0.00661042, 0.999978, 0.833333, 1, -5.56446e-05, 0.000263214, 0.005322, 0.999986, 0.9, 1, -6.07236e-05, 0.000287255, 0.00414217, 0.999991, 0.966667, 1, -6.52692e-05, 0.000308767, 0.00308643, 0.999995, 1.06667, 1, -7.07046e-05, 0.000334491, 0.00182389, 0.999998, 1.23333, 1, -7.50224e-05, 0.000354926, 0.000820912, 1, 1.43333, 1, -7.07046e-05, 0.000334491, 0.00182389, 0.999998, 1.53333, 1, -6.52695e-05, 0.000308766, 0.00308642, 0.999995, 1.6, 1, -6.07237e-05, 0.000287255, 0.00414217, 0.999991, 1.7, 1, -5.29111e-05, 0.000250277, 0.00595691, 0.999982, 1.76667, 1, -4.72174e-05, 0.000223328, 0.00727944, 0.999973, 1.83333, 1, -4.13099e-05, 0.000195367, 0.00865161, 0.999963, 1.9, 1, -3.53084e-05, 0.000166963, 0.0100455, 0.99995, 1.96667, 1, -2.93604e-05, 0.000138812, 0.0114269, 0.999935, 2.03333, 1, -2.35994e-05, 0.000111545, 0.0127649, 0.999919, 2.1, 1, -1.81723e-05, 8.58591e-05, 0.0140253, 0.999902, 2.16667, 1, -1.31727e-05, 6.2196e-05, 0.0151864, 0.999885, 2.23333, 1, -8.82748e-06, 4.16305e-05, 0.0161955, 0.999869, 2.33333, 1, -3.64539e-06, 1.7104e-05, 0.0173989, 0.999849, 2.5, 1, 5.1721e-09, -1.73886e-07, 0.0182467, 0.999834)
tracks/12/type = "rotation_3d"
tracks/12/imported = true
tracks/12/enabled = true
tracks/12/path = NodePath("Skeleton/Skeleton3D:UpperLeg_L")
tracks/12/interp = 1
tracks/12/loop_wrap = true
tracks/12/keys = PackedFloat32Array(0, 1, 0.00986871, -0.701327, 0.712707, 0.00953546, 0.1, 1, 0.0099069, -0.702179, 0.711867, 0.00959726, 0.133333, 1, 0.00993582, -0.702822, 0.711231, 0.00964401, 0.166667, 1, 0.00996843, -0.703546, 0.710514, 0.00969664, 0.2, 1, 0.0100037, -0.704327, 0.709739, 0.00975348, 0.233333, 1, 0.01004, -0.705126, 0.708943, 0.00981179, 0.266667, 1, 0.0100768, -0.705937, 0.708134, 0.00987095, 0.3, 1, 0.0101139, -0.706751, 0.707321, 0.00993042, 0.366667, 1, 0.0101876, -0.708361, 0.705705, 0.0100483, 0.4, 1, 0.0102237, -0.709148, 0.704913, 0.0101061, 0.433333, 1, 0.0102593, -0.70992, 0.704135, 0.0101627, 0.5, 1, 0.0103283, -0.711412, 0.702625, 0.0102725, 0.533333, 1, 0.0103613, -0.71212, 0.701905, 0.0103248, 0.633333, 1, 0.0104542, -0.714109, 0.699878, 0.0104717, 0.7, 1, 0.0105121, -0.715344, 0.698614, 0.0105631, 0.766667, 1, 0.0105639, -0.716443, 0.697484, 0.0106447, 0.833333, 1, 0.010612, -0.717459, 0.696437, 0.0107202, 0.9, 1, 0.0106531, -0.718324, 0.695543, 0.0107847, 1, 1, 0.0107053, -0.719421, 0.694407, 0.0108664, 1.1, 1, 0.0107411, -0.72017, 0.693628, 0.0109224, 1.5, 1, 0.0107053, -0.719421, 0.694407, 0.0108664, 1.56667, 1, 0.0106713, -0.718706, 0.695148, 0.0108131, 1.63333, 1, 0.0106333, -0.717909, 0.695972, 0.0107538, 1.7, 1, 0.0105889, -0.716973, 0.696939, 0.010684, 1.8, 1, 0.0105121, -0.715344, 0.698614, 0.0105631, 1.86667, 1, 0.0104542, -0.714109, 0.699878, 0.0104717, 1.96667, 1, 0.0103613, -0.71212, 0.701905, 0.0103248, 2, 1, 0.0103283, -0.711412, 0.702625, 0.0102725, 2.03333, 1, 0.0102942, -0.710674, 0.703371, 0.0102182, 2.06667, 1, 0.0102593, -0.70992, 0.704135, 0.0101627, 2.1, 1, 0.0102237, -0.709148, 0.704913, 0.0101061, 2.13333, 1, 0.0101876, -0.708361, 0.705705, 0.0100483, 2.16667, 1, 0.0101509, -0.707562, 0.706508, 0.00998975, 2.2, 1, 0.0101139, -0.706751, 0.707321, 0.00993042, 2.23333, 1, 0.0100768, -0.705937, 0.708134, 0.00987095, 2.26667, 1, 0.01004, -0.705126, 0.708943, 0.00981179, 2.3, 1, 0.0100037, -0.704327, 0.709739, 0.00975348, 2.33333, 1, 0.00996843, -0.703546, 0.710514, 0.00969664, 2.36667, 1, 0.00993582, -0.702822, 0.711231, 0.00964401, 2.43333, 1, 0.00988332, -0.701653, 0.712386, 0.0095591, 2.5, 1, 0.0098597, -0.701126, 0.712906, 0.00952086)
tracks/13/type = "rotation_3d"
tracks/13/imported = true
tracks/13/enabled = true
tracks/13/path = NodePath("Skeleton/Skeleton3D:LowerLeg_L")
tracks/13/interp = 1
tracks/13/loop_wrap = true
tracks/13/keys = PackedFloat32Array(0, 1, 0.0123975, 0.00254899, 0.000756981, 0.99992, 0.0666667, 1, 0.0132552, 0.00254896, 0.00080935, 0.999909, 0.1, 1, 0.0146393, 0.00254891, 0.00089386, 0.999889, 0.133333, 1, 0.0163351, 0.00254885, 0.000997402, 0.999863, 0.166667, 1, 0.0182445, 0.00254876, 0.00111399, 0.99983, 0.2, 1, 0.0203059, 0.00254866, 0.00123986, 0.99979, 0.333333, 1, 0.0288736, 0.00254812, 0.00176299, 0.999578, 0.366667, 1, 0.0309962, 0.00254796, 0.0018926, 0.999515, 0.433333, 1, 0.0351437, 0.00254761, 0.00214584, 0.999377, 0.5, 1, 0.039121, 0.00254723, 0.00238869, 0.999228, 0.533333, 1, 0.0410135, 0.00254703, 0.00250424, 0.999152, 0.566667, 1, 0.0428554, 0.00254684, 0.00261671, 0.999075, 0.633333, 1, 0.0463349, 0.00254644, 0.00282916, 0.998919, 0.666667, 1, 0.0480587, 0.00254623, 0.00293441, 0.998837, 0.7, 1, 0.0496449, 0.00254603, 0.00303127, 0.998759, 0.766667, 1, 0.0525976, 0.00254564, 0.00321156, 0.998607, 0.8, 1, 0.0540204, 0.00254545, 0.00329843, 0.998531, 0.833333, 1, 0.0553301, 0.00254527, 0.0033784, 0.998459, 0.866667, 1, 0.0565422, 0.00254509, 0.00345241, 0.998391, 0.9, 1, 0.0576601, 0.00254493, 0.00352066, 0.998327, 0.966667, 1, 0.0596584, 0.00254463, 0.00364268, 0.998209, 1.03333, 1, 0.0613841, 0.00254436, 0.00374805, 0.998104, 1.1, 1, 0.0626406, 0.00254416, 0.00382477, 0.998026, 1.2, 1, 0.0637351, 0.00254398, 0.0038916, 0.997956, 1.4, 1, 0.0626406, 0.00254416, 0.00382477, 0.998026, 1.46667, 1, 0.0613841, 0.00254436, 0.00374805, 0.998104, 1.56667, 1, 0.0586895, 0.00254478, 0.00358352, 0.998267, 1.6, 1, 0.0576601, 0.00254493, 0.00352067, 0.998327, 1.63333, 1, 0.0565422, 0.00254509, 0.00345241, 0.998391, 1.66667, 1, 0.0553301, 0.00254527, 0.0033784, 0.998459, 1.7, 1, 0.0540204, 0.00254545, 0.00329843, 0.998531, 1.8, 1, 0.0496449, 0.00254603, 0.00303127, 0.998759, 1.83333, 1, 0.0480587, 0.00254623, 0.00293441, 0.998837, 1.86667, 1, 0.0463349, 0.00254644, 0.00282916, 0.998919, 1.93333, 1, 0.0428554, 0.00254684, 0.00261671, 0.999075, 1.96667, 1, 0.0410135, 0.00254703, 0.00250424, 0.999152, 2, 1, 0.039121, 0.00254723, 0.00238869, 0.999228, 2.1, 1, 0.0330891, 0.00254779, 0.00202039, 0.999447, 2.13333, 1, 0.0309962, 0.00254796, 0.0018926, 0.999514, 2.26667, 1, 0.0224206, 0.00254854, 0.00136898, 0.999744, 2.3, 1, 0.0203059, 0.00254866, 0.00123986, 0.99979, 2.33333, 1, 0.0182445, 0.00254876, 0.00111399, 0.99983, 2.36667, 1, 0.0163351, 0.00254885, 0.000997402, 0.999863, 2.4, 1, 0.0146393, 0.00254891, 0.000893859, 0.999889, 2.43333, 1, 0.0132552, 0.00254896, 0.00080935, 0.999909, 2.5, 1, 0.0118679, 0.00254901, 0.000724641, 0.999926)
tracks/14/type = "rotation_3d"
tracks/14/imported = true
tracks/14/enabled = true
tracks/14/path = NodePath("Skeleton/Skeleton3D:Foot_L")
tracks/14/interp = 1
tracks/14/loop_wrap = true
tracks/14/keys = PackedFloat32Array(0, 1, 0.000976905, 0.692519, -0.721145, 0.0191424, 0.166667, 1, 0.00100118, 0.691604, -0.722023, 0.0191411, 0.233333, 1, 0.00102445, 0.690726, -0.722863, 0.0191399, 0.333333, 1, 0.0010691, 0.689037, -0.724472, 0.0191375, 0.4, 1, 0.00110474, 0.687687, -0.725754, 0.0191354, 0.433333, 1, 0.00112375, 0.686966, -0.726437, 0.0191343, 0.466667, 1, 0.00114342, 0.686218, -0.727143, 0.0191332, 0.5, 1, 0.00116366, 0.685449, -0.727869, 0.019132, 0.533333, 1, 0.00118447, 0.684657, -0.728614, 0.0191307, 0.566667, 1, 0.00120557, 0.683853, -0.729369, 0.0191294, 0.6, 1, 0.00122686, 0.683041, -0.730129, 0.019128, 0.733333, 1, 0.0013117, 0.679795, -0.733152, 0.0191224, 0.8, 1, 0.00135226, 0.678238, -0.734592, 0.0191195, 0.833333, 1, 0.00137172, 0.67749, -0.735282, 0.0191182, 0.9, 1, 0.00140789, 0.676098, -0.736563, 0.0191155, 0.966667, 1, 0.00144025, 0.67485, -0.737706, 0.0191131, 1.03333, 1, 0.00146757, 0.673794, -0.73867, 0.019111, 1.1, 1, 0.0014888, 0.672973, -0.739418, 0.0191094, 1.23333, 1, 0.00150968, 0.672165, -0.740153, 0.0191078, 1.4, 1, 0.0014888, 0.672973, -0.739418, 0.0191094, 1.53333, 1, 0.00144025, 0.674849, -0.737706, 0.0191131, 1.6, 1, 0.00140789, 0.676098, -0.736563, 0.0191155, 1.66667, 1, 0.00137172, 0.67749, -0.735282, 0.0191182, 1.86667, 1, 0.00124824, 0.682224, -0.730892, 0.0191266, 1.9, 1, 0.00122686, 0.683041, -0.730129, 0.019128, 1.93333, 1, 0.00120557, 0.683853, -0.729369, 0.0191294, 1.96667, 1, 0.00118447, 0.684656, -0.728614, 0.0191307, 2, 1, 0.00116366, 0.685449, -0.727869, 0.019132, 2.03333, 1, 0.00114342, 0.686218, -0.727143, 0.0191332, 2.06667, 1, 0.00112374, 0.686966, -0.726437, 0.0191343, 2.16667, 1, 0.0010691, 0.689037, -0.724472, 0.0191375, 2.23333, 1, 0.00103813, 0.690209, -0.723356, 0.0191392, 2.3, 1, 0.0010121, 0.691192, -0.722417, 0.0191406, 2.36667, 1, 0.000992361, 0.691937, -0.721704, 0.0191416, 2.5, 1, 0.00097516, 0.692585, -0.721082, 0.0191425)
tracks/15/type = "rotation_3d"
tracks/15/imported = true
tracks/15/enabled = true
tracks/15/path = NodePath("Skeleton/Skeleton3D:UpperLeg_R")
tracks/15/interp = 1
tracks/15/loop_wrap = true
tracks/15/keys = PackedFloat32Array(0, 1, 0.00986872, 0.701327, -0.712707, 0.00953545, 0.1, 1, 0.00990691, 0.702179, -0.711867, 0.00959725, 0.133333, 1, 0.00993584, 0.702822, -0.711231, 0.00964399, 0.166667, 1, 0.00996844, 0.703546, -0.710514, 0.00969663, 0.2, 1, 0.0100037, 0.704327, -0.709739, 0.00975347, 0.233333, 1, 0.01004, 0.705126, -0.708943, 0.00981178, 0.266667, 1, 0.0100768, 0.705937, -0.708134, 0.00987094, 0.3, 1, 0.0101139, 0.706751, -0.707321, 0.00993041, 0.366667, 1, 0.0101876, 0.708361, -0.705705, 0.0100483, 0.4, 1, 0.0102238, 0.709148, -0.704913, 0.010106, 0.433333, 1, 0.0102593, 0.70992, -0.704135, 0.0101627, 0.5, 1, 0.0103283, 0.711412, -0.702625, 0.0102725, 0.533333, 1, 0.0103613, 0.71212, -0.701905, 0.0103247, 0.633333, 1, 0.0104542, 0.714109, -0.699878, 0.0104717, 0.7, 1, 0.0105121, 0.715344, -0.698614, 0.0105631, 0.766667, 1, 0.010564, 0.716443, -0.697484, 0.0106447, 0.833333, 1, 0.010612, 0.717459, -0.696437, 0.0107202, 0.9, 1, 0.0106531, 0.718324, -0.695543, 0.0107847, 1, 1, 0.0107053, 0.719421, -0.694407, 0.0108664, 1.1, 1, 0.0107411, 0.72017, -0.693628, 0.0109224, 1.5, 1, 0.0107053, 0.719421, -0.694407, 0.0108664, 1.56667, 1, 0.0106713, 0.718706, -0.695148, 0.0108131, 1.63333, 1, 0.0106334, 0.717909, -0.695972, 0.0107537, 1.7, 1, 0.0105889, 0.716973, -0.696939, 0.010684, 1.8, 1, 0.0105121, 0.715344, -0.698614, 0.0105631, 1.86667, 1, 0.0104542, 0.714109, -0.699878, 0.0104717, 1.96667, 1, 0.0103613, 0.71212, -0.701905, 0.0103247, 2, 1, 0.0103283, 0.711412, -0.702625, 0.0102725, 2.03333, 1, 0.0102942, 0.710674, -0.703371, 0.0102182, 2.06667, 1, 0.0102593, 0.70992, -0.704135, 0.0101627, 2.1, 1, 0.0102238, 0.709148, -0.704913, 0.010106, 2.13333, 1, 0.0101876, 0.708361, -0.705705, 0.0100483, 2.16667, 1, 0.0101509, 0.707562, -0.706508, 0.00998974, 2.2, 1, 0.0101139, 0.706751, -0.707321, 0.00993041, 2.23333, 1, 0.0100768, 0.705937, -0.708134, 0.00987094, 2.26667, 1, 0.01004, 0.705126, -0.708943, 0.00981178, 2.3, 1, 0.0100037, 0.704327, -0.709739, 0.00975347, 2.33333, 1, 0.00996844, 0.703546, -0.710514, 0.00969663, 2.36667, 1, 0.00993584, 0.702822, -0.711231, 0.009644, 2.43333, 1, 0.00988333, 0.701653, -0.712386, 0.00955909, 2.5, 1, 0.00985971, 0.701126, -0.712906, 0.00952085)
tracks/16/type = "rotation_3d"
tracks/16/imported = true
tracks/16/enabled = true
tracks/16/path = NodePath("Skeleton/Skeleton3D:LowerLeg_R")
tracks/16/interp = 1
tracks/16/loop_wrap = true
tracks/16/keys = PackedFloat32Array(0, 1, 0.0123975, -0.00254899, -0.00075698, 0.99992, 0.0666667, 1, 0.0132552, -0.00254896, -0.000809349, 0.999909, 0.1, 1, 0.0146393, -0.00254891, -0.000893859, 0.999889, 0.133333, 1, 0.0163351, -0.00254885, -0.000997402, 0.999863, 0.166667, 1, 0.0182445, -0.00254876, -0.00111399, 0.99983, 0.2, 1, 0.0203059, -0.00254866, -0.00123986, 0.99979, 0.333333, 1, 0.0288736, -0.00254812, -0.00176299, 0.999578, 0.366667, 1, 0.0309962, -0.00254796, -0.0018926, 0.999515, 0.433333, 1, 0.0351437, -0.00254761, -0.00214584, 0.999377, 0.5, 1, 0.039121, -0.00254723, -0.00238869, 0.999228, 0.533333, 1, 0.0410135, -0.00254703, -0.00250424, 0.999152, 0.566667, 1, 0.0428554, -0.00254684, -0.00261671, 0.999075, 0.633333, 1, 0.0463349, -0.00254644, -0.00282916, 0.998919, 0.666667, 1, 0.0480587, -0.00254623, -0.00293441, 0.998837, 0.7, 1, 0.0496449, -0.00254603, -0.00303126, 0.998759, 0.766667, 1, 0.0525976, -0.00254564, -0.00321156, 0.998607, 0.8, 1, 0.0540204, -0.00254545, -0.00329843, 0.998531, 0.833333, 1, 0.0553301, -0.00254527, -0.0033784, 0.998459, 0.866667, 1, 0.0565422, -0.00254509, -0.00345241, 0.998391, 0.9, 1, 0.0576601, -0.00254493, -0.00352066, 0.998327, 0.966667, 1, 0.0596584, -0.00254463, -0.00364268, 0.998209, 1.03333, 1, 0.0613841, -0.00254436, -0.00374805, 0.998104, 1.1, 1, 0.0626406, -0.00254416, -0.00382477, 0.998026, 1.2, 1, 0.0637351, -0.00254398, -0.0038916, 0.997956, 1.4, 1, 0.0626406, -0.00254416, -0.00382477, 0.998026, 1.46667, 1, 0.0613841, -0.00254436, -0.00374805, 0.998104, 1.56667, 1, 0.0586895, -0.00254478, -0.00358352, 0.998267, 1.6, 1, 0.0576601, -0.00254493, -0.00352066, 0.998327, 1.63333, 1, 0.0565422, -0.00254509, -0.00345241, 0.998391, 1.66667, 1, 0.0553301, -0.00254527, -0.0033784, 0.998459, 1.7, 1, 0.0540204, -0.00254545, -0.00329843, 0.998531, 1.8, 1, 0.0496449, -0.00254603, -0.00303126, 0.998759, 1.83333, 1, 0.0480587, -0.00254623, -0.00293441, 0.998837, 1.86667, 1, 0.0463349, -0.00254644, -0.00282916, 0.998919, 1.93333, 1, 0.0428554, -0.00254684, -0.00261671, 0.999075, 1.96667, 1, 0.0410135, -0.00254703, -0.00250424, 0.999152, 2, 1, 0.039121, -0.00254723, -0.00238869, 0.999228, 2.1, 1, 0.0330891, -0.00254779, -0.00202039, 0.999447, 2.13333, 1, 0.0309962, -0.00254796, -0.0018926, 0.999514, 2.26667, 1, 0.0224206, -0.00254854, -0.00136898, 0.999744, 2.3, 1, 0.0203059, -0.00254866, -0.00123986, 0.99979, 2.33333, 1, 0.0182445, -0.00254876, -0.00111399, 0.99983, 2.36667, 1, 0.0163351, -0.00254885, -0.000997402, 0.999863, 2.4, 1, 0.0146393, -0.00254891, -0.000893859, 0.999889, 2.43333, 1, 0.0132552, -0.00254896, -0.000809349, 0.999909, 2.5, 1, 0.0118679, -0.00254901, -0.000724641, 0.999926)
tracks/17/type = "rotation_3d"
tracks/17/imported = true
tracks/17/enabled = true
tracks/17/path = NodePath("Skeleton/Skeleton3D:Foot_R")
tracks/17/interp = 1
tracks/17/loop_wrap = true
tracks/17/keys = PackedFloat32Array(0, 1, 0.000976906, -0.692519, 0.721145, 0.0191424, 0.166667, 1, 0.00100118, -0.691604, 0.722023, 0.0191411, 0.233333, 1, 0.00102445, -0.690726, 0.722863, 0.0191399, 0.333333, 1, 0.0010691, -0.689037, 0.724472, 0.0191375, 0.4, 1, 0.00110474, -0.687687, 0.725754, 0.0191354, 0.433333, 1, 0.00112374, -0.686966, 0.726437, 0.0191343, 0.466667, 1, 0.00114342, -0.686218, 0.727143, 0.0191332, 0.5, 1, 0.00116366, -0.685449, 0.727869, 0.019132, 0.533333, 1, 0.00118447, -0.684657, 0.728614, 0.0191307, 0.566667, 1, 0.00120557, -0.683853, 0.729369, 0.0191294, 0.6, 1, 0.00122686, -0.683041, 0.730129, 0.019128, 0.733333, 1, 0.0013117, -0.679795, 0.733152, 0.0191224, 0.8, 1, 0.00135226, -0.678238, 0.734592, 0.0191195, 0.833333, 1, 0.00137172, -0.67749, 0.735282, 0.0191182, 0.9, 1, 0.00140789, -0.676098, 0.736563, 0.0191155, 0.966667, 1, 0.00144025, -0.67485, 0.737706, 0.0191131, 1.03333, 1, 0.00146757, -0.673794, 0.73867, 0.019111, 1.1, 1, 0.0014888, -0.672973, 0.739418, 0.0191094, 1.23333, 1, 0.00150968, -0.672165, 0.740153, 0.0191078, 1.4, 1, 0.0014888, -0.672973, 0.739418, 0.0191094, 1.53333, 1, 0.00144025, -0.674849, 0.737706, 0.0191131, 1.6, 1, 0.00140789, -0.676098, 0.736563, 0.0191155, 1.66667, 1, 0.00137172, -0.67749, 0.735282, 0.0191182, 1.86667, 1, 0.00124824, -0.682224, 0.730892, 0.0191266, 1.9, 1, 0.00122686, -0.683041, 0.730129, 0.019128, 1.93333, 1, 0.00120557, -0.683853, 0.729369, 0.0191294, 1.96667, 1, 0.00118447, -0.684656, 0.728614, 0.0191307, 2, 1, 0.00116366, -0.685449, 0.727869, 0.019132, 2.03333, 1, 0.00114342, -0.686218, 0.727143, 0.0191332, 2.06667, 1, 0.00112374, -0.686966, 0.726437, 0.0191343, 2.16667, 1, 0.0010691, -0.689037, 0.724472, 0.0191375, 2.23333, 1, 0.00103813, -0.690209, 0.723356, 0.0191392, 2.3, 1, 0.0010121, -0.691192, 0.722417, 0.0191406, 2.36667, 1, 0.000992362, -0.691937, 0.721704, 0.0191416, 2.5, 1, 0.00097516, -0.692585, 0.721082, 0.0191425)
tracks/18/type = "position_3d"
tracks/18/imported = true
tracks/18/enabled = true
tracks/18/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/18/interp = 1
tracks/18/loop_wrap = true
tracks/18/keys = PackedFloat32Array(0, 1, -0.0827106, -0.787835, -0.0142412)
tracks/19/type = "rotation_3d"
tracks/19/imported = true
tracks/19/enabled = true
tracks/19/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/19/interp = 1
tracks/19/loop_wrap = true
tracks/19/keys = PackedFloat32Array(0, 1, -0.707001, 4.51326e-18, -4.26954e-18, 0.707212, 0.166667, 1, -0.707898, 4.51333e-18, -4.26961e-18, 0.706315, 0.233333, 1, -0.708755, 4.5134e-18, -4.26967e-18, 0.705454, 0.3, 1, -0.709809, 4.51347e-18, -4.26974e-18, 0.704395, 0.366667, 1, -0.711039, 4.51354e-18, -4.26981e-18, 0.703153, 0.466667, 1, -0.713127, 4.51363e-18, -4.26989e-18, 0.701034, 0.5, 1, -0.713869, 4.51366e-18, -4.26991e-18, 0.700279, 0.533333, 1, -0.71463, 4.51367e-18, -4.26993e-18, 0.699502, 0.566667, 1, -0.715401, 4.51369e-18, -4.26994e-18, 0.698714, 0.6, 1, -0.716178, 4.51369e-18, -4.26995e-18, 0.697918, 0.633333, 1, -0.716958, 4.51369e-18, -4.26995e-18, 0.697116, 0.733333, 1, -0.719267, 4.51367e-18, -4.26992e-18, 0.694734, 0.8, 1, -0.720739, 4.51362e-18, -4.26988e-18, 0.693206, 0.866667, 1, -0.722115, 4.51356e-18, -4.26982e-18, 0.691773, 0.933333, 1, -0.723357, 4.51349e-18, -4.26976e-18, 0.690474, 1, 1, -0.724446, 4.51342e-18, -4.26969e-18, 0.689331, 1.06667, 1, -0.725318, 4.51335e-18, -4.26963e-18, 0.688414, 1.16667, 1, -0.726204, 4.51327e-18, -4.26955e-18, 0.687479, 1.43333, 1, -0.725318, 0, 0, 0.688414, 1.5, 1, -0.724446, 0, 0, 0.689331, 1.6, 1, -0.722753, 0, 0, 0.691106, 1.66667, 1, -0.721445, 0, 0, 0.692472, 1.73333, 1, -0.720012, 0, 0, 0.693961, 1.76667, 1, -0.719267, 0, 0, 0.694734, 1.8, 1, -0.718508, 0, 0, 0.695519, 1.83333, 1, -0.717737, 0, 0, 0.696315, 1.86667, 1, -0.716958, 0, 0, 0.697116, 1.9, 1, -0.716178, 0, 0, 0.697918, 1.93333, 1, -0.715401, 0, 0, 0.698714, 1.96667, 1, -0.71463, 0, 0, 0.699502, 2.03333, 1, -0.713127, 0, 0, 0.701034, 2.1, 1, -0.711709, 0, 0, 0.702475, 2.16667, 1, -0.710399, 0, 0, 0.703799, 2.23333, 1, -0.709259, 0, 0, 0.704948, 2.3, 1, -0.7083, 0, 0, 0.705911, 2.36667, 1, -0.707572, 0, 0, 0.706641, 2.5, 1, -0.706937, 4.51325e-18, -4.26953e-18, 0.707277)
[sub_resource type="Animation" id="Animation_f761b"]
resource_name = "walk_backward_loop"
length = 0.833333
loop_mode = 1
tracks/0/type = "position_3d"
tracks/0/imported = true
tracks/0/enabled = true
tracks/0/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = PackedFloat32Array(0, 1, 0.0827106, -0.78706, 0.0516844, 0.0333333, 1, 0.0827106, -0.78706, 0.0516844, 0.0666667, 1, 0.0827106, -0.787329, 0.0848288, 0.1, 1, 0.0827106, -0.7876, 0.123836, 0.133333, 1, 0.0827106, -0.787755, 0.15461, 0.166667, 1, 0.0827106, -0.787822, 0.17624, 0.2, 1, 0.0827106, -0.787832, 0.183855, 0.233333, 1, 0.0827106, -0.777851, 0.180048, 0.266667, 1, 0.0827106, -0.755323, 0.165425, 0.3, 1, 0.0827106, -0.722043, 0.140747, 0.333333, 1, 0.0827106, -0.684155, 0.106925, 0.366667, 1, 0.0827106, -0.652411, 0.0627325, 0.4, 1, 0.0827106, -0.634491, 0.012129, 0.433333, 1, 0.0827106, -0.629947, -0.0435259, 0.5, 1, 0.0827106, -0.647162, -0.160068, 0.533333, 1, 0.0827106, -0.663247, -0.21048, 0.566667, 1, 0.0827106, -0.681347, -0.24973, 0.6, 1, 0.0827106, -0.70038, -0.274217, 0.633333, 1, 0.0827106, -0.719323, -0.280939, 0.666667, 1, 0.0827106, -0.737208, -0.267495, 0.7, 1, 0.0827106, -0.752663, -0.231966, 0.733333, 1, 0.0827106, -0.765698, -0.185274, 0.766667, 1, 0.0827106, -0.775917, -0.131022, 0.833333, 1, 0.0827106, -0.786322, -0.0142412)
tracks/1/type = "rotation_3d"
tracks/1/imported = true
tracks/1/enabled = true
tracks/1/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = PackedFloat32Array(0, 1, -0.699803, 0, 0, 0.714336, 0.0333333, 1, -0.699803, 0, 0, 0.714336, 0.0666667, 1, -0.694056, 0, 0, 0.719921, 0.1, 1, -0.686327, 0, 0, 0.727293, 0.133333, 1, -0.678975, 0, 0, 0.734161, 0.166667, 1, -0.672927, 0, 0, 0.739709, 0.2, 1, -0.670497, 6.44586e-18, -6.44586e-18, 0.741912, 0.233333, 1, -0.678245, 8.06579e-18, -8.06579e-18, 0.734836, 0.266667, 1, -0.69684, 8.08116e-18, -8.08116e-18, 0.717227, 0.3, 1, -0.723528, 8.09419e-18, -8.09419e-18, 0.690295, 0.333333, 1, -0.752706, 8.09484e-18, -8.09485e-18, 0.658357, 0.366667, 1, -0.776032, 8.08375e-18, -8.08375e-18, 0.630693, 0.4, 1, -0.788728, 3.23189e-18, -3.23189e-18, 0.614742, 0.433333, 1, -0.791191, 0, 0, 0.61157, 0.466667, 1, -0.785208, 0, 0, 0.619233, 0.5, 1, -0.774174, 0, 0, 0.632973, 0.533333, 1, -0.759629, 0, 0, 0.650357, 0.566667, 1, -0.744933, 0, 0, 0.667139, 0.6, 1, -0.731993, 0, 0, 0.681312, 0.633333, 1, -0.722234, 0, 0, 0.691649, 0.666667, 1, -0.716492, 0, 0, 0.697595, 0.7, 1, -0.71395, 0, 0, 0.700197, 0.733333, 1, -0.712577, 0, 0, 0.701594, 0.766667, 1, -0.711539, 0, 0, 0.702646, 0.8, 1, -0.709999, 0, 0, 0.704203, 0.833333, 1, -0.707107, 0, 0, 0.707107)
tracks/2/type = "position_3d"
tracks/2/imported = true
tracks/2/enabled = true
tracks/2/path = NodePath("Skeleton/Skeleton3D:Root")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = PackedFloat32Array(0, 1, 0, 0.198133, -0.00156, 0.0333333, 1, 0, 0.198133, -0.00156, 0.0666667, 1, 0, 0.195461, -0.003792, 0.1, 1, 0, 0.191555, -0.007056, 0.133333, 1, 0, 0.187476, -0.010464, 0.166667, 1, 0, 0.183914, -0.01344, 0.2, 1, 0, 0.18242, -0.014688, 0.233333, 1, 0, 0.183167, -0.014064, 0.266667, 1, 0, 0.185695, -0.011952, 0.3, 1, 0, 0.189429, -0.008832, 0.333333, 1, 0, 0.19368, -0.00528, 0.366667, 1, 0, 0.197242, -0.002304, 0.4, 1, 0, 0.199253, -0.000623999, 0.433333, 1, 0, 0.199253, -0.000624, 0.466667, 1, 0, 0.197242, -0.002304, 0.5, 1, 0, 0.19368, -0.00528, 0.533333, 1, 0, 0.189429, -0.008832, 0.566667, 1, 0, 0.185695, -0.011952, 0.6, 1, 0, 0.183167, -0.014064, 0.633333, 1, 0, 0.18242, -0.014688, 0.666667, 1, 0, 0.183914, -0.01344, 0.7, 1, 0, 0.187476, -0.010464, 0.733333, 1, 0, 0.191555, -0.007056, 0.766667, 1, 0, 0.195461, -0.003792, 0.8, 1, 0, 0.198506, -0.001248, 0.833333, 1, 0, 0.2, 0)
tracks/3/type = "rotation_3d"
tracks/3/imported = true
tracks/3/enabled = true
tracks/3/path = NodePath("Skeleton/Skeleton3D:LowerBody")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = PackedFloat32Array(0, 1, -0.00112794, 0.733763, 0.679404, 0.000808356, 0.0333333, 1, -0.00112794, 0.733763, 0.679404, 0.000808356, 0.0666667, 1, -0.00262052, 0.733763, 0.679398, 0.00187797, 0.1, 1, -0.00461398, 0.733759, 0.679387, 0.00330652, 0.133333, 1, -0.00633903, 0.733751, 0.679374, 0.00454272, 0.166667, 1, -0.00724887, 0.733746, 0.679365, 0.00519473, 0.266667, 1, -0.00585724, 0.733753, 0.679377, 0.00444725, 0.3, 1, -0.00490359, 0.733757, 0.679384, 0.00385662, 0.333333, 1, -0.00374127, 0.733761, 0.679391, 0.00307226, 0.366667, 1, -0.00234278, 0.733763, 0.679399, 0.0020014, 0.4, 1, -0.000797244, 0.733763, 0.679405, 0.000693495, 0.433333, 1, 0.000829839, 0.73376, 0.679408, -0.000862758, 0.466667, 1, -0.00244231, -0.733752, -0.679408, 0.00260161, 0.5, 1, -0.00391337, -0.733741, -0.679404, 0.00438029, 0.533333, 1, -0.0049677, -0.733729, -0.679399, 0.00577453, 0.6, 1, -0.00556517, -0.733722, -0.679395, 0.00662516, 0.633333, 1, -0.00509596, -0.733727, -0.679398, 0.00606658, 0.666667, 1, -0.00424344, -0.733736, -0.679402, 0.00505167, 0.733333, 1, -0.00203341, -0.733754, -0.679408, 0.00242068, 0.766667, 1, -0.00105823, -0.733758, -0.679408, 0.00125973, 0.8, 1, -0.000338393, -0.733761, -0.679407, 0.000402783, 0.833333, 1, 2.96978e-08, 0.733762, 0.679407, 3.20738e-08)
tracks/4/type = "rotation_3d"
tracks/4/imported = true
tracks/4/enabled = true
tracks/4/path = NodePath("Skeleton/Skeleton3D:Head")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = PackedFloat32Array(0, 1, 2.95723e-08, 0.737277, 0.67559, 3.22707e-08)
tracks/5/type = "rotation_3d"
tracks/5/imported = true
tracks/5/enabled = true
tracks/5/path = NodePath("Skeleton/Skeleton3D:UpperArm_L")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = PackedFloat32Array(0, 1, 0.0208498, 0.176151, -0.969088, 0.171476, 0.0333333, 1, 0.0208498, 0.176151, -0.969088, 0.171476, 0.0666667, 1, 0.0241316, 0.200481, -0.964425, 0.170616, 0.1, 1, 0.0280894, 0.229804, -0.957964, 0.16943, 0.133333, 1, 0.0313419, 0.253886, -0.951958, 0.168332, 0.166667, 1, 0.0337162, 0.271457, -0.94717, 0.167459, 0.2, 1, 0.0345843, 0.27788, -0.945334, 0.167125, 0.233333, 1, 0.0341504, 0.27467, -0.946257, 0.167293, 0.266667, 1, 0.0325304, 0.262683, -0.949604, 0.167903, 0.3, 1, 0.0298622, 0.242932, -0.954769, 0.168845, 0.333333, 1, 0.0263113, 0.216633, -0.960981, 0.169983, 0.366667, 1, 0.0219453, 0.184274, -0.967601, 0.171201, 0.4, 1, 0.0172497, 0.149447, -0.97349, 0.172294, 0.433333, 1, 0.01243, 0.113671, -0.978229, 0.173184, 0.466667, 1, 0.00769626, 0.0785052, -0.981611, 0.173832, 0.5, 1, 0.00326049, 0.0455287, -0.983645, 0.174239, 0.533333, 1, -0.000371976, 0.0185064, -0.984496, 0.174427, 0.566667, 1, -0.00311628, -0.00191932, -0.984653, 0.174484, 0.6, 1, -0.00478886, -0.0143727, -0.984544, 0.174482, 0.633333, 1, -0.00523763, -0.0177144, -0.984488, 0.174476, 0.666667, 1, -0.00434008, -0.0110308, -0.984589, 0.174485, 0.7, 1, -0.00189224, 0.00719231, -0.984635, 0.174468, 0.733333, 1, 0.0014444, 0.0320206, -0.984162, 0.174349, 0.766667, 1, 0.00547913, 0.0620256, -0.982765, 0.174059, 0.8, 1, 0.0100136, 0.0957232, -0.980112, 0.173542, 0.833333, 1, 0.0148423, 0.131581, -0.976021, 0.172767)
tracks/6/type = "rotation_3d"
tracks/6/imported = true
tracks/6/enabled = true
tracks/6/path = NodePath("Skeleton/Skeleton3D:LowerArm_L")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = PackedFloat32Array(0, 1, 0.357307, -0.099368, -0.057005, 0.926935, 0.0333333, 1, 0.357307, -0.099368, -0.057005, 0.926935, 0.0666667, 1, 0.350878, -0.0974035, -0.0511644, 0.929935, 0.1, 1, 0.342997, -0.094741, -0.0441115, 0.933505, 0.133333, 1, 0.336392, -0.09219, -0.0383208, 0.936415, 0.166667, 1, 0.331495, -0.0900916, -0.0341055, 0.938526, 0.2, 1, 0.329687, -0.089249, -0.0325718, 0.939298, 0.233333, 1, 0.330593, -0.0892894, -0.0334015, 0.938946, 0.266667, 1, 0.333955, -0.0899102, -0.0364064, 0.937585, 0.3, 1, 0.339436, -0.090921, -0.0413188, 0.935313, 0.333333, 1, 0.346631, -0.0922452, -0.0477918, 0.93223, 0.366667, 1, 0.355327, -0.0938417, -0.0556522, 0.928353, 0.4, 1, 0.364542, -0.0955285, -0.0640266, 0.924058, 0.433333, 1, 0.373882, -0.0972331, -0.0725637, 0.919506, 0.466667, 1, 0.382965, -0.0988855, -0.0809138, 0.914884, 0.5, 1, 0.39142, -0.100419, -0.0887295, 0.910403, 0.533333, 1, 0.398331, -0.101669, -0.09515, 0.90661, 0.566667, 1, 0.403545, -0.10261, -0.100013, 0.903671, 0.6, 1, 0.406721, -0.103182, -0.102983, 0.901846, 0.633333, 1, 0.407547, -0.103425, -0.103775, 0.901354, 0.666667, 1, 0.405732, -0.103474, -0.102147, 0.902353, 0.7, 1, 0.400844, -0.10352, -0.0977211, 0.905019, 0.733333, 1, 0.394265, -0.103443, -0.0917088, 0.90854, 0.766667, 1, 0.386413, -0.103163, -0.0844595, 0.912639, 0.8, 1, 0.377722, -0.102598, -0.0763348, 0.917046, 0.833333, 1, 0.368649, -0.10167, -0.0677088, 0.921508)
tracks/7/type = "rotation_3d"
tracks/7/imported = true
tracks/7/enabled = true
tracks/7/path = NodePath("Skeleton/Skeleton3D:UpperArm_R")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = PackedFloat32Array(0, 1, 0.0217556, -0.0844426, 0.980846, 0.174174, 0.0333333, 1, 0.0217556, -0.0844426, 0.980846, 0.174174, 0.0666667, 1, 0.0163622, -0.0600987, 0.982692, 0.174464, 0.1, 1, 0.00981108, -0.0305409, 0.984104, 0.17467, 0.133333, 1, 0.00438829, -0.00608341, 0.98459, 0.174718, 0.166667, 1, 0.00040702, 0.0118671, 0.984553, 0.174684, 0.2, 1, -0.00105342, 0.0184507, 0.984456, 0.174657, 0.233333, 1, -0.000323202, 0.015159, 0.98451, 0.174672, 0.266667, 1, 0.00239775, 0.00289197, 0.984613, 0.174709, 0.3, 1, 0.00685964, -0.0172285, 0.984445, 0.17471, 0.333333, 1, 0.0127607, -0.0438476, 0.98358, 0.174597, 0.366667, 1, 0.0199591, -0.0763331, 0.98153, 0.174283, 0.4, 1, 0.0276319, -0.110976, 0.97813, 0.173732, 0.433333, 1, 0.0354342, -0.146222, 0.973373, 0.172942, 0.466667, 1, 0.043026, -0.180535, 0.967466, 0.171947, 0.5, 1, 0.0500763, -0.212416, 0.960829, 0.170818, 0.533333, 1, 0.0558041, -0.238329, 0.954604, 0.169753, 0.566667, 1, 0.0601042, -0.257789, 0.94943, 0.168865, 0.6, 1, 0.0627134, -0.269601, 0.946077, 0.168288, 0.633333, 1, 0.063412, -0.272763, 0.945152, 0.168128, 0.666667, 1, 0.0620141, -0.266435, 0.946992, 0.168445, 0.7, 1, 0.0581891, -0.249122, 0.951788, 0.16927, 0.733333, 1, 0.0529451, -0.225393, 0.957806, 0.170301, 0.766667, 1, 0.0465576, -0.196503, 0.964282, 0.171406, 0.8, 1, 0.0393184, -0.163775, 0.97051, 0.172461, 0.833333, 1, 0.0315383, -0.12862, 0.975913, 0.173366)
tracks/8/type = "rotation_3d"
tracks/8/imported = true
tracks/8/enabled = true
tracks/8/path = NodePath("Skeleton/Skeleton3D:LowerArm_R")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = PackedFloat32Array(0, 1, 0.378157, 0.121847, 0.0834372, 0.913887, 0.0333333, 1, 0.378157, 0.121847, 0.0834372, 0.913887, 0.0666667, 1, 0.383614, 0.127691, 0.0852465, 0.910642, 0.1, 1, 0.390271, 0.134715, 0.0877177, 0.906557, 0.133333, 1, 0.395844, 0.140452, 0.090116, 0.903028, 0.166667, 1, 0.399981, 0.144615, 0.0921104, 0.900343, 0.2, 1, 0.401516, 0.146128, 0.0929193, 0.899332, 0.233333, 1, 0.400816, 0.145269, 0.0928842, 0.899787, 0.266667, 1, 0.398126, 0.142202, 0.0922953, 0.90153, 0.3, 1, 0.393709, 0.137181, 0.0913282, 0.904341, 0.333333, 1, 0.387855, 0.13055, 0.0900457, 0.907974, 0.366667, 1, 0.380692, 0.122476, 0.0884759, 0.912275, 0.4, 1, 0.372994, 0.113846, 0.0867882, 0.916724, 0.433333, 1, 0.365076, 0.105017, 0.0850514, 0.921117, 0.466667, 1, 0.357262, 0.0963524, 0.0833365, 0.925276, 0.5, 1, 0.349884, 0.0882146, 0.0817169, 0.929043, 0.533333, 1, 0.343777, 0.081509, 0.0803756, 0.932048, 0.566667, 1, 0.339124, 0.0764177, 0.0793533, 0.934269, 0.6, 1, 0.336269, 0.0733023, 0.078726, 0.935602, 0.633333, 1, 0.335499, 0.0724894, 0.0784956, 0.935962, 0.666667, 1, 0.337032, 0.0742694, 0.0785882, 0.935263, 0.7, 1, 0.341182, 0.0790883, 0.0788697, 0.933338, 0.733333, 1, 0.34678, 0.085597, 0.0792957, 0.93066, 0.766667, 1, 0.353461, 0.0933771, 0.0798663, 0.927344, 0.8, 1, 0.360842, 0.101991, 0.0805812, 0.923525, 0.833333, 1, 0.368535, 0.110982, 0.0814406, 0.919365)
tracks/9/type = "rotation_3d"
tracks/9/imported = true
tracks/9/enabled = true
tracks/9/path = NodePath("Skeleton/Skeleton3D:UpperLeg_L")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = PackedFloat32Array(0, 1, 0.0104603, -0.751099, 0.660008, 0.0113736, 0.0333333, 1, 0.0104603, -0.751099, 0.660008, 0.0113736, 0.0666667, 1, 0.00977311, -0.755608, 0.654862, 0.0107804, 0.1, 1, 0.00912424, -0.764287, 0.644728, 0.0103344, 0.133333, 1, 0.00881364, -0.775224, 0.631541, 0.0102912, 0.166667, 1, 0.00871825, -0.785128, 0.619185, 0.0104238, 0.2, 1, 0.00868725, -0.788652, 0.614689, 0.0104714, 0.233333, 1, 0.0106197, -0.820078, 0.572003, 0.0131197, 0.266667, 1, 0.0133152, -0.858507, 0.512343, 0.0171081, 0.3, 1, 0.0158746, -0.890128, 0.454931, 0.0213983, 0.333333, 1, 0.017726, -0.908627, 0.416471, 0.0252117, 0.366667, 1, 0.0188069, -0.912775, 0.40706, 0.0281169, 0.4, 1, 0.0193664, -0.905165, 0.423573, 0.0297792, 0.433333, 1, 0.0195094, -0.886829, 0.460697, 0.0302122, 0.466667, 1, 0.0193263, -0.858949, 0.510841, 0.0295682, 0.5, 1, 0.018929, -0.824482, 0.564868, 0.0281945, 0.533333, 1, 0.01832, -0.786091, 0.61729, 0.0260278, 0.566667, 1, 0.0175639, -0.747542, 0.663568, 0.023451, 0.6, 1, 0.0166874, -0.712298, 0.701374, 0.020691, 0.633333, 1, 0.0157326, -0.684201, 0.728901, 0.0180032, 0.666667, 1, 0.0147496, -0.667161, 0.744603, 0.0156596, 0.7, 1, 0.0138006, -0.665016, 0.746571, 0.0139607, 0.733333, 1, 0.0128882, -0.670846, 0.741376, 0.0126587, 0.766667, 1, 0.0120047, -0.682042, 0.731122, 0.0116601, 0.8, 1, 0.0112299, -0.69809, 0.715837, 0.0110251, 0.833333, 1, 0.0107293, -0.72044, 0.693348, 0.0109651)
tracks/10/type = "rotation_3d"
tracks/10/imported = true
tracks/10/enabled = true
tracks/10/path = NodePath("Skeleton/Skeleton3D:LowerLeg_L")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = PackedFloat32Array(0, 1, 0.0668809, 0.00254346, 0.00408368, 0.997749, 0.0333333, 1, 0.0668809, 0.00254346, 0.00408368, 0.997749, 0.0666667, 1, 0.0370733, 0.00254743, 0.00226366, 0.999307, 0.1, 1, 0.0111015, 0.00254903, 0.000677844, 0.999935, 0.133333, 1, 0.00198073, 0.00254918, 0.000120941, 0.999995, 0.2, 1, 0.00198097, 0.00254918, 0.000120956, 0.999995, 0.233333, 1, 0.103566, 0.00253543, 0.00632366, 0.994599, 0.266667, 1, 0.248216, 0.00246911, 0.0151558, 0.968583, 0.3, 1, 0.388929, 0.00234771, 0.0237476, 0.920959, 0.333333, 1, 0.495648, 0.00221269, 0.0302637, 0.867994, 0.366667, 1, 0.563093, 0.00210481, 0.0343819, 0.825675, 0.4, 1, 0.596119, 0.00204464, 0.0363984, 0.802068, 0.433333, 1, 0.60019, 0.00203686, 0.036647, 0.799015, 0.466667, 1, 0.581193, 0.00207248, 0.0354871, 0.812989, 0.5, 1, 0.546465, 0.00213321, 0.0333666, 0.836814, 0.533333, 1, 0.493421, 0.00221594, 0.0301278, 0.869266, 0.566667, 1, 0.429862, 0.00230068, 0.0262469, 0.90251, 0.6, 1, 0.360124, 0.00237749, 0.0219888, 0.932642, 0.633333, 1, 0.289915, 0.00243929, 0.0177019, 0.956886, 0.666667, 1, 0.226157, 0.00248289, 0.0138089, 0.97399, 0.7, 1, 0.176599, 0.00250897, 0.010783, 0.984221, 0.733333, 1, 0.135394, 0.00252563, 0.00826704, 0.990754, 0.766667, 1, 0.100032, 0.00253635, 0.00610786, 0.994962, 0.8, 1, 0.0732972, 0.0025423, 0.00447545, 0.997297, 0.833333, 1, 0.0633703, 0.00254404, 0.00386933, 0.997979)
tracks/11/type = "rotation_3d"
tracks/11/imported = true
tracks/11/enabled = true
tracks/11/path = NodePath("Skeleton/Skeleton3D:Foot_L")
tracks/11/interp = 1
tracks/11/loop_wrap = true
tracks/11/keys = PackedFloat32Array(0, 1, 0.000783001, 0.699787, -0.714095, 0.0191513, 0.0333333, 1, 0.000783001, 0.699787, -0.714095, 0.0191513, 0.0666667, 1, 0.000629507, 0.705487, -0.708464, 0.019157, 0.1, 1, 0.000424851, 0.713014, -0.700888, 0.0191626, 0.133333, 1, 0.00023205, 0.720029, -0.69368, 0.0191659, 0.166667, 1, 7.47512e-05, 0.725697, -0.687747, 0.0191672, 0.2, 1, 1.18703e-05, 0.72795, -0.685363, 0.0191673, 0.233333, 1, 0.000212998, 0.720718, -0.692964, 0.0191661, 0.266667, 1, 0.000703719, 0.702736, -0.711192, 0.0191544, 0.3, 1, 0.00142932, 0.675271, -0.73732, 0.0191139, 0.333333, 1, 0.00225466, 0.64275, -0.765836, 0.0190342, 0.366667, 1, 0.00294184, 0.614622, -0.788589, 0.0189402, 0.4, 1, 0.00332734, 0.598418, -0.800955, 0.0188763, 0.433333, 1, 0.00340311, 0.595197, -0.803351, 0.0188628, 0.466667, 1, 0.00321957, 0.602979, -0.797527, 0.018895, 0.5, 1, 0.00288612, 0.616939, -0.786778, 0.0189488, 0.533333, 1, 0.00245591, 0.634612, -0.772593, 0.0190093, 0.566667, 1, 0.00203128, 0.651688, -0.758245, 0.0190594, 0.6, 1, 0.00166513, 0.666119, -0.745599, 0.0190948, 0.633333, 1, 0.00139354, 0.676651, -0.736055, 0.0191166, 0.666667, 1, 0.00123546, 0.682712, -0.730436, 0.0191275, 0.7, 1, 0.00116588, 0.685364, -0.727948, 0.0191318, 0.733333, 1, 0.00112839, 0.686789, -0.726604, 0.0191341, 0.766667, 1, 0.00110012, 0.687862, -0.725588, 0.0191357, 0.8, 1, 0.0010582, 0.68945, -0.72408, 0.0191381, 0.833333, 1, 0.000979768, 0.692411, -0.721249, 0.0191423)
tracks/12/type = "rotation_3d"
tracks/12/imported = true
tracks/12/enabled = true
tracks/12/path = NodePath("Skeleton/Skeleton3D:UpperLeg_R")
tracks/12/interp = 1
tracks/12/loop_wrap = true
tracks/12/keys = PackedFloat32Array(0, 1, 0.0194133, 0.86702, -0.496998, 0.0298928, 0.0333333, 1, 0.0194133, 0.86702, -0.496998, 0.0298928, 0.0666667, 1, 0.0191375, 0.842148, -0.538131, 0.0288962, 0.1, 1, 0.0186343, 0.805713, -0.591392, 0.0271255, 0.133333, 1, 0.0179622, 0.766657, -0.641326, 0.0248014, 0.166667, 1, 0.0171504, 0.727782, -0.685238, 0.0220804, 0.2, 1, 0.0162159, 0.696456, -0.717157, 0.0192912, 0.233333, 1, 0.0152422, 0.675727, -0.736802, 0.0168325, 0.266667, 1, 0.0142751, 0.66609, -0.745588, 0.0148102, 0.3, 1, 0.0133384, 0.666607, -0.745173, 0.0132436, 0.333333, 1, 0.0124376, 0.675064, -0.737555, 0.0120733, 0.366667, 1, 0.0115707, 0.688958, -0.724622, 0.0112459, 0.4, 1, 0.010981, 0.709355, -0.704681, 0.0109965, 0.433333, 1, 0.0106243, 0.732885, -0.680179, 0.0111312, 0.466667, 1, 0.0102313, 0.752606, -0.658296, 0.0111759, 0.5, 1, 0.00931477, 0.758594, -0.651415, 0.0103846, 0.533333, 1, 0.00893303, 0.769922, -0.637992, 0.0102834, 0.566667, 1, 0.00876623, 0.7802, -0.625383, 0.0103578, 0.6, 1, 0.0087028, 0.786893, -0.616939, 0.0104476, 0.633333, 1, 0.00932906, 0.799951, -0.599885, 0.0113655, 0.666667, 1, 0.0118978, 0.839232, -0.543441, 0.0148584, 0.7, 1, 0.0147146, 0.876627, -0.480556, 0.0193348, 0.733333, 1, 0.0168041, 0.899584, -0.435801, 0.0233104, 0.766667, 1, 0.0182667, 0.910714, -0.411771, 0.0266647, 0.8, 1, 0.0191743, 0.910962, -0.411011, 0.0291562, 0.833333, 1, 0.0195549, 0.899194, -0.436054, 0.0303964)
tracks/13/type = "rotation_3d"
tracks/13/imported = true
tracks/13/enabled = true
tracks/13/path = NodePath("Skeleton/Skeleton3D:LowerLeg_R")
tracks/13/interp = 1
tracks/13/loop_wrap = true
tracks/13/keys = PackedFloat32Array(0, 1, 0.589716, -0.00205671, -0.0360075, 0.806805, 0.0333333, 1, 0.589716, -0.00205671, -0.0360075, 0.806805, 0.0666667, 1, 0.563954, -0.00210331, -0.0344345, 0.825085, 0.1, 1, 0.520195, -0.00217563, -0.0317626, 0.853454, 0.133333, 1, 0.46335, -0.00225788, -0.0282917, 0.885721, 0.166667, 1, 0.395769, -0.00234024, -0.0241652, 0.918029, 0.2, 1, 0.323942, -0.0024112, -0.0197796, 0.945867, 0.233333, 1, 0.258177, -0.00246244, -0.015764, 0.965966, 0.266667, 1, 0.201443, -0.00249673, -0.0122999, 0.97942, 0.3, 1, 0.154568, -0.00251844, -0.00943777, 0.987934, 0.333333, 1, 0.11617, -0.00253186, -0.00709319, 0.993201, 0.366667, 1, 0.0838684, -0.00254017, -0.00512092, 0.99646, 0.4, 1, 0.0683347, -0.00254321, -0.00417244, 0.997651, 0.433333, 1, 0.0647747, -0.00254381, -0.00395508, 0.997889, 0.466667, 1, 0.0569504, -0.00254503, -0.00347733, 0.998368, 0.5, 1, 0.0171815, -0.00254881, -0.00104909, 0.999849, 0.533333, 1, 0.005021, -0.00254915, -0.000306577, 0.999984, 0.566667, 1, 0.00198081, -0.00254918, -0.000120946, 0.999995, 0.6, 1, 0.00198093, -0.00254918, -0.000120954, 0.999995, 0.633333, 1, 0.0358972, -0.00254754, -0.00219185, 0.99935, 0.666667, 1, 0.170757, -0.00251161, -0.0104263, 0.985255, 0.7, 1, 0.324111, -0.00241105, -0.0197899, 0.945809, 0.733333, 1, 0.443077, -0.00228427, -0.0270538, 0.896072, 0.766667, 1, 0.529791, -0.00216047, -0.0323485, 0.847508, 0.8, 1, 0.585009, -0.00206546, -0.03572, 0.810238, 0.833333, 1, 0.607117, -0.00202343, -0.0370699, 0.793745)
tracks/14/type = "rotation_3d"
tracks/14/imported = true
tracks/14/enabled = true
tracks/14/path = NodePath("Skeleton/Skeleton3D:Foot_R")
tracks/14/interp = 1
tracks/14/loop_wrap = true
tracks/14/keys = PackedFloat32Array(0, 1, 0.00330278, -0.59946, 0.800175, 0.0188806, 0.0333333, 1, 0.00330278, -0.59946, 0.800175, 0.0188806, 0.0666667, 1, 0.00305296, -0.609982, 0.792183, 0.0189226, 0.1, 1, 0.00267119, -0.625816, 0.779736, 0.0189803, 0.133333, 1, 0.0022426, -0.643236, 0.765428, 0.0190357, 0.166667, 1, 0.00181972, -0.660059, 0.750969, 0.0190807, 0.2, 1, 0.00151043, -0.672136, 0.74018, 0.0191077, 0.233333, 1, 0.00131451, -0.679687, 0.733252, 0.0191222, 0.266667, 1, 0.00120067, -0.684039, 0.729193, 0.0191297, 0.3, 1, 0.00114178, -0.68628, 0.727084, 0.0191333, 0.333333, 1, 0.00111499, -0.687298, 0.726123, 0.0191348, 0.366667, 1, 0.00108524, -0.688426, 0.725053, 0.0191366, 0.4, 1, 0.00101899, -0.690932, 0.722666, 0.0191402, 0.433333, 1, 0.000901073, -0.69537, 0.718396, 0.0191461, 0.466667, 1, 0.000731842, -0.701692, 0.712223, 0.0191533, 0.533333, 1, 0.000322535, -0.716745, 0.697071, 0.0191646, 0.566667, 1, 0.000153402, -0.722869, 0.690719, 0.0191667, 0.6, 1, 4.33102e-05, -0.726824, 0.686556, 0.0191673, 0.633333, 1, 6.84335e-05, -0.725924, 0.687508, 0.0191672, 0.666667, 1, 0.00035755, -0.715471, 0.69838, 0.019164, 0.7, 1, 0.00104966, -0.689773, 0.723772, 0.0191385, 0.733333, 1, 0.00184242, -0.659165, 0.751754, 0.0190786, 0.766667, 1, 0.00259867, -0.628789, 0.77734, 0.0189903, 0.8, 1, 0.00318453, -0.604457, 0.796407, 0.0189009, 0.833333, 1, 0.00346995, -0.592346, 0.805456, 0.0188506)
tracks/15/type = "position_3d"
tracks/15/imported = true
tracks/15/enabled = true
tracks/15/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/15/interp = 1
tracks/15/loop_wrap = true
tracks/15/keys = PackedFloat32Array(0, 1, -0.0827106, -0.633117, -0.0874529, 0.0333333, 1, -0.0827106, -0.633117, -0.0874529, 0.0666667, 1, -0.0827106, -0.641544, -0.131022, 0.1, 1, -0.0827106, -0.655205, -0.185274, 0.133333, 1, -0.0827106, -0.671961, -0.231966, 0.166667, 1, -0.0827106, -0.690732, -0.267495, 0.2, 1, -0.0827106, -0.710027, -0.280939, 0.233333, 1, -0.0827106, -0.728266, -0.274217, 0.266667, 1, -0.0827106, -0.744936, -0.24973, 0.3, 1, -0.0827106, -0.759584, -0.21048, 0.333333, 1, -0.0827106, -0.771812, -0.160068, 0.4, 1, -0.0827106, -0.784623, -0.0435258, 0.433333, 1, -0.0827106, -0.786617, 0.012129, 0.466667, 1, -0.0827106, -0.787149, 0.0627325, 0.5, 1, -0.0827106, -0.787508, 0.106925, 0.533333, 1, -0.0827106, -0.787692, 0.140747, 0.566667, 1, -0.0827106, -0.787789, 0.165425, 0.6, 1, -0.0827106, -0.787827, 0.180048, 0.633333, 1, -0.0827106, -0.784506, 0.183855, 0.666667, 1, -0.0827106, -0.771195, 0.17624, 0.7, 1, -0.0827106, -0.739451, 0.15461, 0.733333, 1, -0.0827106, -0.703098, 0.123836, 0.766667, 1, -0.0827106, -0.668283, 0.0848289, 0.8, 1, -0.0827106, -0.641147, 0.0384993, 0.833333, 1, -0.0827106, -0.627835, -0.0142412)
tracks/16/type = "rotation_3d"
tracks/16/imported = true
tracks/16/enabled = true
tracks/16/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/16/interp = 1
tracks/16/loop_wrap = true
tracks/16/keys = PackedFloat32Array(0, 1, -0.787928, 0, 0, 0.615767, 0.0333333, 1, -0.787928, 0, 0, 0.615767, 0.0666667, 1, -0.779721, 0, 0, 0.626127, 0.1, 1, -0.766951, 0, 0, 0.641706, 0.133333, 1, -0.752289, 0, 0, 0.658834, 0.166667, 1, -0.737487, 0, 0, 0.675362, 0.2, 1, -0.726451, 0, 0, 0.687218, 0.233333, 1, -0.719369, 0, 0, 0.694628, 0.266667, 1, -0.715222, 0, 0, 0.698897, 0.3, 1, -0.713068, 0, 0, 0.701095, 0.333333, 1, -0.712085, 0, 0, 0.702093, 0.366667, 1, -0.710993, 0, 0, 0.703199, 0.4, 1, -0.708554, 0, 0, 0.705657, 0.433333, 1, -0.704194, 0, 0, 0.710008, 0.466667, 1, -0.697892, 0, 0, 0.716203, 0.533333, 1, -0.682434, 0, 0, 0.730947, 0.566667, 1, -0.675957, 0, 0, 0.736941, 0.6, 1, -0.671713, 3.22294e-18, -3.22294e-18, 0.740811, 0.633333, 1, -0.672684, 8.06026e-18, -8.06026e-18, 0.73993, 0.666667, 1, -0.683768, 8.07087e-18, -8.07087e-18, 0.729699, 0.7, 1, -0.709684, 8.08882e-18, -8.08882e-18, 0.70452, 0.733333, 1, -0.73829, 8.09641e-18, -8.09641e-18, 0.674484, 0.766667, 1, -0.764494, 8.09062e-18, -8.09062e-18, 0.64463, 0.8, 1, -0.784058, 6.4636e-18, -6.4636e-18, 0.620687, 0.833333, 1, -0.793353, 0, 0, 0.608761)
tracks/17/type = "rotation_3d"
tracks/17/imported = true
tracks/17/enabled = true
tracks/17/path = NodePath("Skeleton/Skeleton3D:UpperBody")
tracks/17/interp = 1
tracks/17/loop_wrap = true
tracks/17/keys = PackedFloat32Array(0, 1, -0.0619498, 4.36274e-08, 2.70791e-09, 0.998079)
tracks/18/type = "rotation_3d"
tracks/18/imported = true
tracks/18/enabled = true
tracks/18/path = NodePath("Skeleton/Skeleton3D:Wrist_L")
tracks/18/interp = 1
tracks/18/loop_wrap = true
tracks/18/keys = PackedFloat32Array(0, 1, 5.1721e-09, 1.73886e-07, -0.0182467, 0.999834)
tracks/19/type = "rotation_3d"
tracks/19/imported = true
tracks/19/enabled = true
tracks/19/path = NodePath("Skeleton/Skeleton3D:Wrist_R")
tracks/19/interp = 1
tracks/19/loop_wrap = true
tracks/19/keys = PackedFloat32Array(0, 1, 5.1721e-09, -1.73886e-07, 0.0182467, 0.999834)
[sub_resource type="Animation" id="Animation_sxqf4"]
resource_name = "walk_forward_loop"
length = 0.833333
loop_mode = 1
tracks/0/type = "position_3d"
tracks/0/imported = true
tracks/0/enabled = true
tracks/0/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = PackedFloat32Array(0, 1, 0.0827106, -0.771447, -0.0961044, 0.0333333, 1, 0.0827106, -0.771447, -0.0961044, 0.0666667, 1, 0.0827106, -0.750709, -0.146422, 0.1, 1, 0.0827106, -0.720133, -0.209671, 0.133333, 1, 0.0827106, -0.687641, -0.264841, 0.166667, 1, 0.0827106, -0.65818, -0.307292, 0.2, 1, 0.0827106, -0.642659, -0.323504, 0.233333, 1, 0.0827106, -0.635574, -0.315398, 0.266667, 1, 0.0827106, -0.632142, -0.286067, 0.3, 1, 0.0827106, -0.629866, -0.239376, 0.333333, 1, 0.0827106, -0.628535, -0.179967, 0.366667, 1, 0.0827106, -0.628045, -0.112877, 0.4, 1, 0.0827106, -0.62787, -0.0469865, 0.433333, 1, 0.0827106, -0.634491, 0.0137901, 0.466667, 1, 0.0827106, -0.652411, 0.0669891, 0.5, 1, 0.0827106, -0.684155, 0.111597, 0.533333, 1, 0.0827106, -0.722043, 0.144173, 0.566667, 1, 0.0827106, -0.755323, 0.167294, 0.6, 1, 0.0827106, -0.777851, 0.180671, 0.633333, 1, 0.0827106, -0.787832, 0.184063, 0.666667, 1, 0.0827106, -0.787822, 0.177278, 0.7, 1, 0.0827106, -0.787755, 0.15731, 0.733333, 1, 0.0827106, -0.7876, 0.127885, 0.766667, 1, 0.0827106, -0.787329, 0.089293, 0.8, 1, 0.0827106, -0.786912, 0.0418215, 0.833333, 1, 0.0827106, -0.786322, -0.0142412)
tracks/1/type = "rotation_3d"
tracks/1/imported = true
tracks/1/enabled = true
tracks/1/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = PackedFloat32Array(0, 1, -0.707107, 0, 0, 0.707107, 0.4, 1, -0.707107, 0, 0, 0.707107, 0.433333, 1, -0.705594, 0, 0, 0.708617, 0.466667, 1, -0.701504, 0, 0, 0.712665, 0.5, 1, -0.694203, 0, 0, 0.719779, 0.533333, 1, -0.6854, 0, 0, 0.728167, 0.566667, 1, -0.677589, 0, 0, 0.735441, 0.6, 1, -0.67226, 0, 0, 0.740315, 0.633333, 1, -0.67068, 0, 0, 0.741747, 0.666667, 1, -0.673837, 0, 0, 0.73888, 0.7, 1, -0.681323, 0, 0, 0.731983, 0.733333, 1, -0.689815, 0, 0, 0.723986, 0.766667, 1, -0.697863, 0, 0, 0.716231, 0.8, 1, -0.704077, 0, 0, 0.710123, 0.833333, 1, -0.707107, 0, 0, 0.707107)
tracks/2/type = "position_3d"
tracks/2/imported = true
tracks/2/enabled = true
tracks/2/path = NodePath("Skeleton/Skeleton3D:Root")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = PackedFloat32Array(0, 1, 0, 0.198133, 0.0026, 0.0333333, 1, 0, 0.198133, 0.0026, 0.0666667, 1, 0, 0.195461, 0.00632, 0.1, 1, 0, 0.191555, 0.01176, 0.133333, 1, 0, 0.187476, 0.01744, 0.166667, 1, 0, 0.183914, 0.0224, 0.2, 1, 0, 0.18242, 0.02448, 0.233333, 1, 0, 0.183167, 0.02344, 0.266667, 1, 0, 0.185695, 0.01992, 0.3, 1, 0, 0.189429, 0.01472, 0.333333, 1, 0, 0.19368, 0.0088, 0.366667, 1, 0, 0.197242, 0.00384, 0.4, 1, 0, 0.199253, 0.00104, 0.433333, 1, 0, 0.199253, 0.00104, 0.466667, 1, 0, 0.197242, 0.00384, 0.5, 1, 0, 0.19368, 0.0088, 0.533333, 1, 0, 0.189429, 0.01472, 0.566667, 1, 0, 0.185695, 0.01992, 0.6, 1, 0, 0.183167, 0.02344, 0.633333, 1, 0, 0.18242, 0.02448, 0.666667, 1, 0, 0.183914, 0.0224, 0.7, 1, 0, 0.187476, 0.01744, 0.733333, 1, 0, 0.191555, 0.01176, 0.766667, 1, 0, 0.195461, 0.00632001, 0.8, 1, 0, 0.198506, 0.00208, 0.833333, 1, 0, 0.2, 0)
tracks/3/type = "rotation_3d"
tracks/3/imported = true
tracks/3/enabled = true
tracks/3/path = NodePath("Skeleton/Skeleton3D:LowerBody")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = PackedFloat32Array(0, 1, -0.00136668, -0.780999, -0.624529, 0.00137726, 0.0333333, 1, -0.00136668, -0.780999, -0.624529, 0.00137726, 0.0666667, 1, -0.0034167, -0.783432, -0.621459, 0.00344323, 0.1, 1, -0.00655974, -0.787125, -0.616723, 0.00661074, 0.166667, 1, -0.0136625, -0.79531, -0.605892, 0.0137688, 0.2, 1, -0.0163919, -0.798396, -0.601683, 0.0165194, 0.233333, 1, -0.0178925, -0.800079, -0.599357, 0.0180317, 0.266667, 1, -0.0177548, -0.799389, -0.600287, 0.0178546, 0.3, 1, -0.0158527, -0.79599, -0.604894, 0.0158483, 0.333333, 1, -0.0123435, -0.79017, -0.612642, 0.0121841, 0.366667, 1, -0.00758341, -0.784268, -0.620332, 0.00736139, 0.4, 1, -0.00255733, -0.780741, -0.624845, 0.00246223, 0.433333, 1, -0.0023248, 0.780018, 0.62575, 0.0021079, 0.466667, 1, -0.0067937, 0.781783, 0.623484, 0.00612273, 0.5, 1, -0.0107203, 0.78498, 0.619355, 0.0095348, 0.533333, 1, -0.0138687, 0.789114, 0.61397, 0.0121592, 0.566667, 1, -0.0163919, 0.793211, 0.60856, 0.0142049, 0.6, 1, -0.018263, 0.796808, 0.603753, 0.0156803, 0.633333, 1, -0.0194554, 0.799449, 0.60019, 0.0165945, 0.666667, 1, -0.0199429, 0.800688, 0.59851, 0.0169566, 0.7, 1, -0.0174531, 0.798108, 0.602079, 0.0148396, 0.733333, 1, -0.0127188, 0.793138, 0.608813, 0.0108142, 0.766667, 1, -0.00723359, 0.787274, 0.61653, 0.00615043, 0.8, 1, -0.00249447, 0.782117, 0.623124, 0.00212098, 0.833333, 1, 2.73881e-08, 0.779368, 0.626567, 3.40672e-08)
tracks/4/type = "rotation_3d"
tracks/4/imported = true
tracks/4/enabled = true
tracks/4/path = NodePath("Skeleton/Skeleton3D:Head")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = PackedFloat32Array(0, 1, 2.95273e-08, 0.737277, 0.67559, 3.22433e-08)
tracks/5/type = "rotation_3d"
tracks/5/imported = true
tracks/5/enabled = true
tracks/5/path = NodePath("Skeleton/Skeleton3D:UpperArm_L")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = PackedFloat32Array(0, 1, 0.00880405, 0.0867372, -0.980932, 0.1737, 0.0333333, 1, 0.00880405, 0.0867372, -0.980932, 0.1737, 0.0666667, 1, 0.00547913, 0.0620256, -0.982764, 0.174059, 0.1, 1, 0.00144439, 0.0320206, -0.984162, 0.174349, 0.133333, 1, -0.00189225, 0.00719232, -0.984635, 0.174468, 0.166667, 1, -0.00434009, -0.0110308, -0.984589, 0.174485, 0.2, 1, -0.00523763, -0.0177144, -0.984488, 0.174476, 0.233333, 1, -0.00478889, -0.0143727, -0.984544, 0.174482, 0.266667, 1, -0.00311629, -0.0019193, -0.984653, 0.174484, 0.3, 1, -0.00037197, 0.0185065, -0.984496, 0.174427, 0.333333, 1, 0.00326049, 0.0455287, -0.983645, 0.174239, 0.366667, 1, 0.00769625, 0.0785053, -0.981611, 0.173832, 0.4, 1, 0.01243, 0.113671, -0.978229, 0.173183, 0.433333, 1, 0.0172497, 0.149447, -0.97349, 0.172294, 0.466667, 1, 0.0219453, 0.184274, -0.967601, 0.171201, 0.5, 1, 0.0263113, 0.216633, -0.960981, 0.169983, 0.533333, 1, 0.0298622, 0.242932, -0.954769, 0.168845, 0.566667, 1, 0.0325304, 0.262683, -0.949604, 0.167903, 0.6, 1, 0.0341504, 0.27467, -0.946257, 0.167293, 0.633333, 1, 0.0345843, 0.27788, -0.945334, 0.167125, 0.666667, 1, 0.0337162, 0.271457, -0.94717, 0.167459, 0.7, 1, 0.0313419, 0.253886, -0.951958, 0.168332, 0.733333, 1, 0.0280894, 0.229804, -0.957964, 0.16943, 0.766667, 1, 0.0241316, 0.200481, -0.964425, 0.170616, 0.8, 1, 0.0196513, 0.167263, -0.970636, 0.171763, 0.833333, 1, 0.0148423, 0.131581, -0.976021, 0.172767)
tracks/6/type = "rotation_3d"
tracks/6/imported = true
tracks/6/enabled = true
tracks/6/path = NodePath("Skeleton/Skeleton3D:LowerArm_L")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = PackedFloat32Array(0, 1, 0.529851, -0.115163, -0.060041, 0.838087, 0.0333333, 1, 0.529851, -0.115163, -0.060041, 0.838087, 0.0666667, 1, 0.553414, -0.11806, -0.0633626, 0.822059, 0.1, 1, 0.58133, -0.121435, -0.0673143, 0.801734, 0.133333, 1, 0.603839, -0.124111, -0.0705144, 0.784221, 0.166667, 1, 0.620009, -0.126005, -0.0728214, 0.770979, 0.2, 1, 0.625863, -0.126684, -0.0736583, 0.766043, 0.233333, 1, 0.622941, -0.126345, -0.0732404, 0.768517, 0.266667, 1, 0.611958, -0.125065, -0.0716719, 0.777644, 0.3, 1, 0.593649, -0.122905, -0.0690641, 0.792279, 0.333333, 1, 0.568867, -0.119936, -0.0655479, 0.810993, 0.366667, 1, 0.537755, -0.116139, -0.0611539, 0.832821, 0.4, 1, 0.503574, -0.111885, -0.0563506, 0.854821, 0.433333, 1, 0.467763, -0.107342, -0.0513435, 0.875808, 0.466667, 1, 0.431919, -0.102713, -0.0463558, 0.894845, 0.5, 1, 0.39777, -0.0982309, -0.041625, 0.911261, 0.533333, 1, 0.369448, -0.0944631, -0.0377163, 0.923668, 0.566667, 1, 0.34784, -0.0915589, -0.0347428, 0.932425, 0.6, 1, 0.334584, -0.0897649, -0.0329223, 0.937503, 0.633333, 1, 0.331019, -0.0892808, -0.0324331, 0.938831, 0.666667, 1, 0.338145, -0.0902477, -0.033411, 0.936161, 0.7, 1, 0.357496, -0.0928598, -0.0360707, 0.928586, 0.733333, 1, 0.383656, -0.0963588, -0.0396755, 0.917578, 0.766667, 1, 0.414921, -0.100491, -0.0439985, 0.90322, 0.8, 1, 0.449543, -0.104999, -0.0488053, 0.885722, 0.833333, 1, 0.485776, -0.109638, -0.0538589, 0.865506)
tracks/7/type = "rotation_3d"
tracks/7/imported = true
tracks/7/enabled = true
tracks/7/path = NodePath("Skeleton/Skeleton3D:UpperArm_R")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = PackedFloat32Array(0, 1, 0.0412557, -0.172532, 0.968957, 0.172199, 0.0333333, 1, 0.0412557, -0.172532, 0.968957, 0.172199, 0.0666667, 1, 0.0465576, -0.196503, 0.964282, 0.171406, 0.1, 1, 0.0529451, -0.225393, 0.957806, 0.170301, 0.133333, 1, 0.0581891, -0.249122, 0.951788, 0.16927, 0.166667, 1, 0.0620142, -0.266435, 0.946992, 0.168445, 0.2, 1, 0.063412, -0.272763, 0.945152, 0.168128, 0.233333, 1, 0.0627134, -0.269601, 0.946077, 0.168288, 0.266667, 1, 0.0601042, -0.257789, 0.94943, 0.168865, 0.3, 1, 0.0558041, -0.238329, 0.954604, 0.169753, 0.333333, 1, 0.0500763, -0.212416, 0.960829, 0.170818, 0.366667, 1, 0.043026, -0.180535, 0.967466, 0.171947, 0.4, 1, 0.0354342, -0.146222, 0.973373, 0.172942, 0.433333, 1, 0.0276319, -0.110976, 0.97813, 0.173732, 0.466667, 1, 0.0199591, -0.0763331, 0.98153, 0.174283, 0.5, 1, 0.0127607, -0.0438476, 0.98358, 0.174597, 0.533333, 1, 0.00685963, -0.0172285, 0.984445, 0.17471, 0.566667, 1, 0.00239777, 0.00289199, 0.984613, 0.174709, 0.6, 1, -0.00032318, 0.015159, 0.98451, 0.174672, 0.633333, 1, -0.00105342, 0.0184507, 0.984456, 0.174657, 0.666667, 1, 0.000407011, 0.0118671, 0.984553, 0.174684, 0.7, 1, 0.00438828, -0.00608341, 0.98459, 0.174718, 0.733333, 1, 0.00981108, -0.0305409, 0.984105, 0.17467, 0.766667, 1, 0.0163622, -0.0600987, 0.982692, 0.174464, 0.8, 1, 0.0237164, -0.0932951, 0.980022, 0.174041, 0.833333, 1, 0.0315383, -0.12862, 0.975913, 0.173366)
tracks/8/type = "rotation_3d"
tracks/8/imported = true
tracks/8/enabled = true
tracks/8/path = NodePath("Skeleton/Skeleton3D:LowerArm_R")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = PackedFloat32Array(0, 1, 0.441833, 0.106456, 0.0701362, 0.887993, 0.0333333, 1, 0.441833, 0.106456, 0.0701362, 0.887993, 0.0666667, 1, 0.417425, 0.098537, 0.0721834, 0.900465, 0.1, 1, 0.387409, 0.0888392, 0.0745835, 0.914582, 0.133333, 1, 0.36228, 0.0807531, 0.0764974, 0.925408, 0.166667, 1, 0.343682, 0.0747872, 0.07786, 0.93286, 0.2, 1, 0.336831, 0.0725934, 0.0783505, 0.935487, 0.233333, 1, 0.340259, 0.0736908, 0.0781058, 0.93418, 0.266667, 1, 0.353, 0.0777744, 0.0771829, 0.929185, 0.3, 1, 0.373762, 0.0844443, 0.0756335, 0.920571, 0.333333, 1, 0.400961, 0.0932125, 0.0735155, 0.90837, 0.366667, 1, 0.433736, 0.103826, 0.070825, 0.892232, 0.4, 1, 0.468115, 0.115017, 0.0678314, 0.873521, 0.433333, 1, 0.502441, 0.126256, 0.0646554, 0.852896, 0.466667, 1, 0.535185, 0.137041, 0.0614386, 0.831277, 0.5, 1, 0.564973, 0.146912, 0.0583404, 0.809826, 0.533333, 1, 0.588691, 0.154815, 0.0557473, 0.791434, 0.566667, 1, 0.606209, 0.160678, 0.0537549, 0.777048, 0.6, 1, 0.616714, 0.164206, 0.0525269, 0.768076, 0.633333, 1, 0.619509, 0.165146, 0.0521958, 0.765644, 0.666667, 1, 0.61391, 0.163263, 0.0528572, 0.770497, 0.7, 1, 0.598441, 0.158075, 0.0546468, 0.783514, 0.733333, 1, 0.576902, 0.150882, 0.0570508, 0.800727, 0.766667, 1, 0.550179, 0.142003, 0.0599004, 0.820701, 0.8, 1, 0.519279, 0.131794, 0.0630249, 0.842026, 0.833333, 1, 0.485384, 0.120663, 0.0662578, 0.863396)
tracks/9/type = "rotation_3d"
tracks/9/imported = true
tracks/9/enabled = true
tracks/9/path = NodePath("Skeleton/Skeleton3D:UpperLeg_L")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = PackedFloat32Array(0, 1, 0.0129028, -0.721115, 0.692557, 0.0138365, 0.0333333, 1, 0.0129028, -0.721115, 0.692557, 0.0138365, 0.0666667, 1, 0.0142015, -0.72023, 0.693404, 0.0160578, 0.1, 1, 0.0156216, -0.713279, 0.700458, 0.0186776, 0.133333, 1, 0.0166114, -0.699811, 0.713834, 0.0207589, 0.166667, 1, 0.0172499, -0.684336, 0.728623, 0.0222561, 0.2, 1, 0.0175631, -0.679336, 0.733253, 0.0231241, 0.233333, 1, 0.0178651, -0.693824, 0.719513, 0.0242904, 0.266667, 1, 0.0182471, -0.725512, 0.68748, 0.025884, 0.3, 1, 0.0186942, -0.768353, 0.639154, 0.0277006, 0.333333, 1, 0.0191205, -0.813878, 0.579983, 0.0292514, 0.366667, 1, 0.0194192, -0.854121, 0.518842, 0.0300689, 0.4, 1, 0.0195375, -0.885518, 0.4632, 0.0303582, 0.433333, 1, 0.0193619, -0.905164, 0.423575, 0.0297816, 0.466667, 1, 0.0188099, -0.912369, 0.407967, 0.0281469, 0.5, 1, 0.0177856, -0.906551, 0.420959, 0.0253356, 0.533333, 1, 0.0161493, -0.887014, 0.460948, 0.0217339, 0.6, 1, 0.0120373, -0.826617, 0.562447, 0.0145644, 0.633333, 1, 0.0105886, -0.802209, 0.596821, 0.0124031, 0.666667, 1, 0.0104339, -0.797694, 0.602849, 0.0121837, 0.7, 1, 0.0101918, -0.78709, 0.616642, 0.0117735, 0.733333, 1, 0.0101197, -0.775077, 0.631682, 0.0114908, 0.766667, 1, 0.0102521, -0.761766, 0.647672, 0.011372, 0.8, 1, 0.0105166, -0.745089, 0.666787, 0.0112932, 0.833333, 1, 0.0107293, -0.72044, 0.693348, 0.0109651)
tracks/10/type = "rotation_3d"
tracks/10/imported = true
tracks/10/enabled = true
tracks/10/path = NodePath("Skeleton/Skeleton3D:LowerLeg_L")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = PackedFloat32Array(0, 1, 0.168233, 0.00251272, 0.0102721, 0.985691, 0.0333333, 1, 0.168233, 0.00251272, 0.0102721, 0.985691, 0.0666667, 1, 0.235563, 0.00247718, 0.0143832, 0.97175, 0.1, 1, 0.308255, 0.00242458, 0.0188217, 0.951114, 0.133333, 1, 0.358136, 0.00237945, 0.0218674, 0.93341, 0.166667, 1, 0.389044, 0.00234758, 0.0237546, 0.92091, 0.2, 1, 0.406343, 0.00232839, 0.0248109, 0.913381, 0.233333, 1, 0.433984, 0.00229563, 0.0264986, 0.900528, 0.266667, 1, 0.473791, 0.0022437, 0.0289292, 0.880159, 0.3, 1, 0.52048, 0.00217518, 0.03178, 0.85328, 0.333333, 1, 0.562682, 0.00210553, 0.0343568, 0.825956, 0.366667, 1, 0.588663, 0.00205868, 0.0359432, 0.807577, 0.4, 1, 0.602313, 0.00203277, 0.0367766, 0.79741, 0.433333, 1, 0.59612, 0.00204464, 0.0363985, 0.802068, 0.466667, 1, 0.563681, 0.00210379, 0.0344178, 0.825273, 0.5, 1, 0.49873, 0.00220817, 0.030452, 0.866219, 0.533333, 1, 0.400778, 0.00233467, 0.0244711, 0.915845, 0.566667, 1, 0.2825, 0.00244496, 0.0172492, 0.959109, 0.6, 1, 0.168288, 0.00251269, 0.0102755, 0.985681, 0.633333, 1, 0.0894929, 0.00253892, 0.00546434, 0.995969, 0.666667, 1, 0.0813331, 0.00254071, 0.00496611, 0.996671, 0.7, 1, 0.0673375, 0.00254338, 0.00411156, 0.997719, 0.733333, 1, 0.0602929, 0.00254453, 0.00368142, 0.998171, 0.766667, 1, 0.0615141, 0.00254434, 0.00375599, 0.998096, 0.8, 1, 0.066185, 0.00254358, 0.00404119, 0.997796, 0.833333, 1, 0.0633703, 0.00254404, 0.00386933, 0.997979)
tracks/11/type = "rotation_3d"
tracks/11/imported = true
tracks/11/enabled = true
tracks/11/path = NodePath("Skeleton/Skeleton3D:Foot_L")
tracks/11/interp = 1
tracks/11/loop_wrap = true
tracks/11/keys = PackedFloat32Array(0, 1, 0.000979768, 0.692411, -0.721249, 0.0191423, 0.4, 1, 0.000979767, 0.692411, -0.721249, 0.0191423, 0.433333, 1, 0.000938846, 0.693951, -0.719767, 0.0191443, 0.466667, 1, 0.000828662, 0.698082, -0.715761, 0.0191494, 0.5, 1, 0.000633428, 0.705342, -0.708609, 0.0191568, 0.533333, 1, 0.000400446, 0.713906, -0.69998, 0.0191631, 0.566667, 1, 0.000195882, 0.721336, -0.69232, 0.0191663, 0.6, 1, 5.74609e-05, 0.726317, -0.687092, 0.0191672, 0.633333, 1, 1.65859e-05, 0.727781, -0.685542, 0.0191673, 0.666667, 1, 9.83365e-05, 0.72485, -0.68864, 0.0191671, 0.7, 1, 0.000293423, 0.717804, -0.695982, 0.0191651, 0.733333, 1, 0.000516947, 0.709637, -0.704307, 0.0191603, 0.766667, 1, 0.000731054, 0.701721, -0.712194, 0.0191534, 0.8, 1, 0.000897922, 0.695488, -0.718282, 0.0191463, 0.833333, 1, 0.000979768, 0.692411, -0.721249, 0.0191423)
tracks/12/type = "rotation_3d"
tracks/12/imported = true
tracks/12/enabled = true
tracks/12/path = NodePath("Skeleton/Skeleton3D:UpperLeg_R")
tracks/12/interp = 1
tracks/12/loop_wrap = true
tracks/12/keys = PackedFloat32Array(0, 1, 0.0190654, 0.913793, -0.404705, 0.0288488, 0.0333333, 1, 0.0190654, 0.913793, -0.404705, 0.0288488, 0.0666667, 1, 0.0182983, 0.909484, -0.414474, 0.0267419, 0.1, 1, 0.0169717, 0.897007, -0.441064, 0.0235406, 0.133333, 1, 0.015189, 0.874208, -0.484907, 0.0198621, 0.166667, 1, 0.0129666, 0.841396, -0.540028, 0.0159559, 0.2, 1, 0.0110992, 0.81124, -0.58446, 0.0131625, 0.233333, 1, 0.0105113, 0.799957, -0.599839, 0.0122935, 0.266667, 1, 0.0103132, 0.792422, -0.609769, 0.011979, 0.3, 1, 0.0101273, 0.781312, -0.62395, 0.0116108, 0.333333, 1, 0.0101111, 0.768764, -0.639351, 0.0113696, 0.366667, 1, 0.0103918, 0.754677, -0.655916, 0.011373, 0.4, 1, 0.0106247, 0.732885, -0.680179, 0.011131, 0.433333, 1, 0.0115987, 0.720711, -0.693033, 0.0121137, 0.466667, 1, 0.0133357, 0.720821, -0.69284, 0.0145769, 0.5, 1, 0.0150673, 0.719636, -0.693966, 0.0175387, 0.533333, 1, 0.0161746, 0.70686, -0.70689, 0.019815, 0.566667, 1, 0.0169317, 0.692113, -0.72127, 0.0215087, 0.6, 1, 0.0174066, 0.68184, -0.730942, 0.0226902, 0.633333, 1, 0.0177168, 0.683364, -0.729479, 0.0236586, 0.666667, 1, 0.0180097, 0.704138, -0.709397, 0.0249171, 0.7, 1, 0.0184675, 0.746206, -0.664918, 0.0268266, 0.733333, 1, 0.0189205, 0.791668, -0.609994, 0.0284959, 0.766667, 1, 0.0192827, 0.834559, -0.549781, 0.02968, 0.8, 1, 0.0195021, 0.871024, -0.489918, 0.0302919, 0.833333, 1, 0.0195549, 0.899194, -0.436054, 0.0303964)
tracks/13/type = "rotation_3d"
tracks/13/imported = true
tracks/13/enabled = true
tracks/13/path = NodePath("Skeleton/Skeleton3D:LowerLeg_R")
tracks/13/interp = 1
tracks/13/loop_wrap = true
tracks/13/keys = PackedFloat32Array(0, 1, 0.579412, -0.00207573, -0.0353783, 0.814264, 0.0333333, 1, 0.579412, -0.00207573, -0.0353783, 0.814264, 0.0666667, 1, 0.531598, -0.00215757, -0.0324589, 0.846372, 0.1, 1, 0.450436, -0.00227486, -0.0275031, 0.892382, 0.133333, 1, 0.344852, -0.00239221, -0.0210563, 0.938418, 0.166667, 1, 0.218925, -0.00248712, -0.0133673, 0.975647, 0.2, 1, 0.117201, -0.00253155, -0.00715619, 0.993079, 0.233333, 1, 0.0854136, -0.00253984, -0.00521527, 0.996329, 0.266667, 1, 0.0743371, -0.00254211, -0.00453895, 0.99722, 0.3, 1, 0.0626553, -0.00254416, -0.00382567, 0.998025, 0.333333, 1, 0.05793, -0.00254489, -0.00353715, 0.998311, 0.366667, 1, 0.0650973, -0.00254376, -0.00397478, 0.997868, 0.4, 1, 0.0647778, -0.00254381, -0.00395526, 0.997889, 0.433333, 1, 0.105466, -0.00253492, -0.00643968, 0.994399, 0.466667, 1, 0.190781, -0.00250219, -0.0116489, 0.98156, 0.5, 1, 0.279848, -0.00244695, -0.0170872, 0.959889, 0.533333, 1, 0.336389, -0.00240006, -0.0205396, 0.941496, 0.566667, 1, 0.373642, -0.00236385, -0.0228142, 0.927289, 0.6, 1, 0.397711, -0.00233809, -0.0242838, 0.917186, 0.633333, 1, 0.418456, -0.00231435, -0.0255505, 0.907875, 0.666667, 1, 0.449384, -0.00227622, -0.0274389, 0.892914, 0.7, 1, 0.497837, -0.00220948, -0.0303974, 0.866735, 0.733333, 1, 0.541753, -0.00214103, -0.0330789, 0.839884, 0.766667, 1, 0.575746, -0.00208237, -0.0351544, 0.81687, 0.8, 1, 0.597487, -0.00204203, -0.0364819, 0.801046, 0.833333, 1, 0.607117, -0.00202343, -0.0370699, 0.793745)
tracks/14/type = "rotation_3d"
tracks/14/imported = true
tracks/14/enabled = true
tracks/14/path = NodePath("Skeleton/Skeleton3D:Foot_R")
tracks/14/interp = 1
tracks/14/loop_wrap = true
tracks/14/keys = PackedFloat32Array(0, 1, 0.000877458, -0.696256, 0.717538, 0.0191472, 0.0333333, 1, 0.000877458, -0.696256, 0.717538, 0.0191472, 0.0666667, 1, 0.000731054, -0.701721, 0.712194, 0.0191534, 0.1, 1, 0.000516947, -0.709637, 0.704307, 0.0191603, 0.133333, 1, 0.000293423, -0.717804, 0.695982, 0.0191651, 0.166667, 1, 9.83371e-05, -0.72485, 0.68864, 0.0191671, 0.2, 1, 1.65871e-05, -0.727781, 0.685542, 0.0191673, 0.233333, 1, 5.74626e-05, -0.726317, 0.687092, 0.0191672, 0.266667, 1, 0.000195883, -0.721336, 0.69232, 0.0191663, 0.3, 1, 0.000400446, -0.713906, 0.69998, 0.0191631, 0.333333, 1, 0.000633427, -0.705342, 0.708609, 0.0191568, 0.366667, 1, 0.000828662, -0.698082, 0.715761, 0.0191494, 0.4, 1, 0.000938847, -0.693951, 0.719767, 0.0191443, 0.433333, 1, 0.000979768, -0.692411, 0.721249, 0.0191423, 0.833333, 1, 0.000979767, -0.692411, 0.721249, 0.0191423)
tracks/15/type = "position_3d"
tracks/15/imported = true
tracks/15/enabled = true
tracks/15/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/15/interp = 1
tracks/15/loop_wrap = true
tracks/15/keys = PackedFloat32Array(0, 1, -0.0827106, -0.644475, 0.0558371, 0.0333333, 1, -0.0827106, -0.644475, 0.0558371, 0.0666667, 1, -0.0827106, -0.668283, 0.089293, 0.1, 1, -0.0827106, -0.703099, 0.127885, 0.133333, 1, -0.0827106, -0.739451, 0.15731, 0.166667, 1, -0.0827106, -0.771195, 0.177278, 0.2, 1, -0.0827106, -0.784506, 0.184063, 0.233333, 1, -0.0827106, -0.787827, 0.180671, 0.266667, 1, -0.0827106, -0.787789, 0.167294, 0.3, 1, -0.0827106, -0.787692, 0.144173, 0.333333, 1, -0.0827106, -0.787508, 0.111597, 0.366667, 1, -0.0827106, -0.787149, 0.0669891, 0.4, 1, -0.0827106, -0.786617, 0.0137901, 0.433333, 1, -0.0827106, -0.780372, -0.0469865, 0.466667, 1, -0.0827106, -0.764534, -0.112877, 0.5, 1, -0.0827106, -0.736885, -0.179967, 0.533333, 1, -0.0827106, -0.703381, -0.239376, 0.566667, 1, -0.0827106, -0.67291, -0.286067, 0.6, 1, -0.0827106, -0.65042, -0.315398, 0.633333, 1, -0.0827106, -0.63771, -0.323504, 0.666667, 1, -0.0827106, -0.633438, -0.307292, 0.7, 1, -0.0827106, -0.630846, -0.264841, 0.733333, 1, -0.0827106, -0.6292, -0.209671, 0.766667, 1, -0.0827106, -0.62829, -0.146422, 0.8, 1, -0.0827106, -0.627905, -0.0797318, 0.833333, 1, -0.0827106, -0.627835, -0.0142412)
tracks/16/type = "rotation_3d"
tracks/16/imported = true
tracks/16/enabled = true
tracks/16/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/16/interp = 1
tracks/16/loop_wrap = true
tracks/16/keys = PackedFloat32Array(0, 1, -0.703318, 0, 0, 0.710875, 0.0333333, 1, -0.703318, 0, 0, 0.710875, 0.0666667, 1, -0.697863, 0, 0, 0.716231, 0.1, 1, -0.689815, 0, 0, 0.723986, 0.133333, 1, -0.681323, 0, 0, 0.731983, 0.166667, 1, -0.673837, 0, 0, 0.73888, 0.2, 1, -0.67068, 6.44586e-18, -6.44586e-18, 0.741747, 0.233333, 1, -0.67226, 8.0586e-18, -8.0586e-18, 0.740315, 0.266667, 1, -0.677589, 8.06119e-18, -8.06119e-18, 0.735441, 0.3, 1, -0.6854, 8.06425e-18, -8.06425e-18, 0.728167, 0.333333, 1, -0.694203, 8.06662e-18, -8.06662e-18, 0.719779, 0.366667, 1, -0.701504, 8.06769e-18, -8.06769e-18, 0.712665, 0.4, 1, -0.705594, 3.22714e-18, -3.22714e-18, 0.708617, 0.433333, 1, -0.707107, 0, 0, 0.707107, 0.833333, 1, -0.707107, 0, 0, 0.707107)
tracks/17/type = "rotation_3d"
tracks/17/imported = true
tracks/17/enabled = true
tracks/17/path = NodePath("Skeleton/Skeleton3D:UpperBody")
tracks/17/interp = 1
tracks/17/loop_wrap = true
tracks/17/keys = PackedFloat32Array(0, 1, -0.0619498, 4.36274e-08, 2.70791e-09, 0.998079)
tracks/18/type = "rotation_3d"
tracks/18/imported = true
tracks/18/enabled = true
tracks/18/path = NodePath("Skeleton/Skeleton3D:Wrist_L")
tracks/18/interp = 1
tracks/18/loop_wrap = true
tracks/18/keys = PackedFloat32Array(0, 1, 5.1721e-09, 1.73886e-07, -0.0182467, 0.999834)
tracks/19/type = "rotation_3d"
tracks/19/imported = true
tracks/19/enabled = true
tracks/19/path = NodePath("Skeleton/Skeleton3D:Wrist_R")
tracks/19/interp = 1
tracks/19/loop_wrap = true
tracks/19/keys = PackedFloat32Array(0, 1, 5.1721e-09, -1.73886e-07, 0.0182467, 0.999834)
[sub_resource type="Animation" id="Animation_7sfwo"]
resource_name = "walk_left_loop"
length = 0.833333
loop_mode = 1
tracks/0/type = "position_3d"
tracks/0/imported = true
tracks/0/enabled = true
tracks/0/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = PackedFloat32Array(0, 1, 0.156718, -0.787835, -0.0142412, 0.0333333, 1, 0.156718, -0.787835, -0.0142412, 0.0666667, 1, 0.140673, -0.787835, -0.0142412, 0.1, 1, 0.120475, -0.787835, -0.0142412, 0.133333, 1, 0.102821, -0.787835, -0.0142412, 0.166667, 1, 0.089215, -0.787835, -0.0142412, 0.2, 1, 0.0840115, -0.787835, -0.0142412, 0.233333, 1, 0.0854801, -0.780949, -0.0142412, 0.266667, 1, 0.0923282, -0.765413, -0.0142412, 0.3, 1, 0.103507, -0.742462, -0.0142412, 0.333333, 1, 0.118209, -0.716333, -0.0142412, 0.366667, 1, 0.136, -0.694441, -0.0142412, 0.4, 1, 0.154897, -0.682082, -0.0142412, 0.433333, 1, 0.174104, -0.681757, -0.0142412, 0.466667, 1, 0.192843, -0.693271, -0.0142412, 0.5, 1, 0.210352, -0.713734, -0.0142412, 0.533333, 1, 0.22472, -0.738433, -0.0142412, 0.566667, 1, 0.235604, -0.76054, -0.0142412, 0.6, 1, 0.242253, -0.776206, -0.0142412, 0.633333, 1, 0.244418, -0.78417, -0.0142412, 0.666667, 1, 0.242354, -0.785755, -0.0142412, 0.7, 1, 0.236234, -0.786717, -0.0142412, 0.733333, 1, 0.227153, -0.787328, -0.0142412, 0.766667, 1, 0.215166, -0.787666, -0.0142412, 0.8, 1, 0.200326, -0.787809, -0.0142412, 0.833333, 1, 0.182689, -0.787835, -0.0142412)
tracks/1/type = "rotation_3d"
tracks/1/imported = true
tracks/1/enabled = true
tracks/1/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = PackedFloat32Array(0, 1, -0.768039, 0.0453714, -0.0402253, 0.637526, 0.0333333, 1, -0.768039, 0.0453714, -0.0402253, 0.637526, 0.0666667, 1, -0.762643, 0.0358518, -0.032074, 0.645028, 0.1, 1, -0.755572, 0.0236513, -0.0214283, 0.654287, 0.133333, 1, -0.749122, 0.0127308, -0.0116608, 0.662207, 0.166667, 1, -0.743972, 0.00415784, -0.00384646, 0.668186, 0.2, 1, -0.741959, 0.000831574, -0.000769297, 0.670444, 0.233333, 1, -0.743927, 7.82128e-18, -7.82128e-18, 0.668261, 0.266667, 1, -0.749632, 7.82127e-18, -7.82127e-18, 0.661855, 0.3, 1, -0.758239, 7.82069e-18, -7.82069e-18, 0.651976, 0.333333, 1, -0.768391, 7.81921e-18, -7.81921e-18, 0.63998, 0.366667, 1, -0.778146, 7.81847e-18, -7.81847e-18, 0.628083, 0.4, 1, -0.785809, 3.12728e-18, -3.12728e-18, 0.61847, 0.433333, 1, -0.791266, 0.00358395, -0.00265862, 0.611455, 0.466667, 1, -0.794757, 0.0132388, -0.0098207, 0.606704, 0.5, 1, -0.796745, 0.0303503, -0.0225142, 0.603134, 0.533333, 1, -0.797022, 0.0507615, -0.0376555, 0.600635, 0.566667, 1, -0.796411, 0.0686432, -0.0509204, 0.598687, 0.6, 1, -0.795595, 0.0807163, -0.0598764, 0.597435, 0.633333, 1, -0.794958, 0.0859188, -0.0638881, 0.597142, 0.666667, 1, -0.794343, 0.0853798, -0.0640977, 0.598015, 0.7, 1, -0.792531, 0.0834651, -0.0641302, 0.600679, 0.733333, 1, -0.789846, 0.0801823, -0.0633584, 0.604732, 0.766667, 1, -0.786281, 0.0753033, -0.0613327, 0.610188, 0.8, 1, -0.781811, 0.0685969, -0.0576009, 0.617048, 0.833333, 1, -0.776376, 0.0598283, -0.0517078, 0.62529)
tracks/2/type = "position_3d"
tracks/2/imported = true
tracks/2/enabled = true
tracks/2/path = NodePath("Skeleton/Skeleton3D:Root")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = PackedFloat32Array(0, 1, 0, 0.177795, 0, 0.0333333, 1, 0, 0.177795, 0, 0.0666667, 1, 0, 0.181746, 0, 0.1, 1, 0, 0.186549, 0, 0.133333, 1, 0, 0.19054, 0, 0.166667, 1, 0, 0.193484, 0, 0.2, 1, 0, 0.194568, 0, 0.266667, 1, 0, 0.193811, 0, 0.3, 1, 0, 0.19236, 0, 0.333333, 1, 0, 0.190119, 0, 0.366667, 1, 0, 0.186607, 0, 0.4, 1, 0, 0.181982, 0, 0.433333, 1, 0, 0.176249, 0, 0.466667, 1, 0, 0.16964, 0, 0.5, 1, 0, 0.162614, 0, 0.533333, 1, 0, 0.156178, 0, 0.566667, 1, 0, 0.151043, 0, 0.6, 1, 0, 0.147782, 0, 0.666667, 1, 0, 0.147772, 0, 0.7, 1, 0, 0.150716, 0, 0.733333, 1, 0, 0.154706, 0, 0.766667, 1, 0, 0.15951, 0, 0.8, 1, 0, 0.164894, 0, 0.833333, 1, 0, 0.170628, 0)
tracks/3/type = "rotation_3d"
tracks/3/imported = true
tracks/3/enabled = true
tracks/3/path = NodePath("Skeleton/Skeleton3D:LowerBody")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = PackedFloat32Array(0, 1, 0.00585234, -0.733724, -0.679421, 0.00149853, 0.0333333, 1, 0.00585234, -0.733724, -0.679421, 0.00149853, 0.0666667, 1, 0.0090791, -0.73367, -0.679442, 0.00232478, 0.1, 1, 0.0130018, -0.733584, -0.679466, 0.00332922, 0.133333, 1, 0.0162601, -0.733493, -0.67949, 0.00416355, 0.166667, 1, 0.0186642, -0.733413, -0.67951, 0.00477916, 0.233333, 1, 0.0191071, -0.733397, -0.679515, 0.00489256, 0.266667, 1, 0.0174622, -0.733454, -0.6795, 0.00447136, 0.3, 1, 0.0147733, -0.733537, -0.679479, 0.00378284, 0.333333, 1, 0.0112302, -0.733629, -0.679451, 0.0028756, 0.366667, 1, 0.00692794, -0.733707, -0.679429, 0.00177395, 0.4, 1, 0.00234093, -0.73375, -0.679415, 0.000599396, 0.433333, 1, 0.00234099, 0.73375, 0.679415, 0.000599461, 0.466667, 1, 0.006928, 0.733707, 0.679429, 0.00177401, 0.5, 1, 0.0112303, 0.733629, 0.679451, 0.00287566, 0.533333, 1, 0.0147734, 0.733537, 0.679479, 0.0037829, 0.566667, 1, 0.0174622, 0.733454, 0.6795, 0.00447142, 0.6, 1, 0.0191072, 0.733397, 0.679515, 0.00489262, 0.666667, 1, 0.0186643, 0.733413, 0.67951, 0.00477922, 0.7, 1, 0.0162601, 0.733493, 0.67949, 0.00416361, 0.733333, 1, 0.0130018, 0.733584, 0.679466, 0.00332929, 0.766667, 1, 0.00907917, 0.73367, 0.679442, 0.00232484, 0.8, 1, 0.00468194, 0.733734, 0.67942, 0.00119888, 0.833333, 1, 2.96978e-08, 0.733762, 0.679407, 3.20738e-08)
tracks/4/type = "rotation_3d"
tracks/4/imported = true
tracks/4/enabled = true
tracks/4/path = NodePath("Skeleton/Skeleton3D:UpperBody")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = PackedFloat32Array(0, 1, -0.0637058, 0.00669814, -9.98017e-05, 0.997946, 0.0333333, 1, -0.0637058, 0.00669814, -9.98017e-05, 0.997946, 0.0666667, 1, -0.0637038, 0.0103896, -0.000154807, 0.997915, 0.1, 1, -0.0637002, 0.0148758, -0.000221653, 0.997858, 0.133333, 1, -0.0636962, 0.0186, -0.000277145, 0.997796, 0.166667, 1, -0.0636927, 0.0213458, -0.000318058, 0.997741, 0.2, 1, -0.0636913, 0.0223551, -0.000333097, 0.997719, 0.233333, 1, -0.0636921, 0.0218465, -0.000325519, 0.99773, 0.266667, 1, -0.0636946, 0.0199649, -0.000297481, 0.99777, 0.3, 1, -0.0636982, 0.0168906, -0.000251673, 0.997826, 0.333333, 1, -0.063702, 0.0128402, -0.000191321, 0.997886, 0.366667, 1, -0.0637053, 0.00792141, -0.000118029, 0.997937, 0.4, 1, -0.063707, 0.00267671, -3.98809e-05, 0.997965, 0.433333, 1, -0.063707, -0.00267663, 3.98862e-05, 0.997965, 0.466667, 1, -0.0637053, -0.00792132, 0.000118034, 0.997937, 0.5, 1, -0.063702, -0.0128401, 0.000191326, 0.997886, 0.533333, 1, -0.0636982, -0.0168905, 0.000251679, 0.997826, 0.566667, 1, -0.0636946, -0.0199648, 0.000297486, 0.99777, 0.6, 1, -0.0636921, -0.0218465, 0.000325524, 0.99773, 0.633333, 1, -0.0636913, -0.022355, 0.000333103, 0.997719, 0.666667, 1, -0.0636927, -0.0213457, 0.000318063, 0.997741, 0.7, 1, -0.0636962, -0.0185999, 0.000277151, 0.997796, 0.733333, 1, -0.0637002, -0.0148757, 0.000221658, 0.997858, 0.766667, 1, -0.0637038, -0.0103896, 0.000154813, 0.997915, 0.8, 1, -0.0637064, -0.00535845, 7.98471e-05, 0.997954, 0.833333, 1, -0.0637073, 4.17616e-08, 2.90024e-09, 0.997969)
tracks/5/type = "rotation_3d"
tracks/5/imported = true
tracks/5/enabled = true
tracks/5/path = NodePath("Skeleton/Skeleton3D:Head")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = PackedFloat32Array(0, 1, -0.00850387, 0.706493, 0.707618, 0.00855493, 0.0333333, 1, -0.00850387, 0.706493, 0.707618, 0.00855493, 0.0666667, 1, -0.0131908, 0.70642, 0.707545, 0.01327, 0.1, 1, -0.0188866, 0.70629, 0.707415, 0.019, 0.133333, 1, -0.0236153, 0.706147, 0.707272, 0.023757, 0.166667, 1, -0.0271024, 0.706022, 0.707146, 0.027265, 0.2, 1, -0.0283866, 0.705971, 0.707095, 0.0285569, 0.233333, 1, -0.0277445, 0.705997, 0.707121, 0.027911, 0.266667, 1, -0.025359, 0.706087, 0.707211, 0.0255111, 0.3, 1, -0.0214579, 0.706217, 0.707341, 0.0215867, 0.333333, 1, -0.0163151, 0.706355, 0.70748, 0.016413, 0.366667, 1, -0.0100662, 0.706472, 0.707597, 0.0101267, 0.4, 1, -0.0034016, 0.706536, 0.707661, 0.00342206, 0.433333, 1, 0.00340166, 0.706536, 0.707661, -0.003422, 0.466667, 1, -0.0100663, -0.706472, -0.707597, 0.0101266, 0.5, 1, -0.0163151, -0.706355, -0.70748, 0.0164129, 0.533333, 1, -0.021458, -0.706217, -0.707341, 0.0215866, 0.566667, 1, -0.025359, -0.706087, -0.707211, 0.025511, 0.6, 1, -0.0277446, -0.705997, -0.707121, 0.0279109, 0.633333, 1, -0.0283867, -0.705971, -0.707095, 0.0285568, 0.666667, 1, -0.0271025, -0.706022, -0.707146, 0.027265, 0.7, 1, -0.0236154, -0.706147, -0.707272, 0.0237569, 0.733333, 1, -0.0188867, -0.70629, -0.707415, 0.0189999, 0.766667, 1, -0.0131908, -0.70642, -0.707545, 0.0132699, 0.8, 1, -0.00680321, -0.706511, -0.707636, 0.00684395, 0.833333, 1, 2.82528e-08, 0.706544, 0.707669, 3.35747e-08)
tracks/6/type = "rotation_3d"
tracks/6/imported = true
tracks/6/enabled = true
tracks/6/path = NodePath("Skeleton/Skeleton3D:UpperArm_L")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = PackedFloat32Array(0, 1, -0.00866072, 0.000826303, -0.986335, 0.16452, 0.0333333, 1, -0.00866072, 0.000826303, -0.986335, 0.16452, 0.0666667, 1, -0.00823297, -0.011918, -0.98637, 0.163906, 0.1, 1, -0.00771154, -0.0273966, -0.986195, 0.163123, 0.133333, 1, -0.00727754, -0.040233, -0.98587, 0.162444, 0.166667, 1, -0.006957, -0.0496868, -0.985527, 0.161927, 0.2, 1, -0.00683889, -0.0531646, -0.985378, 0.161733, 0.233333, 1, -0.00689796, -0.0514258, -0.985454, 0.16183, 0.266667, 1, -0.00711736, -0.0449604, -0.98571, 0.162187, 0.3, 1, -0.00747566, -0.0343786, -0.986039, 0.162757, 0.333333, 1, -0.00794705, -0.0204133, -0.986303, 0.163481, 0.366667, 1, -0.00851829, -0.00342189, -0.986365, 0.164318, 0.4, 1, -0.00912508, 0.0147088, -0.986115, 0.165159, 0.433333, 1, -0.00974146, 0.033214, -0.985525, 0.165961, 0.466667, 1, -0.010342, 0.0513287, -0.984618, 0.166692, 0.5, 1, -0.0109017, 0.0682908, -0.983473, 0.167326, 0.533333, 1, -0.0113595, 0.0822217, -0.982319, 0.167812, 0.566667, 1, -0.011705, 0.092771, -0.981315, 0.168158, 0.6, 1, -0.0119156, 0.099214, -0.980648, 0.16836, 0.633333, 1, -0.0119722, 0.100946, -0.980461, 0.168413, 0.666667, 1, -0.011859, 0.0974812, -0.980831, 0.168306, 0.7, 1, -0.0115508, 0.0880588, -0.981777, 0.168006, 0.733333, 1, -0.0111308, 0.0752581, -0.98292, 0.167573, 0.766667, 1, -0.0106222, 0.059812, -0.984081, 0.167015, 0.8, 1, -0.0100484, 0.0424627, -0.985102, 0.166341, 0.833333, 1, -0.00943368, 0.0239624, -0.985862, 0.165567)
tracks/7/type = "rotation_3d"
tracks/7/imported = true
tracks/7/enabled = true
tracks/7/path = NodePath("Skeleton/Skeleton3D:LowerArm_L")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = PackedFloat32Array(0, 1, 0.0937367, -0.0347741, -0.07415, 0.992223, 0.0333333, 1, 0.0937367, -0.0347741, -0.07415, 0.992223, 0.0666667, 1, 0.0719361, -0.0266866, -0.0714327, 0.99449, 0.1, 1, 0.0454491, -0.0168605, -0.0680849, 0.996501, 0.133333, 1, 0.0235116, -0.00872217, -0.0652739, 0.997552, 0.166667, 1, 0.00739446, -0.00274306, -0.0631866, 0.997971, 0.2, 1, 0.00147892, -0.000548514, -0.0624158, 0.998049, 0.233333, 1, 0.00443673, -0.0016458, -0.0628015, 0.998015, 0.266667, 1, 0.0154537, -0.00573284, -0.0642326, 0.997799, 0.3, 1, 0.0335112, -0.0124318, -0.0665595, 0.997142, 0.333333, 1, 0.0573795, -0.0212864, -0.0695991, 0.995696, 0.366667, 1, 0.086475, -0.0320802, -0.0732487, 0.99304, 0.4, 1, 0.117482, -0.0435832, -0.0770703, 0.98912, 0.433333, 1, 0.14902, -0.055283, -0.0808846, 0.983969, 0.466667, 1, 0.179725, -0.0666738, -0.0845267, 0.977808, 0.5, 1, 0.208266, -0.0772621, -0.0878479, 0.97105, 0.533333, 1, 0.231486, -0.0858762, -0.0905034, 0.964805, 0.566667, 1, 0.248938, -0.0923503, -0.0924711, 0.959662, 0.6, 1, 0.259536, -0.0962821, -0.0936542, 0.956347, 0.633333, 1, 0.262375, -0.0973354, -0.0939696, 0.955434, 0.666667, 1, 0.256694, -0.0952279, -0.0933378, 0.95725, 0.7, 1, 0.241163, -0.0894659, -0.0915974, 0.962001, 0.733333, 1, 0.219894, -0.0815759, -0.089183, 0.968007, 0.766667, 1, 0.194019, -0.0719768, -0.0861979, 0.974549, 0.8, 1, 0.164726, -0.0611095, -0.0827564, 0.98096, 0.833333, 1, 0.133271, -0.0494404, -0.078989, 0.986689)
tracks/8/type = "rotation_3d"
tracks/8/imported = true
tracks/8/enabled = true
tracks/8/path = NodePath("Skeleton/Skeleton3D:UpperArm_R")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = PackedFloat32Array(0, 1, -0.00873507, -0.0412808, 0.987936, 0.149002, 0.0333333, 1, -0.00873507, -0.0412808, 0.987936, 0.149002, 0.0666667, 1, -0.00897229, -0.0532792, 0.987615, 0.147304, 0.1, 1, -0.0092587, -0.0678449, 0.987028, 0.145212, 0.133333, 1, -0.00949482, -0.0799191, 0.986379, 0.143452, 0.166667, 1, -0.0096679, -0.0888092, 0.985807, 0.142142, 0.2, 1, -0.00973141, -0.0920793, 0.985576, 0.141657, 0.233333, 1, -0.00969967, -0.0904443, 0.985693, 0.141899, 0.266667, 1, -0.00958146, -0.084365, 0.986103, 0.142798, 0.3, 1, -0.00938729, -0.0744128, 0.986694, 0.144257, 0.333333, 1, -0.0091297, -0.0612739, 0.987319, 0.14616, 0.366667, 1, -0.00881428, -0.045281, 0.987845, 0.148438, 0.4, 1, -0.00847522, -0.028205, 0.988122, 0.150826, 0.433333, 1, -0.00812647, -0.0107635, 0.9881, 0.153218, 0.466667, 1, -0.00778242, 0.00632422, 0.987783, 0.155515, 0.5, 1, -0.00745784, 0.0223386, 0.987218, 0.157626, 0.533333, 1, -0.00718948, 0.0355028, 0.986561, 0.15933, 0.566667, 1, -0.00698518, 0.0454788, 0.985946, 0.160604, 0.6, 1, -0.00685995, 0.0515746, 0.985521, 0.161375, 0.633333, 1, -0.00682622, 0.0532142, 0.9854, 0.161581, 0.666667, 1, -0.00689367, 0.0499349, 0.985639, 0.161168, 0.7, 1, -0.00707656, 0.0410218, 0.986233, 0.160037, 0.733333, 1, -0.00732383, 0.0289213, 0.986911, 0.158482, 0.766667, 1, -0.00762039, 0.0143319, 0.987533, 0.156575, 0.8, 1, -0.00795115, -0.00204107, 0.987975, 0.154396, 0.833333, 1, -0.00830117, -0.019485, 0.988149, 0.152028)
tracks/9/type = "rotation_3d"
tracks/9/imported = true
tracks/9/enabled = true
tracks/9/path = NodePath("Skeleton/Skeleton3D:LowerArm_R")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = PackedFloat32Array(0, 1, 0.100815, 0.0304484, 0.0701326, 0.991963, 0.0333333, 1, 0.100815, 0.0304484, 0.0701326, 0.991963, 0.0666667, 1, 0.11346, 0.0342673, 0.0710753, 0.990404, 0.1, 1, 0.128791, 0.0388979, 0.0722032, 0.988275, 0.133333, 1, 0.141484, 0.0427312, 0.0731245, 0.986311, 0.166667, 1, 0.150818, 0.0455504, 0.0737948, 0.98475, 0.2, 1, 0.154249, 0.0465867, 0.0740397, 0.984152, 0.233333, 1, 0.152534, 0.0460686, 0.0739174, 0.984453, 0.266667, 1, 0.146153, 0.0441414, 0.0734606, 0.985543, 0.3, 1, 0.135697, 0.0409837, 0.0727059, 0.987229, 0.333333, 1, 0.121878, 0.0368099, 0.0716967, 0.989268, 0.366667, 1, 0.105032, 0.031722, 0.0704482, 0.991463, 0.4, 1, 0.0870197, 0.0262818, 0.0690915, 0.99346, 0.433333, 1, 0.0685976, 0.020718, 0.0676808, 0.99513, 0.466667, 1, 0.0505286, 0.0152607, 0.0662744, 0.996404, 0.5, 1, 0.0335787, 0.0101414, 0.0649347, 0.997273, 0.533333, 1, 0.0196372, 0.00593076, 0.063818, 0.997751, 0.566667, 1, 0.00906733, 0.00273842, 0.0629626, 0.997971, 0.6, 1, 0.00260672, 0.000787162, 0.0624359, 0.998045, 0.633333, 1, 0.000868918, 0.000262299, 0.0622938, 0.998057, 0.666667, 1, 0.00434455, 0.00131202, 0.0625779, 0.99803, 0.7, 1, 0.0137899, 0.00416474, 0.0633458, 0.997888, 0.733333, 1, 0.0266087, 0.00803631, 0.0643781, 0.997538, 0.766667, 1, 0.0420553, 0.0127015, 0.0656071, 0.996878, 0.8, 1, 0.0593765, 0.017933, 0.0669659, 0.995826, 0.833333, 1, 0.0778123, 0.023501, 0.0683894, 0.994342)
tracks/10/type = "rotation_3d"
tracks/10/imported = true
tracks/10/enabled = true
tracks/10/path = NodePath("Skeleton/Skeleton3D:UpperLeg_L")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = PackedFloat32Array(0, 1, 0.0228276, -0.768386, 0.635828, 0.0691695, 0.0333333, 1, 0.0228276, -0.768386, 0.635828, 0.0691695, 0.0666667, 1, 0.0205784, -0.76432, 0.641985, 0.0569811, 0.1, 1, 0.0176817, -0.758016, 0.65067, 0.0415646, 0.133333, 1, 0.015038, -0.750874, 0.65968, 0.027999, 0.166667, 1, 0.0128418, -0.74373, 0.668128, 0.017465, 0.2, 1, 0.0119263, -0.74032, 0.672015, 0.0134049, 0.233333, 1, 0.0129481, -0.759162, 0.650574, 0.0161155, 0.266667, 1, 0.0148703, -0.789527, 0.613057, 0.0242221, 0.3, 1, 0.0167622, -0.821473, 0.56883, 0.0365189, 0.333333, 1, 0.0178293, -0.84724, 0.528356, 0.0520156, 0.366667, 1, 0.0177019, -0.863512, 0.499093, 0.070275, 0.4, 1, 0.0174028, -0.871583, 0.48187, 0.0885536, 0.433333, 1, 0.0177382, -0.871666, 0.478356, 0.105169, 0.466667, 1, 0.0192411, -0.864521, 0.487945, 0.118927, 0.5, 1, 0.0221715, -0.85147, 0.50778, 0.129102, 0.566667, 1, 0.0306767, -0.814546, 0.562838, 0.137069, 0.6, 1, 0.0338991, -0.79912, 0.584229, 0.137607, 0.633333, 1, 0.0355293, -0.789933, 0.596698, 0.136731, 0.666667, 1, 0.0354507, -0.787329, 0.600614, 0.134605, 0.7, 1, 0.0345893, -0.784654, 0.605248, 0.1296, 0.733333, 1, 0.0332066, -0.78198, 0.610245, 0.122497, 0.766667, 1, 0.0313623, -0.779247, 0.615589, 0.113315, 0.8, 1, 0.0291117, -0.776376, 0.62127, 0.102067, 0.833333, 1, 0.0265066, -0.773264, 0.62728, 0.0887661)
tracks/11/type = "rotation_3d"
tracks/11/imported = true
tracks/11/enabled = true
tracks/11/path = NodePath("Skeleton/Skeleton3D:LowerLeg_L")
tracks/11/interp = 1
tracks/11/loop_wrap = true
tracks/11/keys = PackedFloat32Array(0, 1, 0.205478, 0.00249459, 0.0125463, 0.978578, 0.0333333, 1, 0.205478, 0.00249459, 0.0125463, 0.978578, 0.0666667, 1, 0.191046, 0.00250206, 0.0116651, 0.981509, 0.1, 1, 0.170301, 0.00251181, 0.0103984, 0.985334, 0.133333, 1, 0.148408, 0.00252085, 0.00906166, 0.988881, 0.166667, 1, 0.127568, 0.00252828, 0.00778916, 0.991796, 0.2, 1, 0.117885, 0.00253135, 0.00719794, 0.992998, 0.233333, 1, 0.170948, 0.00251152, 0.0104379, 0.985222, 0.266667, 1, 0.259542, 0.0024615, 0.0158474, 0.965599, 0.3, 1, 0.357137, 0.00238043, 0.0218064, 0.933795, 0.333333, 1, 0.439971, 0.00228818, 0.0268642, 0.897607, 0.366667, 1, 0.496104, 0.00221202, 0.0302916, 0.867732, 0.4, 1, 0.527748, 0.00216373, 0.0322238, 0.848787, 0.433333, 1, 0.534124, 0.0021535, 0.0326131, 0.844774, 0.466667, 1, 0.516809, 0.00218088, 0.0315558, 0.855516, 0.5, 1, 0.479779, 0.00223539, 0.0292948, 0.876898, 0.533333, 1, 0.425828, 0.00230556, 0.0260006, 0.904428, 0.566667, 1, 0.368729, 0.00236887, 0.0225142, 0.929261, 0.6, 1, 0.322433, 0.00241252, 0.0196875, 0.946384, 0.633333, 1, 0.294655, 0.00243558, 0.0179913, 0.955431, 0.666667, 1, 0.285866, 0.0024424, 0.0174547, 0.958108, 0.7, 1, 0.275477, 0.00245019, 0.0168203, 0.961158, 0.733333, 1, 0.264233, 0.00245825, 0.0161338, 0.964321, 0.766667, 1, 0.252143, 0.00246651, 0.0153956, 0.967564, 0.8, 1, 0.239192, 0.00247491, 0.0146048, 0.970859, 0.833333, 1, 0.225345, 0.00248337, 0.0137593, 0.974179)
tracks/12/type = "rotation_3d"
tracks/12/imported = true
tracks/12/enabled = true
tracks/12/path = NodePath("Skeleton/Skeleton3D:Foot_L")
tracks/12/interp = 1
tracks/12/loop_wrap = true
tracks/12/keys = PackedFloat32Array(0, 1, -0.0383944, 0.620453, -0.780728, 0.0634682, 0.0333333, 1, -0.0383944, 0.620453, -0.780728, 0.0634682, 0.0666667, 1, -0.0302253, 0.628303, -0.775493, 0.054156, 0.1, 1, -0.0195545, 0.638013, -0.768619, 0.0422183, 0.133333, 1, -0.00976163, 0.646341, -0.762334, 0.031531, 0.166667, 1, -0.00192558, 0.652646, -0.757307, 0.0231397, 0.2, 1, 0.00116057, 0.65503, -0.75534, 0.0198838, 0.233333, 1, 0.00200255, 0.65283, -0.757262, 0.0190624, 0.266667, 1, 0.002166, 0.64631, -0.762835, 0.0190445, 0.3, 1, 0.00241534, 0.636259, -0.771237, 0.0190145, 0.333333, 1, 0.00271384, 0.624061, -0.78114, 0.0189742, 0.366667, 1, 0.00300543, 0.61197, -0.790649, 0.0189302, 0.4, 1, 0.00323792, 0.602204, -0.798112, 0.0188918, 0.433333, 1, 0.000674999, 0.594996, -0.803416, 0.0223905, 0.466667, 1, -0.00657046, 0.589946, -0.806787, 0.0318727, 0.5, 1, -0.0195338, 0.58593, -0.808662, 0.0486934, 0.533333, 1, -0.0350493, 0.582941, -0.808841, 0.0687558, 0.566667, 1, -0.0486574, 0.580582, -0.808149, 0.0863245, 0.6, 1, -0.0578515, 0.57906, -0.807281, 0.0981819, 0.633333, 1, -0.061973, 0.578655, -0.806628, 0.103288, 0.666667, 1, -0.0621915, 0.579545, -0.806041, 0.10275, 0.7, 1, -0.062245, 0.582272, -0.80431, 0.10085, 0.733333, 1, -0.0614968, 0.586435, -0.801739, 0.0976072, 0.766667, 1, -0.0594932, 0.592057, -0.798321, 0.0928033, 0.8, 1, -0.0557778, 0.599149, -0.794026, 0.0862158, 0.833333, 1, -0.0498914, 0.607698, -0.78879, 0.0776183)
tracks/13/type = "rotation_3d"
tracks/13/imported = true
tracks/13/enabled = true
tracks/13/path = NodePath("Skeleton/Skeleton3D:UpperLeg_R")
tracks/13/interp = 1
tracks/13/loop_wrap = true
tracks/13/keys = PackedFloat32Array(0, 1, 0.0180789, 0.872449, -0.482459, 0.0757566, 0.0333333, 1, 0.0180789, 0.872449, -0.482459, 0.0757566, 0.0666667, 1, 0.0181244, 0.860314, -0.505667, 0.0619015, 0.1, 1, 0.0175781, 0.838827, -0.542267, 0.0448015, 0.133333, 1, 0.016146, 0.809752, -0.585774, 0.0301604, 0.166667, 1, 0.0138786, 0.773797, -0.633004, 0.018751, 0.2, 1, 0.0121364, 0.7465, -0.665135, 0.0136654, 0.233333, 1, 0.0122882, 0.739962, -0.672363, 0.0152705, 0.266667, 1, 0.0137058, 0.741201, -0.670776, 0.0222216, 0.3, 1, 0.0159494, 0.743119, -0.668141, 0.0332797, 0.333333, 1, 0.0187824, 0.74539, -0.664681, 0.047328, 0.366667, 1, 0.0219886, 0.748148, -0.660152, 0.0631609, 0.4, 1, 0.0251494, 0.751966, -0.653997, 0.0787629, 0.466667, 1, 0.0305509, 0.76383, -0.635887, 0.1062, 0.5, 1, 0.032612, 0.77098, -0.625128, 0.117228, 0.533333, 1, 0.0340826, 0.777638, -0.615105, 0.125551, 0.566667, 1, 0.0350623, 0.78334, -0.606471, 0.13169, 0.6, 1, 0.0355017, 0.78785, -0.599717, 0.135542, 0.633333, 1, 0.0350026, 0.793654, -0.591611, 0.137418, 0.666667, 1, 0.0328086, 0.805738, -0.575035, 0.138005, 0.7, 1, 0.0286532, 0.826474, -0.545359, 0.136761, 0.733333, 1, 0.0245344, 0.846022, -0.515806, 0.132624, 0.766667, 1, 0.0210671, 0.862305, -0.49025, 0.125068, 0.8, 1, 0.0186988, 0.873813, -0.47238, 0.113834, 0.833333, 1, 0.0177004, 0.87932, -0.465516, 0.0988838)
tracks/14/type = "rotation_3d"
tracks/14/imported = true
tracks/14/enabled = true
tracks/14/path = NodePath("Skeleton/Skeleton3D:LowerLeg_R")
tracks/14/interp = 1
tracks/14/loop_wrap = true
tracks/14/keys = PackedFloat32Array(0, 1, 0.526572, -0.0021656, -0.032152, 0.849519, 0.0333333, 1, 0.526572, -0.0021656, -0.032152, 0.849519, 0.0666667, 1, 0.483795, -0.00222974, -0.02954, 0.87468, 0.1, 1, 0.412214, -0.00232165, -0.0251694, 0.910736, 0.133333, 1, 0.320633, -0.00241409, -0.0195775, 0.946998, 0.166667, 1, 0.213112, -0.00249041, -0.0130124, 0.976938, 0.2, 1, 0.135114, -0.00252572, -0.00824994, 0.990793, 0.233333, 1, 0.11698, -0.00253162, -0.00714265, 0.993105, 0.266667, 1, 0.120886, -0.00253042, -0.00738118, 0.992636, 0.3, 1, 0.127315, -0.00252836, -0.00777374, 0.991829, 0.333333, 1, 0.135661, -0.00252553, -0.00828333, 0.990717, 0.366667, 1, 0.146654, -0.00252152, -0.00895457, 0.989144, 0.4, 1, 0.161523, -0.00251559, -0.00986245, 0.986816, 0.433333, 1, 0.181121, -0.00250687, -0.0110591, 0.983395, 0.466667, 1, 0.204685, -0.00249502, -0.0124979, 0.978745, 0.5, 1, 0.229869, -0.00248067, -0.0140355, 0.973117, 0.533333, 1, 0.253013, -0.00246593, -0.0154487, 0.967336, 0.566667, 1, 0.272672, -0.00245222, -0.0166491, 0.96196, 0.6, 1, 0.28789, -0.00244085, -0.0175783, 0.957499, 0.633333, 1, 0.306041, -0.0024264, -0.0186866, 0.951832, 0.666667, 1, 0.342521, -0.00239438, -0.020914, 0.939274, 0.7, 1, 0.405188, -0.00232969, -0.0247403, 0.913896, 0.733333, 1, 0.464208, -0.00225673, -0.0283441, 0.88527, 0.766667, 1, 0.512514, -0.00218748, -0.0312936, 0.858105, 0.8, 1, 0.544743, -0.00213607, -0.0332615, 0.83794, 0.833333, 1, 0.556682, -0.0021159, -0.0339904, 0.830028)
tracks/15/type = "rotation_3d"
tracks/15/imported = true
tracks/15/enabled = true
tracks/15/path = NodePath("Skeleton/Skeleton3D:Foot_R")
tracks/15/interp = 1
tracks/15/loop_wrap = true
tracks/15/keys = PackedFloat32Array(0, 1, 0.00319566, -0.603988, 0.796763, 0.018899, 0.0333333, 1, 0.00319566, -0.603988, 0.796763, 0.018899, 0.0666667, 1, 0.00298631, -0.612768, 0.79003, 0.0189332, 0.1, 1, 0.00267986, -0.625459, 0.780021, 0.018979, 0.133333, 1, 0.00235946, -0.638523, 0.769364, 0.0190215, 0.166667, 1, 0.00207918, -0.64978, 0.759881, 0.0190542, 0.2, 1, 0.00196153, -0.654458, 0.755856, 0.0190667, 0.233333, 1, 0.000656852, -0.655496, 0.754922, 0.0204338, 0.266667, 1, -0.00246641, -0.655013, 0.755238, 0.0238412, 0.3, 1, -0.00751603, -0.653938, 0.755937, 0.0294585, 0.333333, 1, -0.0140755, -0.652036, 0.757157, 0.0369394, 0.366667, 1, -0.0218161, -0.648607, 0.759406, 0.0462149, 0.4, 1, -0.0298172, -0.643682, 0.762636, 0.0563166, 0.433333, 1, -0.0376972, -0.637168, 0.766892, 0.0668741, 0.5, 1, -0.0518792, -0.62044, 0.777619, 0.0875902, 0.533333, 1, -0.0572386, -0.611795, 0.783069, 0.0960879, 0.566667, 1, -0.0612152, -0.604299, 0.787751, 0.102584, 0.6, 1, -0.0635846, -0.598691, 0.791309, 0.10657, 0.633333, 1, -0.0630911, -0.595396, 0.793862, 0.106332, 0.666667, 1, -0.0574418, -0.59447, 0.795937, 0.098944, 0.7, 1, -0.0440174, -0.595109, 0.79831, 0.0812971, 0.733333, 1, -0.0286036, -0.596026, 0.800133, 0.061006, 0.766667, 1, -0.0138214, -0.596832, 0.801172, 0.0415241, 0.8, 1, -0.00229837, -0.597384, 0.80152, 0.0263233, 0.833333, 1, 0.00334425, -0.5977, 0.801491, 0.0188733)
tracks/16/type = "position_3d"
tracks/16/imported = true
tracks/16/enabled = true
tracks/16/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/16/interp = 1
tracks/16/loop_wrap = true
tracks/16/keys = PackedFloat32Array(0, 1, -0.140447, -0.688968, -0.0142412, 0.0333333, 1, -0.140447, -0.688968, -0.0142412, 0.0666667, 1, -0.127105, -0.705387, -0.0142412, 0.1, 1, -0.110858, -0.729397, -0.0142412, 0.133333, 1, -0.09733, -0.754467, -0.0142412, 0.166667, 1, -0.0873264, -0.776359, -0.0142412, 0.2, 1, -0.0836338, -0.785539, -0.0142412, 0.233333, 1, -0.0866132, -0.787835, -0.0142412, 0.266667, 1, -0.0960181, -0.787835, -0.0142412, 0.3, 1, -0.110974, -0.787835, -0.0142412, 0.333333, 1, -0.129976, -0.787835, -0.0142412, 0.366667, 1, -0.151369, -0.787835, -0.0142412, 0.4, 1, -0.1723, -0.787835, -0.0142412, 0.433333, 1, -0.191508, -0.787822, -0.0142412, 0.466667, 1, -0.208212, -0.787757, -0.0142412, 0.5, 1, -0.222119, -0.787575, -0.0142412, 0.533333, 1, -0.232187, -0.787081, -0.0142412, 0.566667, 1, -0.239294, -0.786236, -0.0142412, 0.6, 1, -0.243386, -0.784963, -0.0142412, 0.633333, 1, -0.24404, -0.781251, -0.0142412, 0.666667, 1, -0.240465, -0.771161, -0.0142412, 0.7, 1, -0.230742, -0.749919, -0.0142412, 0.733333, 1, -0.217536, -0.726083, -0.0142412, 0.766667, 1, -0.201597, -0.703502, -0.0142412, 0.8, 1, -0.183678, -0.686023, -0.0142412, 0.833333, 1, -0.16453, -0.677492, -0.0142412)
tracks/17/type = "rotation_3d"
tracks/17/imported = true
tracks/17/enabled = true
tracks/17/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/17/interp = 1
tracks/17/loop_wrap = true
tracks/17/keys = PackedFloat32Array(0, 1, -0.784423, 0, 0, 0.620226, 0.0333333, 1, -0.784423, 0, 0, 0.620226, 0.0666667, 1, -0.777512, 0, 0, 0.628869, 0.1, 1, -0.767244, 0, 0, 0.641355, 0.133333, 1, -0.756321, 0, 0, 0.654201, 0.166667, 1, -0.746608, 0, 0, 0.665264, 0.2, 1, -0.742487, 6.25702e-18, -6.25702e-18, 0.66986, 0.233333, 1, -0.741532, -0.00139036, 0.00124968, 0.670915, 0.266667, 1, -0.741857, -0.00486295, 0.00431293, 0.670527, 0.3, 1, -0.742578, -0.0105873, 0.00926977, 0.669612, 0.333333, 1, -0.743839, -0.0182105, 0.015716, 0.667926, 0.366667, 1, -0.746166, -0.0276601, 0.0233403, 0.664776, 0.4, 1, -0.749511, -0.0379496, 0.0312416, 0.660165, 0.433333, 1, -0.753922, -0.0487017, 0.0390475, 0.653992, 0.5, 1, -0.76505, -0.0697991, 0.0531689, 0.637966, 0.533333, 1, -0.770707, -0.0784558, 0.0585415, 0.629625, 0.566667, 1, -0.775567, -0.0850769, 0.062547, 0.622371, 0.6, 1, -0.779255, -0.0891435, 0.0649568, 0.616925, 0.633333, 1, -0.781878, -0.0889101, 0.064547, 0.613673, 0.666667, 1, -0.783957, -0.0813961, 0.059092, 0.612613, 0.7, 1, -0.78628, -0.0634428, 0.0460582, 0.612877, 0.733333, 1, -0.788043, -0.0428089, 0.0310784, 0.613344, 0.766667, 1, -0.789025, -0.0230084, 0.0167037, 0.613703, 0.8, 1, -0.78933, -0.00756629, 0.00549298, 0.613898, 0.833333, 1, -0.789279, 0, 0, 0.614035)
tracks/18/type = "rotation_3d"
tracks/18/imported = true
tracks/18/enabled = true
tracks/18/path = NodePath("Skeleton/Skeleton3D:Wrist_L")
tracks/18/interp = 1
tracks/18/loop_wrap = true
tracks/18/keys = PackedFloat32Array(0, 1, 5.1721e-09, 1.73886e-07, -0.0182467, 0.999834)
tracks/19/type = "rotation_3d"
tracks/19/imported = true
tracks/19/enabled = true
tracks/19/path = NodePath("Skeleton/Skeleton3D:Wrist_R")
tracks/19/interp = 1
tracks/19/loop_wrap = true
tracks/19/keys = PackedFloat32Array(0, 1, 5.1721e-09, -1.73886e-07, 0.0182467, 0.999834)
[sub_resource type="Animation" id="Animation_0gu1w"]
resource_name = "walk_right_loop"
length = 0.833333
loop_mode = 1
tracks/0/type = "position_3d"
tracks/0/imported = true
tracks/0/enabled = true
tracks/0/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = PackedFloat32Array(0, 1, 0.204736, -0.787802, -0.0142412, 0.0333333, 1, 0.204736, -0.787802, -0.0142412, 0.0666667, 1, 0.215166, -0.787666, -0.0142412, 0.1, 1, 0.227153, -0.787328, -0.0142412, 0.133333, 1, 0.236234, -0.786717, -0.0142412, 0.166667, 1, 0.242354, -0.785755, -0.0142412, 0.2, 1, 0.244418, -0.78417, -0.0142412, 0.233333, 1, 0.242253, -0.776206, -0.0142412, 0.266667, 1, 0.235604, -0.76054, -0.0142412, 0.3, 1, 0.22472, -0.738433, -0.0142412, 0.333333, 1, 0.210352, -0.713734, -0.0142412, 0.366667, 1, 0.192843, -0.693271, -0.0142412, 0.4, 1, 0.174104, -0.681757, -0.0142412, 0.433333, 1, 0.154897, -0.682082, -0.0142412, 0.466667, 1, 0.136, -0.694441, -0.0142412, 0.5, 1, 0.118209, -0.716333, -0.0142412, 0.533333, 1, 0.103507, -0.742462, -0.0142412, 0.566667, 1, 0.0923282, -0.765413, -0.0142412, 0.6, 1, 0.0854801, -0.780949, -0.0142412, 0.633333, 1, 0.0840115, -0.787835, -0.0142412, 0.666667, 1, 0.089215, -0.787835, -0.0142412, 0.7, 1, 0.102821, -0.787835, -0.0142412, 0.733333, 1, 0.120475, -0.787835, -0.0142412, 0.766667, 1, 0.140673, -0.787835, -0.0142412, 0.8, 1, 0.161912, -0.787835, -0.0142412, 0.833333, 1, 0.182689, -0.787835, -0.0142412)
tracks/1/type = "rotation_3d"
tracks/1/imported = true
tracks/1/enabled = true
tracks/1/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_L")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = PackedFloat32Array(0, 1, -0.771799, 0.0559903, -0.0459141, 0.63173, 0.0333333, 1, -0.771799, 0.0559903, -0.0459141, 0.63173, 0.0666667, 1, -0.777533, 0.0635388, -0.0512297, 0.623523, 0.1, 1, -0.784632, 0.0727745, -0.0576176, 0.612973, 0.133333, 1, -0.790759, 0.0805245, -0.0628331, 0.603546, 0.166667, 1, -0.795435, 0.0862936, -0.0666206, 0.596153, 0.2, 1, -0.797219, 0.0884365, -0.0679967, 0.593294, 0.233333, 1, -0.798183, 0.0834546, -0.0641026, 0.593153, 0.266667, 1, -0.799025, 0.0709731, -0.0545154, 0.594601, 0.3, 1, -0.799568, 0.0524843, -0.0403139, 0.596919, 0.333333, 1, -0.799022, 0.0313789, -0.0241025, 0.599998, 0.366667, 1, -0.796377, 0.0136872, -0.0105133, 0.604554, 0.4, 1, -0.791851, 0.00370525, -0.00284605, 0.610697, 0.433333, 1, -0.785345, 0, 0, 0.619059, 0.466667, 1, -0.776938, 0, 0, 0.629577, 0.5, 1, -0.767039, 0, 0, 0.6416, 0.533333, 1, -0.757229, 0, 0, 0.653149, 0.566667, 1, -0.749073, 0, 0, 0.662487, 0.6, 1, -0.743739, -3.12852e-18, 3.12852e-18, 0.668471, 0.633333, 1, -0.741616, 0.000459349, -0.000420304, 0.670825, 0.666667, 1, -0.742265, 0.00229675, -0.00210152, 0.670099, 0.7, 1, -0.744259, 0.00733494, -0.00661496, 0.667818, 0.733333, 1, -0.747286, 0.014241, -0.0126565, 0.664229, 0.766667, 1, -0.751347, 0.0226601, -0.0198292, 0.65922, 0.8, 1, -0.75644, 0.0322372, -0.0277357, 0.65268, 0.833333, 1, -0.762567, 0.0426169, -0.0359785, 0.644501)
tracks/2/type = "position_3d"
tracks/2/imported = true
tracks/2/enabled = true
tracks/2/path = NodePath("Skeleton/Skeleton3D:Root")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = PackedFloat32Array(0, 1, 0, 0.171396, 0, 0.0333333, 1, 0, 0.171396, 0, 0.0666667, 1, 0, 0.166127, 0, 0.1, 1, 0, 0.159396, 0, 0.133333, 1, 0, 0.153394, 0, 0.166667, 1, 0, 0.148693, 0, 0.2, 1, 0, 0.146871, 0, 0.233333, 1, 0, 0.14723, 0, 0.266667, 1, 0, 0.149244, 0, 0.3, 1, 0, 0.152537, 0, 0.333333, 1, 0, 0.156876, 0, 0.366667, 1, 0, 0.162144, 0, 0.4, 1, 0, 0.167761, 0, 0.433333, 1, 0, 0.173494, 0, 0.466667, 1, 0, 0.179112, 0, 0.5, 1, 0, 0.18438, 0, 0.533333, 1, 0, 0.188719, 0, 0.566667, 1, 0, 0.192012, 0, 0.6, 1, 0, 0.194026, 0, 0.666667, 1, 0, 0.194405, 0, 0.7, 1, 0, 0.193218, 0, 0.733333, 1, 0, 0.19124, 0, 0.766667, 1, 0, 0.188363, 0, 0.8, 1, 0, 0.18448, 0, 0.833333, 1, 0, 0.179484, 0)
tracks/3/type = "rotation_3d"
tracks/3/imported = true
tracks/3/enabled = true
tracks/3/path = NodePath("Skeleton/Skeleton3D:LowerBody")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = PackedFloat32Array(0, 1, 0.00585234, -0.733724, -0.679421, 0.00149853, 0.0333333, 1, 0.00585234, -0.733724, -0.679421, 0.00149853, 0.0666667, 1, 0.00907911, -0.73367, -0.679442, 0.00232478, 0.1, 1, 0.0130018, -0.733584, -0.679466, 0.00332922, 0.133333, 1, 0.0162601, -0.733493, -0.67949, 0.00416355, 0.166667, 1, 0.0186642, -0.733413, -0.67951, 0.00477916, 0.233333, 1, 0.0191071, -0.733397, -0.679515, 0.00489256, 0.266667, 1, 0.0174622, -0.733454, -0.6795, 0.00447136, 0.3, 1, 0.0147733, -0.733537, -0.679479, 0.00378284, 0.333333, 1, 0.0112302, -0.733629, -0.679451, 0.0028756, 0.366667, 1, 0.00692794, -0.733707, -0.679429, 0.00177395, 0.4, 1, 0.00234093, -0.73375, -0.679415, 0.000599396, 0.433333, 1, 0.00234099, 0.73375, 0.679415, 0.000599461, 0.466667, 1, 0.006928, 0.733707, 0.679429, 0.00177401, 0.5, 1, 0.0112303, 0.733629, 0.679451, 0.00287566, 0.533333, 1, 0.0147734, 0.733537, 0.679479, 0.0037829, 0.566667, 1, 0.0174622, 0.733454, 0.6795, 0.00447142, 0.6, 1, 0.0191072, 0.733397, 0.679515, 0.00489262, 0.666667, 1, 0.0186643, 0.733413, 0.67951, 0.00477922, 0.7, 1, 0.0162601, 0.733493, 0.67949, 0.00416361, 0.733333, 1, 0.0130018, 0.733584, 0.679466, 0.00332929, 0.766667, 1, 0.00907917, 0.73367, 0.679442, 0.00232484, 0.8, 1, 0.00468194, 0.733734, 0.67942, 0.00119888, 0.833333, 1, 2.96978e-08, 0.733762, 0.679407, 3.20738e-08)
tracks/4/type = "rotation_3d"
tracks/4/imported = true
tracks/4/enabled = true
tracks/4/path = NodePath("Skeleton/Skeleton3D:UpperBody")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = PackedFloat32Array(0, 1, -0.0637058, 0.00669168, -9.97054e-05, 0.997946, 0.0333333, 1, -0.0637058, 0.00669168, -9.97054e-05, 0.997946, 0.0666667, 1, -0.0637038, 0.0103808, -0.000154675, 0.997915, 0.1, 1, -0.0637002, 0.0148654, -0.000221497, 0.997858, 0.133333, 1, -0.0636963, 0.0185904, -0.000277001, 0.997796, 0.166667, 1, -0.0636928, 0.0213393, -0.00031796, 0.997741, 0.2, 1, -0.0636913, 0.0223538, -0.000333077, 0.997719, 0.233333, 1, -0.0636921, 0.0218504, -0.000325578, 0.99773, 0.266667, 1, -0.0636946, 0.0199729, -0.000297602, 0.99777, 0.3, 1, -0.0636982, 0.016901, -0.000251828, 0.997826, 0.333333, 1, -0.063702, 0.0128506, -0.000191475, 0.997886, 0.366667, 1, -0.0637053, 0.00792866, -0.000118137, 0.997937, 0.4, 1, -0.063707, 0.0026793, -3.99194e-05, 0.997965, 0.433333, 1, -0.063707, -0.00267921, 3.99248e-05, 0.997965, 0.466667, 1, -0.0637053, -0.00792857, 0.000118143, 0.997937, 0.5, 1, -0.063702, -0.0128505, 0.000191481, 0.997886, 0.533333, 1, -0.0636982, -0.0169009, 0.000251835, 0.997826, 0.566667, 1, -0.0636946, -0.0199728, 0.000297607, 0.99777, 0.6, 1, -0.0636921, -0.0218503, 0.000325583, 0.99773, 0.633333, 1, -0.0636914, -0.0223537, 0.000333083, 0.997719, 0.666667, 1, -0.0636928, -0.0213392, 0.000317966, 0.997741, 0.7, 1, -0.0636963, -0.0185903, 0.000277007, 0.997796, 0.733333, 1, -0.0637002, -0.0148653, 0.000221503, 0.997858, 0.766667, 1, -0.0637038, -0.0103807, 0.000154681, 0.997915, 0.8, 1, -0.0637064, -0.00535328, 7.97699e-05, 0.997954, 0.833333, 1, -0.0637073, 4.17616e-08, 2.90024e-09, 0.997969)
tracks/5/type = "rotation_3d"
tracks/5/imported = true
tracks/5/enabled = true
tracks/5/path = NodePath("Skeleton/Skeleton3D:Head")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = PackedFloat32Array(0, 1, -0.00850387, 0.706493, 0.707618, 0.00855493, 0.0333333, 1, -0.00850387, 0.706493, 0.707618, 0.00855493, 0.0666667, 1, -0.0131908, 0.70642, 0.707545, 0.0132699, 0.1, 1, -0.0188866, 0.70629, 0.707415, 0.0189999, 0.133333, 1, -0.0236153, 0.706147, 0.707272, 0.023757, 0.166667, 1, -0.0271024, 0.706022, 0.707146, 0.027265, 0.2, 1, -0.0283866, 0.705971, 0.707095, 0.0285569, 0.233333, 1, -0.0277445, 0.705997, 0.707121, 0.027911, 0.266667, 1, -0.025359, 0.706087, 0.707211, 0.0255111, 0.3, 1, -0.0214579, 0.706217, 0.707341, 0.0215867, 0.333333, 1, -0.0163151, 0.706355, 0.70748, 0.016413, 0.366667, 1, -0.0100662, 0.706472, 0.707597, 0.0101267, 0.4, 1, -0.00340159, 0.706536, 0.707661, 0.00342205, 0.433333, 1, 0.00340167, 0.706536, 0.707661, -0.003422, 0.466667, 1, -0.0100663, -0.706472, -0.707597, 0.0101266, 0.5, 1, -0.0163151, -0.706355, -0.70748, 0.0164129, 0.533333, 1, -0.021458, -0.706217, -0.707341, 0.0215866, 0.566667, 1, -0.025359, -0.706087, -0.707211, 0.025511, 0.6, 1, -0.0277446, -0.705997, -0.707121, 0.0279109, 0.633333, 1, -0.0283867, -0.705971, -0.707095, 0.0285568, 0.666667, 1, -0.0271025, -0.706022, -0.707146, 0.027265, 0.7, 1, -0.0236154, -0.706147, -0.707272, 0.0237569, 0.733333, 1, -0.0188867, -0.70629, -0.707415, 0.0189999, 0.766667, 1, -0.0131909, -0.70642, -0.707545, 0.0132699, 0.8, 1, -0.00680321, -0.706511, -0.707636, 0.00684395, 0.833333, 1, 3.35101e-08, 0.706544, 0.707669, 2.82865e-08)
tracks/6/type = "rotation_3d"
tracks/6/imported = true
tracks/6/enabled = true
tracks/6/path = NodePath("Skeleton/Skeleton3D:UpperArm_L")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = PackedFloat32Array(0, 1, -0.00786325, -0.00232021, -0.987883, 0.154981, 0.0333333, 1, -0.00786325, -0.00232021, -0.987883, 0.154981, 0.0666667, 1, -0.00762038, -0.0143319, -0.987533, 0.156575, 0.1, 1, -0.00732383, -0.0289214, -0.986911, 0.158482, 0.133333, 1, -0.00707656, -0.0410218, -0.986233, 0.160037, 0.166667, 1, -0.00689366, -0.0499349, -0.985639, 0.161168, 0.2, 1, -0.00682622, -0.0532142, -0.9854, 0.161581, 0.233333, 1, -0.00685995, -0.0515746, -0.985521, 0.161375, 0.266667, 1, -0.00698519, -0.0454788, -0.985946, 0.160604, 0.3, 1, -0.00718949, -0.0355028, -0.986561, 0.15933, 0.333333, 1, -0.00745784, -0.0223386, -0.987218, 0.157626, 0.366667, 1, -0.00778242, -0.00632423, -0.987783, 0.155515, 0.4, 1, -0.00812648, 0.0107635, -0.9881, 0.153218, 0.433333, 1, -0.00847523, 0.0282051, -0.988122, 0.150826, 0.466667, 1, -0.00881429, 0.045281, -0.987845, 0.148438, 0.5, 1, -0.0091297, 0.0612739, -0.987319, 0.14616, 0.533333, 1, -0.00938728, 0.0744128, -0.986694, 0.144257, 0.566667, 1, -0.00958146, 0.084365, -0.986103, 0.142798, 0.6, 1, -0.00969968, 0.0904444, -0.985693, 0.141899, 0.633333, 1, -0.00973141, 0.0920793, -0.985576, 0.141657, 0.666667, 1, -0.00966791, 0.0888092, -0.985807, 0.142142, 0.7, 1, -0.00949482, 0.0799191, -0.986379, 0.143452, 0.733333, 1, -0.0092587, 0.0678448, -0.987028, 0.145212, 0.766667, 1, -0.00897228, 0.0532792, -0.987615, 0.147304, 0.8, 1, -0.00864862, 0.0369229, -0.988017, 0.149613, 0.833333, 1, -0.00830117, 0.019485, -0.988149, 0.152028)
tracks/7/type = "rotation_3d"
tracks/7/imported = true
tracks/7/enabled = true
tracks/7/path = NodePath("Skeleton/Skeleton3D:LowerArm_L")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = PackedFloat32Array(0, 1, 0.0547638, -0.0165398, -0.066606, 0.996138, 0.0333333, 1, 0.0547638, -0.0165398, -0.066606, 0.996138, 0.0666667, 1, 0.0420553, -0.0127015, -0.0656071, 0.996878, 0.1, 1, 0.0266087, -0.0080363, -0.0643781, 0.997538, 0.133333, 1, 0.0137899, -0.00416474, -0.0633458, 0.997888, 0.166667, 1, 0.00434453, -0.00131202, -0.0625779, 0.99803, 0.2, 1, 0.000868916, -0.000262299, -0.0622938, 0.998057, 0.233333, 1, 0.00260674, -0.000787163, -0.0624359, 0.998045, 0.266667, 1, 0.00906735, -0.00273842, -0.0629626, 0.997971, 0.3, 1, 0.0196372, -0.00593077, -0.063818, 0.997751, 0.333333, 1, 0.0335787, -0.0101414, -0.0649347, 0.997273, 0.366667, 1, 0.0505286, -0.0152607, -0.0662744, 0.996404, 0.4, 1, 0.0685977, -0.020718, -0.0676808, 0.99513, 0.433333, 1, 0.0870197, -0.0262819, -0.0690915, 0.99346, 0.466667, 1, 0.105032, -0.031722, -0.0704482, 0.991463, 0.5, 1, 0.121878, -0.0368099, -0.0716967, 0.989268, 0.533333, 1, 0.135698, -0.0409837, -0.0727059, 0.987229, 0.566667, 1, 0.146153, -0.0441414, -0.0734606, 0.985543, 0.6, 1, 0.152534, -0.0460686, -0.0739174, 0.984453, 0.633333, 1, 0.154249, -0.0465867, -0.0740397, 0.984152, 0.666667, 1, 0.150818, -0.0455504, -0.0737948, 0.98475, 0.7, 1, 0.141484, -0.0427313, -0.0731245, 0.986311, 0.733333, 1, 0.128791, -0.0388978, -0.0722032, 0.988274, 0.766667, 1, 0.11346, -0.0342673, -0.0710753, 0.990404, 0.8, 1, 0.0962189, -0.0290602, -0.0697872, 0.992485, 0.833333, 1, 0.0778123, -0.023501, -0.0683894, 0.994342)
tracks/8/type = "rotation_3d"
tracks/8/imported = true
tracks/8/enabled = true
tracks/8/path = NodePath("Skeleton/Skeleton3D:UpperArm_R")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = PackedFloat32Array(0, 1, -0.0102016, -0.0470857, 0.984859, 0.166525, 0.0333333, 1, -0.0102016, -0.0470857, 0.984859, 0.166525, 0.0666667, 1, -0.0106222, -0.0598119, 0.984081, 0.167015, 0.1, 1, -0.0111309, -0.0752581, 0.98292, 0.167573, 0.133333, 1, -0.0115508, -0.0880588, 0.981777, 0.168006, 0.166667, 1, -0.011859, -0.0974812, 0.980831, 0.168306, 0.2, 1, -0.0119722, -0.100946, 0.980461, 0.168413, 0.233333, 1, -0.0119156, -0.099214, 0.980648, 0.16836, 0.266667, 1, -0.011705, -0.092771, 0.981315, 0.168158, 0.3, 1, -0.0113595, -0.0822216, 0.982319, 0.167812, 0.333333, 1, -0.0109017, -0.0682908, 0.983473, 0.167326, 0.366667, 1, -0.010342, -0.0513287, 0.984618, 0.166692, 0.4, 1, -0.00974146, -0.033214, 0.985525, 0.165961, 0.433333, 1, -0.00912508, -0.0147088, 0.986115, 0.165159, 0.466667, 1, -0.00851829, 0.00342189, 0.986365, 0.164318, 0.5, 1, -0.00794704, 0.0204133, 0.986303, 0.163481, 0.533333, 1, -0.00747565, 0.0343786, 0.986039, 0.162757, 0.566667, 1, -0.00711735, 0.0449604, 0.98571, 0.162187, 0.6, 1, -0.00689796, 0.0514258, 0.985454, 0.16183, 0.633333, 1, -0.00683889, 0.0531646, 0.985378, 0.161733, 0.666667, 1, -0.006957, 0.0496868, 0.985527, 0.161927, 0.7, 1, -0.00727755, 0.040233, 0.98587, 0.162444, 0.733333, 1, -0.00771154, 0.0273966, 0.986195, 0.163123, 0.766667, 1, -0.00823297, 0.0119181, 0.98637, 0.163906, 0.8, 1, -0.0088157, -0.00545396, 0.986283, 0.164737, 0.833333, 1, -0.00943368, -0.0239624, 0.985862, 0.165567)
tracks/9/type = "rotation_3d"
tracks/9/imported = true
tracks/9/enabled = true
tracks/9/path = NodePath("Skeleton/Skeleton3D:LowerArm_R")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = PackedFloat32Array(0, 1, 0.172561, 0.0640161, 0.0836833, 0.979348, 0.0333333, 1, 0.172561, 0.0640161, 0.0836833, 0.979348, 0.0666667, 1, 0.194019, 0.0719768, 0.0861979, 0.974549, 0.1, 1, 0.219894, 0.0815759, 0.089183, 0.968007, 0.133333, 1, 0.241163, 0.0894659, 0.0915974, 0.962001, 0.166667, 1, 0.256694, 0.0952279, 0.0933378, 0.95725, 0.2, 1, 0.262375, 0.0973354, 0.0939696, 0.955434, 0.233333, 1, 0.259536, 0.0962821, 0.0936542, 0.956347, 0.266667, 1, 0.248938, 0.0923503, 0.0924711, 0.959662, 0.3, 1, 0.231486, 0.0858762, 0.0905034, 0.964805, 0.333333, 1, 0.208266, 0.0772621, 0.0878479, 0.97105, 0.366667, 1, 0.179725, 0.0666738, 0.0845267, 0.977808, 0.4, 1, 0.14902, 0.055283, 0.0808845, 0.983969, 0.433333, 1, 0.117482, 0.0435832, 0.0770703, 0.98912, 0.466667, 1, 0.086475, 0.0320802, 0.0732487, 0.99304, 0.5, 1, 0.0573795, 0.0212864, 0.0695991, 0.995696, 0.533333, 1, 0.0335111, 0.0124318, 0.0665595, 0.997142, 0.566667, 1, 0.0154536, 0.00573283, 0.0642326, 0.997799, 0.6, 1, 0.00443672, 0.00164579, 0.0628015, 0.998015, 0.633333, 1, 0.00147892, 0.000548515, 0.0624158, 0.998049, 0.666667, 1, 0.00739449, 0.00274306, 0.0631865, 0.997971, 0.7, 1, 0.0235117, 0.00872218, 0.0652739, 0.997552, 0.733333, 1, 0.0454491, 0.0168605, 0.0680849, 0.996501, 0.766667, 1, 0.071936, 0.0266866, 0.0714327, 0.99449, 0.8, 1, 0.10166, 0.0377133, 0.0751289, 0.991261, 0.833333, 1, 0.133271, 0.0494404, 0.078989, 0.986689)
tracks/10/type = "rotation_3d"
tracks/10/imported = true
tracks/10/enabled = true
tracks/10/path = NodePath("Skeleton/Skeleton3D:UpperLeg_L")
tracks/10/interp = 1
tracks/10/loop_wrap = true
tracks/10/keys = PackedFloat32Array(0, 1, 0.0300341, -0.762007, 0.638548, 0.103438, 0.0333333, 1, 0.0300341, -0.762007, 0.638548, 0.103438, 0.0666667, 1, 0.0315826, -0.767433, 0.63053, 0.111718, 0.1, 1, 0.0333482, -0.77433, 0.620133, 0.121393, 0.133333, 1, 0.0346538, -0.780637, 0.610548, 0.128983, 0.166667, 1, 0.0354697, -0.786019, 0.602375, 0.134394, 0.2, 1, 0.0355332, -0.789673, 0.597051, 0.136689, 0.233333, 1, 0.0339074, -0.799739, 0.583354, 0.137719, 0.266667, 1, 0.030736, -0.816241, 0.56029, 0.137406, 0.3, 1, 0.0265857, -0.836399, 0.530528, 0.135166, 0.333333, 1, 0.0224752, -0.855374, 0.500919, 0.130039, 0.366667, 1, 0.019655, -0.869072, 0.479489, 0.120073, 0.4, 1, 0.0182003, -0.8766, 0.468966, 0.106363, 0.433333, 1, 0.0178536, -0.876663, 0.472342, 0.0896422, 0.466667, 1, 0.0180958, -0.868489, 0.490243, 0.0711451, 0.5, 1, 0.0181459, -0.851804, 0.520894, 0.0526338, 0.533333, 1, 0.0169982, -0.825273, 0.563268, 0.0369385, 0.566667, 1, 0.0150191, -0.792137, 0.609668, 0.0244669, 0.6, 1, 0.0130104, -0.76032, 0.649216, 0.0162118, 0.633333, 1, 0.0118943, -0.73963, 0.672776, 0.01335, 0.666667, 1, 0.0126821, -0.740291, 0.671948, 0.017191, 0.7, 1, 0.0147291, -0.742089, 0.669585, 0.0272516, 0.733333, 1, 0.0173664, -0.744276, 0.666429, 0.040305, 0.766667, 1, 0.0203862, -0.746796, 0.662441, 0.0552464, 0.8, 1, 0.0235764, -0.749873, 0.657339, 0.071, 0.833333, 1, 0.0267204, -0.754, 0.650603, 0.0865196)
tracks/11/type = "rotation_3d"
tracks/11/imported = true
tracks/11/enabled = true
tracks/11/path = NodePath("Skeleton/Skeleton3D:LowerLeg_L")
tracks/11/interp = 1
tracks/11/loop_wrap = true
tracks/11/keys = PackedFloat32Array(0, 1, 0.198367, 0.00249834, 0.0121121, 0.98005, 0.0333333, 1, 0.198367, 0.00249834, 0.0121121, 0.98005, 0.0666667, 1, 0.217295, 0.00248805, 0.0132678, 0.976013, 0.1, 1, 0.241458, 0.00247348, 0.0147432, 0.970296, 0.133333, 1, 0.263415, 0.00245881, 0.0160839, 0.964545, 0.166667, 1, 0.281904, 0.0024454, 0.0172128, 0.959285, 0.2, 1, 0.293865, 0.00243621, 0.0179431, 0.955675, 0.233333, 1, 0.324342, 0.00241085, 0.019804, 0.94573, 0.266667, 1, 0.374069, 0.0023634, 0.0228403, 0.927117, 0.3, 1, 0.435236, 0.00229408, 0.026575, 0.899921, 0.333333, 1, 0.49269, 0.00221699, 0.0300831, 0.869682, 0.366667, 1, 0.532069, 0.00215681, 0.0324876, 0.846075, 0.4, 1, 0.550727, 0.00212605, 0.0336268, 0.834005, 0.433333, 1, 0.544722, 0.00213611, 0.0332602, 0.837954, 0.466667, 1, 0.512453, 0.00218758, 0.0312898, 0.858142, 0.5, 1, 0.454606, 0.00226945, 0.0277578, 0.890257, 0.533333, 1, 0.368906, 0.00236869, 0.022525, 0.929191, 0.566667, 1, 0.26729, 0.00245609, 0.0163205, 0.963475, 0.6, 1, 0.17425, 0.00251004, 0.0106395, 0.984641, 0.633333, 1, 0.115968, 0.00253192, 0.00708091, 0.993225, 0.666667, 1, 0.117991, 0.00253131, 0.0072044, 0.992985, 0.7, 1, 0.12378, 0.00252951, 0.00755791, 0.992278, 0.733333, 1, 0.131489, 0.00252697, 0.0080286, 0.991282, 0.766667, 1, 0.14116, 0.00252357, 0.00861908, 0.989946, 0.8, 1, 0.153444, 0.00251889, 0.00936911, 0.98811, 0.833333, 1, 0.169592, 0.00251212, 0.0103551, 0.985457)
tracks/12/type = "rotation_3d"
tracks/12/imported = true
tracks/12/enabled = true
tracks/12/path = NodePath("Skeleton/Skeleton3D:Foot_L")
tracks/12/interp = 1
tracks/12/loop_wrap = true
tracks/12/keys = PackedFloat32Array(0, 1, -0.0441695, 0.614359, -0.784313, 0.0739328, 0.0333333, 1, -0.0441695, 0.614359, -0.784313, 0.0739328, 0.0666667, 1, -0.04945, 0.605862, -0.789856, 0.0813268, 0.1, 1, -0.0557873, 0.594958, -0.796709, 0.0903697, 0.133333, 1, -0.0609505, 0.585232, -0.802617, 0.0979548, 0.166667, 1, -0.0646927, 0.577616, -0.807119, 0.103599, 0.2, 1, -0.0660498, 0.574674, -0.808836, 0.105696, 0.233333, 1, -0.0620401, 0.574635, -0.809805, 0.100805, 0.266667, 1, -0.0522087, 0.576365, -0.810701, 0.0885556, 0.3, 1, -0.0376579, 0.579116, -0.811326, 0.0704036, 0.333333, 1, -0.0210698, 0.582714, -0.810884, 0.0496738, 0.366667, 1, -0.00722131, 0.587749, -0.808366, 0.0322971, 0.4, 1, 0.000503228, 0.594221, -0.803987, 0.0225046, 0.433333, 1, 0.00322375, 0.602802, -0.79766, 0.0188943, 0.466667, 1, 0.00296906, 0.613488, -0.789472, 0.018936, 0.5, 1, 0.0026738, 0.625708, -0.779822, 0.0189799, 0.533333, 1, 0.0023859, 0.637453, -0.770251, 0.0190182, 0.566667, 1, 0.00214992, 0.646954, -0.762288, 0.0190464, 0.6, 1, 0.00199718, 0.653043, -0.757078, 0.019063, 0.633333, 1, 0.00150724, 0.655428, -0.755004, 0.0195198, 0.666667, 1, -0.000192233, 0.654642, -0.755639, 0.0213202, 0.7, 1, -0.00474897, 0.652191, -0.757585, 0.0262575, 0.733333, 1, -0.0108398, 0.648365, -0.760535, 0.0330255, 0.766667, 1, -0.0180593, 0.643064, -0.764486, 0.0412759, 0.8, 1, -0.0260015, 0.636184, -0.769433, 0.0506604, 0.833333, 1, -0.0342605, 0.627631, -0.775375, 0.0608303)
tracks/13/type = "rotation_3d"
tracks/13/imported = true
tracks/13/enabled = true
tracks/13/path = NodePath("Skeleton/Skeleton3D:UpperLeg_R")
tracks/13/interp = 1
tracks/13/loop_wrap = true
tracks/13/keys = PackedFloat32Array(0, 1, 0.0185064, 0.867693, -0.482934, 0.11637, 0.0333333, 1, 0.0185064, 0.867693, -0.482934, 0.11637, 0.0666667, 1, 0.020708, 0.858068, -0.497905, 0.124025, 0.1, 1, 0.0243011, 0.842597, -0.521593, 0.131836, 0.133333, 1, 0.0285493, 0.824137, -0.54901, 0.136278, 0.166667, 1, 0.0327953, 0.80472, -0.576503, 0.137821, 0.2, 1, 0.0349997, 0.793445, -0.591901, 0.13738, 0.233333, 1, 0.0354902, 0.788634, -0.598658, 0.135668, 0.266667, 1, 0.0350203, 0.785997, -0.602935, 0.132103, 0.3, 1, 0.0339848, 0.783317, -0.607686, 0.126398, 0.333333, 1, 0.0324277, 0.780624, -0.612789, 0.118593, 0.366667, 1, 0.0302957, 0.77784, -0.618365, 0.108032, 0.4, 1, 0.0278099, 0.774842, -0.624293, 0.0954195, 0.433333, 1, 0.0250365, 0.771359, -0.630737, 0.0809321, 0.466667, 1, 0.0220784, 0.767048, -0.637895, 0.0651081, 0.5, 1, 0.0190766, 0.761521, -0.646016, 0.0488488, 0.533333, 1, 0.0162853, 0.754444, -0.655267, 0.0342767, 0.566667, 1, 0.0139403, 0.747324, -0.663924, 0.0227327, 0.6, 1, 0.0123841, 0.742029, -0.670075, 0.015435, 0.633333, 1, 0.0121155, 0.746104, -0.665579, 0.0136331, 0.666667, 1, 0.0137756, 0.771914, -0.635306, 0.0185914, 0.7, 1, 0.0159525, 0.806479, -0.590295, 0.0298326, 0.733333, 1, 0.0173013, 0.834622, -0.548768, 0.0442814, 0.766667, 1, 0.0177688, 0.855532, -0.513818, 0.0611564, 0.8, 1, 0.0175789, 0.868814, -0.488415, 0.0794038, 0.833333, 1, 0.0172244, 0.874235, -0.47526, 0.0976915)
tracks/14/type = "rotation_3d"
tracks/14/imported = true
tracks/14/enabled = true
tracks/14/path = NodePath("Skeleton/Skeleton3D:LowerLeg_R")
tracks/14/interp = 1
tracks/14/loop_wrap = true
tracks/14/keys = PackedFloat32Array(0, 1, 0.525921, -0.00216662, -0.0321122, 0.849924, 0.0333333, 1, 0.525921, -0.00216662, -0.0321122, 0.849924, 0.0666667, 1, 0.498408, -0.00220864, -0.0304323, 0.866406, 0.1, 1, 0.453012, -0.00227152, -0.0276604, 0.891073, 0.133333, 1, 0.397732, -0.00233806, -0.0242851, 0.917177, 0.166667, 1, 0.339361, -0.00239733, -0.0207211, 0.940425, 0.2, 1, 0.305401, -0.00242693, -0.0186475, 0.952038, 0.233333, 1, 0.290263, -0.00243902, -0.0177232, 0.95678, 0.266667, 1, 0.280675, -0.00244633, -0.0171378, 0.959647, 0.3, 1, 0.269996, -0.00245416, -0.0164857, 0.962717, 0.333333, 1, 0.258461, -0.00246224, -0.0157813, 0.96589, 0.366667, 1, 0.245814, -0.00247067, -0.0150092, 0.969198, 0.4, 1, 0.232274, -0.00247921, -0.0141824, 0.972544, 0.433333, 1, 0.217409, -0.00248798, -0.0132748, 0.975987, 0.466667, 1, 0.200672, -0.00249714, -0.0122528, 0.979579, 0.5, 1, 0.181402, -0.00250674, -0.0110762, 0.983343, 0.533333, 1, 0.159178, -0.00251656, -0.00971923, 0.987199, 0.566667, 1, 0.137996, -0.00252471, -0.00842588, 0.990394, 0.6, 1, 0.122728, -0.00252984, -0.00749364, 0.992409, 0.633333, 1, 0.134007, -0.00252611, -0.00818232, 0.990943, 0.666667, 1, 0.20765, -0.00249342, -0.0126789, 0.978118, 0.7, 1, 0.310693, -0.00242255, -0.0189706, 0.950318, 0.733333, 1, 0.398963, -0.0023367, -0.0243603, 0.916641, 0.766667, 1, 0.468275, -0.00225125, -0.0285924, 0.883117, 0.8, 1, 0.515829, -0.0021824, -0.031496, 0.85611, 0.833333, 1, 0.539564, -0.00214464, -0.0329452, 0.841297)
tracks/15/type = "rotation_3d"
tracks/15/imported = true
tracks/15/enabled = true
tracks/15/path = NodePath("Skeleton/Skeleton3D:Foot_R")
tracks/15/interp = 1
tracks/15/loop_wrap = true
tracks/15/keys = PackedFloat32Array(0, 1, -0.00327455, -0.597807, 0.801149, 0.0278639, 0.0333333, 1, -0.00327455, -0.597807, 0.801149, 0.0278639, 0.0666667, 1, -0.0127625, -0.598011, 0.80035, 0.0407417, 0.1, 1, -0.0266314, -0.598112, 0.798753, 0.0595525, 0.133333, 1, -0.0410914, -0.597992, 0.796525, 0.0791479, 0.166667, 1, -0.0536811, -0.597777, 0.794058, 0.0961922, 0.2, 1, -0.0589556, -0.598074, 0.792564, 0.103317, 0.233333, 1, -0.060528, -0.59858, 0.791891, 0.104632, 0.266667, 1, -0.0608543, -0.599193, 0.791582, 0.103258, 0.3, 1, -0.0609153, -0.600001, 0.791299, 0.100663, 0.333333, 1, -0.0602199, -0.601309, 0.790858, 0.0966641, 0.366667, 1, -0.0575329, -0.603888, 0.789831, 0.0904234, 0.4, 1, -0.0526096, -0.607841, 0.788037, 0.0822169, 0.433333, 1, -0.0452299, -0.613771, 0.784887, 0.0720521, 0.466667, 1, -0.035696, -0.621751, 0.780072, 0.060332, 0.5, 1, -0.0248367, -0.631358, 0.773615, 0.0478608, 0.533333, 1, -0.0143858, -0.64085, 0.766666, 0.0364249, 0.566667, 1, -0.00587572, -0.648561, 0.76065, 0.0272964, 0.6, 1, -0.000393807, -0.653514, 0.756609, 0.0214978, 0.633333, 1, 0.00196153, -0.654458, 0.755856, 0.0190667, 0.666667, 1, 0.0020792, -0.649779, 0.759882, 0.0190542, 0.7, 1, 0.00235954, -0.63852, 0.769367, 0.0190215, 0.733333, 1, 0.00268, -0.625453, 0.780026, 0.018979, 0.766667, 1, 0.00298649, -0.612761, 0.790036, 0.0189332, 0.8, 1, 0.00322554, -0.602727, 0.797717, 0.018894, 0.833333, 1, 0.00334426, -0.5977, 0.801491, 0.0188733)
tracks/16/type = "position_3d"
tracks/16/imported = true
tracks/16/enabled = true
tracks/16/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/16/interp = 1
tracks/16/loop_wrap = true
tracks/16/keys = PackedFloat32Array(0, 1, -0.188465, -0.688155, -0.0142412, 0.0333333, 1, -0.188465, -0.688155, -0.0142412, 0.0666667, 1, -0.201597, -0.703502, -0.0142412, 0.1, 1, -0.217536, -0.726083, -0.0142412, 0.133333, 1, -0.230742, -0.749919, -0.0142412, 0.166667, 1, -0.240465, -0.771161, -0.0142412, 0.2, 1, -0.24404, -0.781251, -0.0142412, 0.233333, 1, -0.243386, -0.784963, -0.0142412, 0.266667, 1, -0.239294, -0.786236, -0.0142412, 0.3, 1, -0.232187, -0.787081, -0.0142412, 0.333333, 1, -0.222119, -0.787575, -0.0142412, 0.366667, 1, -0.208212, -0.787757, -0.0142412, 0.4, 1, -0.191508, -0.787822, -0.0142412, 0.433333, 1, -0.1723, -0.787835, -0.0142412, 0.466667, 1, -0.151369, -0.787835, -0.0142412, 0.5, 1, -0.129976, -0.787835, -0.0142412, 0.533333, 1, -0.110974, -0.787835, -0.0142412, 0.566667, 1, -0.0960181, -0.787835, -0.0142412, 0.6, 1, -0.0866132, -0.787835, -0.0142412, 0.633333, 1, -0.0836338, -0.785539, -0.0142412, 0.666667, 1, -0.0873264, -0.776359, -0.0142412, 0.7, 1, -0.09733, -0.754467, -0.0142412, 0.733333, 1, -0.110858, -0.729397, -0.0142412, 0.766667, 1, -0.127105, -0.705387, -0.0142412, 0.8, 1, -0.145264, -0.686673, -0.0142412, 0.833333, 1, -0.16453, -0.677492, -0.0142412)
tracks/17/type = "rotation_3d"
tracks/17/imported = true
tracks/17/enabled = true
tracks/17/path = NodePath("Skeleton/Skeleton3D:IK_LegTarget_R")
tracks/17/interp = 1
tracks/17/loop_wrap = true
tracks/17/keys = PackedFloat32Array(0, 1, -0.788957, -0.00912491, 0.00642665, 0.614347, 0.0333333, 1, -0.788957, -0.00912491, 0.00642665, 0.614347, 0.0666667, 1, -0.788184, -0.0221985, 0.0156343, 0.614841, 0.1, 1, -0.78663, -0.0413038, 0.0290902, 0.615354, 0.133333, 1, -0.784452, -0.0612167, 0.0431148, 0.615654, 0.166667, 1, -0.782029, -0.0785458, 0.0553196, 0.615792, 0.2, 1, -0.780546, -0.08579, 0.0604217, 0.616228, 0.233333, 1, -0.779857, -0.087138, 0.0619506, 0.616759, 0.266667, 1, -0.779514, -0.0857672, 0.0622925, 0.61735, 0.3, 1, -0.779181, -0.0831666, 0.0623921, 0.618116, 0.333333, 1, -0.778672, -0.0791416, 0.0617554, 0.619349, 0.366667, 1, -0.777551, -0.0728251, 0.0591489, 0.621782, 0.4, 1, -0.775641, -0.0644882, 0.0543187, 0.625517, 0.433333, 1, -0.772346, -0.054133, 0.0470282, 0.631142, 0.466667, 1, -0.767355, -0.0421714, 0.0375659, 0.63873, 0.5, 1, -0.760699, -0.0294299, 0.0267499, 0.647885, 0.533333, 1, -0.753561, -0.0177396, 0.0163155, 0.656936, 0.566667, 1, -0.747395, -0.00840862, 0.00781032, 0.664281, 0.6, 1, -0.743257, -0.00248196, 0.00232767, 0.668997, 0.633333, 1, -0.742487, -7.82126e-18, 7.82126e-18, 0.66986, 0.666667, 1, -0.746609, -7.82114e-18, 7.82114e-18, 0.665263, 0.7, 1, -0.756323, -7.82031e-18, 7.82031e-18, 0.654198, 0.733333, 1, -0.767249, -7.8184e-18, 7.8184e-18, 0.64135, 0.766667, 1, -0.777517, -7.81627e-18, 7.81627e-18, 0.628862, 0.8, 1, -0.785403, -6.2519e-18, 6.2519e-18, 0.618985, 0.833333, 1, -0.789279, 0, 0, 0.614035)
tracks/18/type = "rotation_3d"
tracks/18/imported = true
tracks/18/enabled = true
tracks/18/path = NodePath("Skeleton/Skeleton3D:Wrist_L")
tracks/18/interp = 1
tracks/18/loop_wrap = true
tracks/18/keys = PackedFloat32Array(0, 1, 5.1721e-09, 1.73886e-07, -0.0182467, 0.999834)
tracks/19/type = "rotation_3d"
tracks/19/imported = true
tracks/19/enabled = true
tracks/19/path = NodePath("Skeleton/Skeleton3D:Wrist_R")
tracks/19/interp = 1
tracks/19/loop_wrap = true
tracks/19/keys = PackedFloat32Array(0, 1, 5.1721e-09, -1.73886e-07, 0.0182467, 0.999834)
[sub_resource type="AnimationLibrary" id="AnimationLibrary_og84j"]
_data = {
"idle": SubResource("Animation_wjxw2"),
"walk_backward": SubResource("Animation_f761b"),
"walk_forward": SubResource("Animation_sxqf4"),
"walk_left": SubResource("Animation_7sfwo"),
"walk_right": SubResource("Animation_0gu1w")
}
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_4v5ew"]
animation = &"idle"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_cun17"]
animation = &"idle"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_c1sen"]
animation = &"walk_backward"
[sub_resource type="AnimationNodeTransition" id="AnimationNodeTransition_j7sk1"]
sync = true
xfade_time = 0.1
input_0/name = "forward"
input_0/auto_advance = false
input_0/reset = true
input_1/name = "backward"
input_1/auto_advance = false
input_1/reset = true
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_4taqe"]
animation = &"walk_forward"
[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_krc6q"]
[sub_resource type="AnimationNodeTransition" id="AnimationNodeTransition_nyobm"]
xfade_time = 0.25
input_0/name = "idle"
input_0/auto_advance = false
input_0/reset = false
input_1/name = "move"
input_1/auto_advance = false
input_1/reset = true
[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_cstk8"]
graph_offset = Vector2(0, -22)
nodes/idle/node = SubResource("AnimationNodeAnimation_4v5ew")
nodes/idle/position = Vector2(600, 60)
nodes/not_moving/node = SubResource("AnimationNodeAnimation_cun17")
nodes/not_moving/position = Vector2(400, 60)
nodes/output/position = Vector2(960, 180)
nodes/walk_backward/node = SubResource("AnimationNodeAnimation_c1sen")
nodes/walk_backward/position = Vector2(200, 300)
nodes/walk_direction/node = SubResource("AnimationNodeTransition_j7sk1")
nodes/walk_direction/position = Vector2(400, 200)
nodes/walk_forward/node = SubResource("AnimationNodeAnimation_4taqe")
nodes/walk_forward/position = Vector2(200, 160)
nodes/walk_speed/node = SubResource("AnimationNodeBlend2_krc6q")
nodes/walk_speed/position = Vector2(600, 200)
nodes/walk_state/node = SubResource("AnimationNodeTransition_nyobm")
nodes/walk_state/position = Vector2(800, 120)
node_connections = [&"output", 0, &"walk_state", &"walk_direction", 0, &"walk_forward", &"walk_direction", 1, &"walk_backward", &"walk_speed", 0, &"not_moving", &"walk_speed", 1, &"walk_direction", &"walk_state", 0, &"idle", &"walk_state", 1, &"walk_speed"]
[node name="Player" type="CharacterBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75, 0)
collision_layer = 4
collision_mask = 3
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("CapsuleShape3D_h1mfd")
[node name="Model" parent="." instance=ExtResource("1_3qh37")]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, -0.75, 0)
[node name="Root" type="BoneAttachment3D" parent="Model/Skeleton" index="0"]
transform = Transform3D(-1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0.198533, 0)
bone_name = "Root"
bone_idx = 2
use_external_skeleton = true
external_skeleton = NodePath("../Skeleton3D")
[node name="LowerBody" type="BoneAttachment3D" parent="Model/Skeleton/Root"]
transform = Transform3D(-1, -1.88864e-09, 8.74024e-08, 8.71645e-08, 0.0552555, 0.998472, -6.71522e-09, 0.998472, -0.0552555, 0, 0, -0.199593)
bone_name = "LowerBody"
bone_idx = 3
use_external_skeleton = true
external_skeleton = NodePath("../../Skeleton3D")
[node name="UpperBody" type="BoneAttachment3D" parent="Model/Skeleton/Root/LowerBody"]
transform = Transform3D(1, -6.95499e-09, 8.71457e-08, 0, 0.99683, 0.0795558, -8.74228e-08, -0.0795558, 0.99683, 8.88178e-16, 0.154362, 0)
bone_name = "UpperBody"
bone_idx = 4
use_external_skeleton = true
external_skeleton = NodePath("../../../Skeleton3D")
[node name="Neck" type="BoneAttachment3D" parent="Model/Skeleton/Root/LowerBody/UpperBody"]
transform = Transform3D(1, 4.44089e-16, 7.10543e-15, -2.22045e-16, 0.998891, -0.0470728, 7.10543e-15, 0.0470728, 0.998891, -6.66134e-16, 0.251888, 5.58794e-09)
bone_name = "Neck"
bone_idx = 5
use_external_skeleton = true
external_skeleton = NodePath("../../../../Skeleton3D")
[node name="Head" type="BoneAttachment3D" parent="Model/Skeleton/Root/LowerBody/UpperBody/Neck"]
transform = Transform3D(-1, 5.04258e-10, 8.74213e-08, 8.74228e-08, 0.00576782, 0.999983, 0, 0.999983, -0.00576782, 7.77156e-16, 0.101598, 0)
bone_name = "Head"
bone_idx = 6
use_external_skeleton = true
external_skeleton = NodePath("../../../../../Skeleton3D")
[node name="Camera" type="Camera3D" parent="Model/Skeleton/Root/LowerBody/UpperBody/Neck/Head"]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0.08, 0.04)
cull_mask = 1
[node name="UpperArm_L" type="BoneAttachment3D" parent="Model/Skeleton/Root/LowerBody/UpperBody"]
transform = Transform3D(-0.95011, 0.311913, -0.000703218, -0.311536, -0.949068, -0.047061, -0.0153463, -0.0444941, 0.998892, 0.0873834, 0.213866, -0.00179177)
bone_name = "UpperArm_L"
bone_idx = 7
use_external_skeleton = true
external_skeleton = NodePath("../../../../Skeleton3D")
[node name="UpperArm_R" type="BoneAttachment3D" parent="Model/Skeleton/Root/LowerBody/UpperBody"]
transform = Transform3D(-0.95011, -0.311913, 0.000703218, 0.311536, -0.949068, -0.047061, 0.0153463, -0.0444941, 0.998892, -0.0873834, 0.213866, -0.00179177)
bone_name = "UpperArm_R"
bone_idx = 14
use_external_skeleton = true
external_skeleton = NodePath("../../../../Skeleton3D")
[node name="Skeleton3D" parent="Model/Skeleton" index="1"]
bones/1/rotation = Quaternion(-0.725917, 3.05019e-18, -2.88548e-18, 0.687782)
bones/2/position = Vector3(0, 0.198533, 0)
bones/3/rotation = Quaternion(2.93496e-08, 0.72638, 0.687293, 3.23927e-08)
bones/4/rotation = Quaternion(-0.0398095, 4.36767e-08, 1.74013e-09, 0.999207)
bones/6/rotation = Quaternion(3.09976e-08, 0.709143, 0.705065, 3.08193e-08)
bones/7/rotation = Quaternion(-0.00406451, -0.0231861, 0.987177, -0.157887)
bones/8/rotation = Quaternion(0.000100147, 0.000337309, -0.079069, 0.996869)
bones/9/rotation = Quaternion(-7.45954e-05, -0.000352905, -0.000920106, 1)
bones/14/rotation = Quaternion(0.00406451, -0.0231861, 0.987177, 0.157887)
bones/15/rotation = Quaternion(0.000100147, -0.00033731, 0.079069, 0.996869)
bones/16/rotation = Quaternion(-7.45954e-05, 0.000352905, 0.000920106, 1)
bones/21/rotation = Quaternion(0.0107274, -0.719883, 0.693927, 0.010901)
bones/22/rotation = Quaternion(0.0634445, 0.00254403, 0.00387385, 0.997975)
bones/23/rotation = Quaternion(-0.00150721, -0.672261, 0.740066, -0.019108)
bones/24/rotation = Quaternion(-0.0107274, -0.719883, 0.693927, -0.010901)
bones/25/rotation = Quaternion(0.0634445, -0.00254403, -0.00387385, 0.997975)
bones/26/rotation = Quaternion(0.0015072, -0.672261, 0.740066, 0.019108)
bones/28/rotation = Quaternion(-0.725917, 3.05019e-18, -2.88548e-18, 0.687782)
[node name="MovementController" type="Node" parent="."]
script = ExtResource("2_1pst4")
[node name="CameraController" type="Node" parent="." node_paths=PackedStringArray("Camera")]
script = ExtResource("2_r3gna")
Camera = NodePath("../Model/Skeleton/Root/LowerBody/UpperBody/Neck/Head/Camera")
[node name="AnimationController" type="Node3D" parent="." node_paths=PackedStringArray("Skeleton", "RootBone")]
script = ExtResource("3_5rlwc")
Skeleton = NodePath("../Model/Skeleton/Skeleton3D")
RootBone = NodePath("../Model/Skeleton/Root")
[node name="AnimationTree" type="AnimationTree" parent="AnimationController"]
deterministic = false
root_node = NodePath("../../Model")
libraries = {
"": SubResource("AnimationLibrary_og84j")
}
tree_root = SubResource("AnimationNodeBlendTree_cstk8")
anim_player = NodePath("../../Model/AnimationPlayer")
parameters/walk_direction/current_state = "forward"
parameters/walk_direction/transition_request = ""
parameters/walk_direction/current_index = 0
parameters/walk_speed/blend_amount = 0.0
parameters/walk_state/current_state = "move"
parameters/walk_state/transition_request = ""
parameters/walk_state/current_index = 1
[node name="PickupController" type="Node3D" parent="." node_paths=PackedStringArray("Camera")]
script = ExtResource("2_ns2pe")
Camera = NodePath("../Model/Skeleton/Root/LowerBody/UpperBody/Neck/Head/Camera")
[editable path="Model"]

@ -0,0 +1,89 @@
; Engine configuration file.
; It's best edited using the editor UI and not directly,
; since the parameters that go here are not all obvious.
;
; Format:
; [section] ; section goes between []
; param=value ; assign values to parameters
config_version=5
[application]
config/name="Inventory2"
run/main_scene="res://scenes/game.tscn"
config/features=PackedStringArray("4.2", "C#", "GL Compatibility")
config/icon="res://assets/icon.svg"
[dotnet]
project/assembly_name="Inventory2"
[importer_defaults]
texture={
"compress/channel_pack": 0,
"compress/hdr_compression": 1,
"compress/high_quality": false,
"compress/lossy_quality": 0.7,
"compress/mode": 0,
"compress/normal_map": 0,
"detect_3d/compress_to": 0,
"mipmaps/generate": true,
"mipmaps/limit": -1,
"process/fix_alpha_border": true,
"process/hdr_as_srgb": false,
"process/hdr_clamp_exposure": false,
"process/normal_map_invert_y": false,
"process/premult_alpha": false,
"process/size_limit": 0,
"roughness/mode": 0,
"roughness/src_normal": ""
}
[input]
move_forward={
"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":87,"key_label":0,"unicode":119,"echo":false,"script":null)
]
}
move_back={
"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)
]
}
move_strafe_left={
"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":65,"key_label":0,"unicode":97,"echo":false,"script":null)
]
}
move_strafe_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)
]
}
interact_pickup={
"deadzone": 0.5,
"events": [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(131, 20),"global_position":Vector2(135, 61),"factor":1.0,"button_index":1,"canceled":false,"pressed":true,"double_click":false,"script":null)
]
}
interact_place={
"deadzone": 0.5,
"events": [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(151, 7),"global_position":Vector2(155, 48),"factor":1.0,"button_index":2,"canceled":false,"pressed":true,"double_click":false,"script":null)
]
}
[layer_names]
3d_render/layer_1="Default"
3d_render/layer_2="Outline"
3d_physics/layer_1="Static"
3d_physics/layer_2="Dynamic"
3d_physics/layer_3="Player"
3d_physics/layer_4="Interactable"
[rendering]
renderer/rendering_method="gl_compatibility"
renderer/rendering_method.mobile="gl_compatibility"

@ -0,0 +1,60 @@
[gd_scene load_steps=7 format=3 uid="uid://puuk72ficqhu"]
[ext_resource type="PackedScene" uid="uid://bwfuet1irfi17" path="res://scenes/warehouse.tscn" id="1_m8m3w"]
[ext_resource type="Shader" path="res://assets/shaders/outline.gdshader" id="2_yvnqw"]
[ext_resource type="Script" path="res://scripts/OutlineCamera.cs" id="3_wd8hf"]
[ext_resource type="Texture2D" uid="uid://lxxfestfg2dt" path="res://assets/crosshair.png" id="4_06ang"]
[ext_resource type="Script" path="res://scripts/Crosshair.cs" id="5_i8gkf"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ke1l3"]
shader = ExtResource("2_yvnqw")
shader_parameter/line_color = Color(1, 1, 1, 0.75)
shader_parameter/line_thickness = 2.0
[node name="Game" type="Node"]
[node name="Warehouse" parent="." instance=ExtResource("1_m8m3w")]
[node name="OutlineViewportContainer" type="SubViewportContainer" parent="."]
material = SubResource("ShaderMaterial_ke1l3")
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
stretch = true
[node name="OutlineViewport" type="SubViewport" parent="OutlineViewportContainer"]
transparent_bg = true
handle_input_locally = false
size = Vector2i(1152, 648)
render_target_update_mode = 4
[node name="OutlineCamera" type="Camera3D" parent="OutlineViewportContainer/OutlineViewport"]
cull_mask = 2
script = ExtResource("3_wd8hf")
[node name="HUD" type="Control" parent="."]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
[node name="Crosshair" type="TextureRect" parent="HUD"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -20.0
offset_top = -20.0
offset_right = 20.0
offset_bottom = 20.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("4_06ang")
script = ExtResource("5_i8gkf")

@ -0,0 +1,122 @@
[gd_scene load_steps=12 format=3 uid="uid://bwfuet1irfi17"]
[ext_resource type="PackedScene" uid="uid://dmd7w2r8s0x6y" path="res://player/player.tscn" id="1_cxvln"]
[ext_resource type="Script" path="res://objects/Grid.cs" id="2_gstd0"]
[ext_resource type="PackedScene" uid="uid://yvy5vvaqgxy8" path="res://objects/crate.tscn" id="2_j6a20"]
[ext_resource type="Script" path="res://objects/Item.cs" id="3_01pgc"]
[ext_resource type="Texture2D" uid="uid://dts3g3ivc4stn" path="res://assets/palettes/metal.png" id="3_kvstu"]
[sub_resource type="BoxShape3D" id="BoxShape3D_hkc0l"]
size = Vector3(0.125, 0.125, 0.25)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_foa6h"]
[sub_resource type="BoxMesh" id="BoxMesh_3qwx3"]
material = SubResource("StandardMaterial3D_foa6h")
size = Vector3(0.125, 0.125, 0.25)
[sub_resource type="BoxShape3D" id="BoxShape3D_vkl3b"]
size = Vector3(2, 0.1, 1)
[sub_resource type="BoxMesh" id="BoxMesh_548mk"]
size = Vector3(2, 0.1, 1)
[sub_resource type="BoxMesh" id="BoxMesh_efbik"]
size = Vector3(0.1, 0.9, 0.1)
[node name="Warehouse" type="Node3D"]
[node name="Sun" type="DirectionalLight3D" parent="."]
transform = Transform3D(0.866025, 0, -0.5, 0.25, 0.866025, 0.433013, 0.433013, -0.5, 0.75, 0, 5, 0)
[node name="Player" parent="." instance=ExtResource("1_cxvln")]
[node name="Crates" type="Node3D" parent="."]
[node name="Crate1" parent="Crates" instance=ExtResource("2_j6a20")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, -4)
Palette = ExtResource("3_kvstu")
[node name="Crate2" parent="Crates" instance=ExtResource("2_j6a20")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, 0)
[node name="Crate3" parent="Crates" instance=ExtResource("2_j6a20")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0.5, 4)
[node name="Crate4" parent="Crates" instance=ExtResource("2_j6a20")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 4)
[node name="Crate5" parent="Crates" instance=ExtResource("2_j6a20")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, 4)
[node name="Crate6" parent="Crates" instance=ExtResource("2_j6a20")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, 0)
[node name="Crate7" parent="Crates" instance=ExtResource("2_j6a20")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0.5, -4)
[node name="Table" type="StaticBody3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -4)
collision_layer = 2
collision_mask = 0
[node name="SmallBox" type="StaticBody3D" parent="Table"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.43938, 1.06737, 0)
collision_layer = 9
collision_mask = 0
script = ExtResource("3_01pgc")
Size = Vector3i(2, 2, 4)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Table/SmallBox"]
shape = SubResource("BoxShape3D_hkc0l")
[node name="MeshInstance3D" type="MeshInstance3D" parent="Table/SmallBox"]
mesh = SubResource("BoxMesh_3qwx3")
[node name="SmallBox2" type="StaticBody3D" parent="Table"]
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0.251316, 1.06737, 0.127615)
collision_layer = 9
collision_mask = 0
script = ExtResource("3_01pgc")
Size = Vector3i(2, 2, 4)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Table/SmallBox2"]
shape = SubResource("BoxShape3D_hkc0l")
[node name="MeshInstance3D" type="MeshInstance3D" parent="Table/SmallBox2"]
mesh = SubResource("BoxMesh_3qwx3")
[node name="Grid" type="Area3D" parent="Table"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
collision_layer = 8
collision_mask = 0
script = ExtResource("2_gstd0")
GridSize = Vector2i(30, 14)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Table"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.95, 0)
shape = SubResource("BoxShape3D_vkl3b")
[node name="MeshInstance3D" type="MeshInstance3D" parent="Table"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.95, 0)
mesh = SubResource("BoxMesh_548mk")
[node name="Leg1" type="MeshInstance3D" parent="Table"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.9, 0.45, 0.4)
mesh = SubResource("BoxMesh_efbik")
skeleton = NodePath("../MeshInstance3D")
[node name="Leg2" type="MeshInstance3D" parent="Table"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.9, 0.45, 0.4)
mesh = SubResource("BoxMesh_efbik")
skeleton = NodePath("../MeshInstance3D")
[node name="Leg3" type="MeshInstance3D" parent="Table"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.9, 0.45, -0.4)
mesh = SubResource("BoxMesh_efbik")
skeleton = NodePath("../MeshInstance3D")
[node name="Leg4" type="MeshInstance3D" parent="Table"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.9, 0.45, -0.4)
mesh = SubResource("BoxMesh_efbik")
skeleton = NodePath("../MeshInstance3D")

@ -0,0 +1,7 @@
public partial class Crosshair : TextureRect
{
public override void _Process(double delta)
{
Visible = Input.MouseMode == Input.MouseModeEnum.Captured;
}
}

@ -0,0 +1,9 @@
public partial class OutlineCamera : Camera3D
{
public override void _Process(double delta)
{
var mainViewport = GetTree().Root.GetViewport();
var mainCamera = mainViewport.GetCamera3D();
GlobalTransform = mainCamera.GlobalTransform;
}
}
Loading…
Cancel
Save