[gd_scene load_steps=29 format=3 uid="uid://0ysqmqphq6mq"] [ext_resource type="Script" uid="uid://dtkdrnsmlwm67" path="res://systems/head/HeadSystem.cs" id="1_8abgy"] [ext_resource type="ArrayMesh" uid="uid://ckr26s4e3fj1m" path="res://assets/swords/resources/fp_sword23.tres" id="2_c5qep"] [ext_resource type="AnimationNodeBlendTree" uid="uid://c26yvcyyyj811" path="res://systems/head/fp_blend_tree.tres" id="3_r0h40"] [ext_resource type="Script" uid="uid://dnlxsrumw6ygp" path="res://addons/shaker/src/Vector3/shaker_component3D.gd" id="3_ubhf8"] [ext_resource type="Script" uid="uid://0tu2q57qqu4s" path="res://addons/shaker/data/Vector3/BaseShakerType3D.gd" id="4_1ay6d"] [ext_resource type="Script" uid="uid://ptaespkh1sk2" path="res://addons/shaker/data/Vector3/ShakerTypeNoiseShake3D.gd" id="5_sdjj3"] [ext_resource type="Script" uid="uid://mlwdmecg12xd" path="res://addons/shaker/data/Vector3/ShakerPreset3D.gd" id="6_ll12k"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_ubhf8"] frequency = 0.15 fractal_octaves = 1 [sub_resource type="NoiseTexture3D" id="NoiseTexture3D_1ay6d"] noise = SubResource("FastNoiseLite_ubhf8") [sub_resource type="Resource" id="Resource_sdjj3"] script = ExtResource("5_sdjj3") noise_texture = SubResource("NoiseTexture3D_1ay6d") amplitude = Vector3(0.1, 0.1, 0.1) metadata/_custom_type_script = "uid://ptaespkh1sk2" [sub_resource type="FastNoiseLite" id="FastNoiseLite_sdjj3"] frequency = 0.1 [sub_resource type="NoiseTexture3D" id="NoiseTexture3D_ll12k"] noise = SubResource("FastNoiseLite_sdjj3") [sub_resource type="Resource" id="Resource_dvot2"] script = ExtResource("5_sdjj3") noise_texture = SubResource("NoiseTexture3D_ll12k") amplitude = Vector3(0.02, 0.02, 0.02) metadata/_custom_type_script = "uid://ptaespkh1sk2" [sub_resource type="Resource" id="Resource_60ouj"] script = ExtResource("6_ll12k") PositionShake = Array[ExtResource("4_1ay6d")]([SubResource("Resource_sdjj3")]) RotationShake = Array[ExtResource("4_1ay6d")]([SubResource("Resource_dvot2")]) metadata/_custom_type_script = "uid://mlwdmecg12xd" [sub_resource type="FastNoiseLite" id="FastNoiseLite_1ay6d"] frequency = 0.02 fractal_octaves = 1 [sub_resource type="NoiseTexture3D" id="NoiseTexture3D_sdjj3"] noise = SubResource("FastNoiseLite_1ay6d") [sub_resource type="Resource" id="Resource_ll12k"] script = ExtResource("5_sdjj3") noise_texture = SubResource("NoiseTexture3D_sdjj3") amplitude = Vector3(0.2, 0, 0) metadata/_custom_type_script = "uid://ptaespkh1sk2" [sub_resource type="FastNoiseLite" id="FastNoiseLite_ll12k"] frequency = 0.02 fractal_octaves = 1 [sub_resource type="NoiseTexture3D" id="NoiseTexture3D_se3kf"] noise = SubResource("FastNoiseLite_ll12k") [sub_resource type="Resource" id="Resource_0k6hv"] script = ExtResource("5_sdjj3") noise_texture = SubResource("NoiseTexture3D_se3kf") amplitude = Vector3(0.1, 0.2, 0.1) metadata/_custom_type_script = "uid://ptaespkh1sk2" [sub_resource type="Resource" id="Resource_se3kf"] script = ExtResource("6_ll12k") PositionShake = Array[ExtResource("4_1ay6d")]([SubResource("Resource_ll12k")]) RotationShake = Array[ExtResource("4_1ay6d")]([SubResource("Resource_0k6hv")]) metadata/_custom_type_script = "uid://mlwdmecg12xd" [sub_resource type="Animation" id="Animation_urko7"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("../../FPRig/Sword:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector3(0.53640664, -0.7880347, -1.9288678)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("../../FPRig/Sword:rotation") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector3(-0.083978735, -1.136043, 0.19867715)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("../../FPRig/Sword:scale") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector3(1.0000001, 1.0000001, 1.0000005)] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("..:rotation") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector3(0, 0, 0.00011616433)] } tracks/4/type = "value" tracks/4/imported = false tracks/4/enabled = true tracks/4/path = NodePath("..:position") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector3(0, 0, 0)] } [sub_resource type="Animation" id="Animation_r0h40"] resource_name = "hit1" length = 0.30000168 step = 0.016666668 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("../../FPRig/Sword:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.06666667, 0.11666667, 0.15, 0.21666667, 0.3), "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1), "update": 0, "values": [Vector3(0.53640664, -0.7880347, -1.9288678), Vector3(0.4045868, -0.4412415, -1.5352597), Vector3(-0.4799922, -0.5403832, -1.6861614), Vector3(-0.46995986, -0.53766656, -1.3638693), Vector3(-0.49520528, -0.5369735, -1.3145388), Vector3(-0.4048354, -0.5878634, -1.2836416)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("../../FPRig/Sword:rotation") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.06666667, 0.11666667, 0.15, 0.21666667, 0.3), "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1), "update": 0, "values": [Vector3(-0.083978735, -1.136043, 0.19867715), Vector3(-0.7788485, -2.0049822, -0.2951485), Vector3(-0.94931036, -0.5881021, -0.61733377), Vector3(-1.3252386, -0.102411434, 0.58406436), Vector3(-1.2938086, -0.18945412, 0.7334958), Vector3(-1.1484056, -0.2900904, 0.6867544)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("../../FPRig/Sword:scale") tracks/2/interp = 2 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0, 0.06666667, 0.11666667, 0.15, 0.21666667, 0.3), "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1), "update": 0, "values": [Vector3(1.0000001, 1.0000001, 1.0000005), Vector3(1, 1.0004268, 1.0000002), Vector3(0.99999994, 1.2493719, 0.99999976), Vector3(1.0000001, 1.1750004, 1.0000004), Vector3(0.99999994, 0.99999994, 0.99999994), Vector3(1.0000001, 0.9999999, 1)] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("..:rotation") tracks/3/interp = 2 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0, 0.083333336, 0.11666667, 0.2, 0.23333333, 0.3), "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1), "update": 0, "values": [Vector3(0, 0, 0), Vector3(0, 0, 0), Vector3(0, 0, 0.00011616433), Vector3(0, -0.02617994, -0.02617994), Vector3(0, 0.02617994, 0.02617994), Vector3(0, 0, 0)] } tracks/4/type = "method" tracks/4/imported = false tracks/4/enabled = true tracks/4/path = NodePath("../..") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0.083333336, 0.23333333), "transitions": PackedFloat32Array(1, 1), "values": [{ "args": [], "method": &"OnHitboxActivated" }, { "args": [], "method": &"OnHitboxDeactivated" }] } [sub_resource type="Animation" id="Animation_0hyrq"] resource_name = "idle" length = 2.0 loop_mode = 1 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("../../FPRig/Sword:position") tracks/0/interp = 2 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.3, 0.6, 1, 1.4), "transitions": PackedFloat32Array(1, 1, 1, 1, 1), "update": 0, "values": [Vector3(0.53640664, -0.7880347, -1.9288678), Vector3(0.53640664, -0.83580256, -1.9288678), Vector3(0.53640664, -0.86088884, -1.9288678), Vector3(0.53640664, -0.8256072, -1.9288678), Vector3(0.53640664, -0.7880347, -1.9288678)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("../../FPRig/Sword:rotation") tracks/1/interp = 2 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.3, 0.6, 1, 1.4), "transitions": PackedFloat32Array(1, 1, 1, 1, 1), "update": 0, "values": [Vector3(-0.083978735, -1.136043, 0.19867715), Vector3(-0.06987281, -1.1365474, 0.20524277), Vector3(-0.05990464, -1.1368362, 0.20987195), Vector3(-0.06303402, -1.1367121, 0.2084137), Vector3(-0.083978735, -1.136043, 0.19867715)] } [sub_resource type="Animation" id="Animation_1ay6d"] resource_name = "jump_end" length = 0.26667002 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("..:rotation") tracks/0/interp = 2 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.13333334, 0.26666668), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector3(0, 0, 0.00011616433), Vector3(-0.08726646, 0, 0), Vector3(0, 0, 0)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("..:position") tracks/1/interp = 2 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.06666667, 0.26666668), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector3(0, 0, 0), Vector3(0, -0.05, 0), Vector3(0, 0, 0)] } [sub_resource type="Animation" id="Animation_ubhf8"] resource_name = "jump_start" length = 0.26667002 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("..:position") tracks/0/interp = 2 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.06666667, 0.26666668), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector3(0, 0, 0), Vector3(0, -0.1, 0), Vector3(0, 0, 0)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("..:rotation") tracks/1/interp = 2 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.13333334, 0.26666668), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector3(0, 0, 0.00011616433), Vector3(-0.08726646, 0, 0), Vector3(0, 0, 0)] } [sub_resource type="Animation" id="Animation_8abgy"] resource_name = "mantle" length = 0.3 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("..:rotation") tracks/0/interp = 2 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.1, 0.3), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector3(0, 0, 0.00011616433), Vector3(-0.5235988, 0, 0), Vector3(0, 0, 0)] } [sub_resource type="AnimationLibrary" id="AnimationLibrary_0hyrq"] _data = { &"RESET": SubResource("Animation_urko7"), &"hit1": SubResource("Animation_r0h40"), &"idle": SubResource("Animation_0hyrq"), &"jump_end": SubResource("Animation_1ay6d"), &"jump_start": SubResource("Animation_ubhf8"), &"mantle": SubResource("Animation_8abgy") } [node name="HeadSystem" type="Node3D"] script = ExtResource("1_8abgy") WeaponMoveRotation = 20.0 DisplacedWeaponSway = 1.0 DisplacedWeaponAdjustmentSpeed = 8.0 [node name="FPRig" type="Node3D" parent="."] [node name="Sword" type="Node3D" parent="FPRig"] transform = Transform3D(0.42791694, -0.008550272, -0.9037781, 0.19667713, 0.9768738, 0.0838801, 0.88215953, -0.2136461, 0.41970265, 0.53640664, -0.7880347, -1.9288678) [node name="SwordMesh" type="MeshInstance3D" parent="FPRig/Sword"] transform = Transform3D(1, 0, 0, 0, 0.99999994, 0, 0, 0, 1, 0, 0, 0) cast_shadow = 0 mesh = ExtResource("2_c5qep") [node name="CameraSmooth" type="Node3D" parent="."] transform = Transform3D(1, -0.00011616431, 0, 0.00011616433, 0.9999998, 0, 0, 0, 0.9999998, 0, 0, 0) [node name="Camera3D" type="Camera3D" parent="CameraSmooth"] transform = Transform3D(1, -7.508787e-09, -1.4551914e-08, 7.508788e-09, 0.99999994, -1.5046679e-08, 1.4551915e-08, 1.5046679e-08, 0.99999994, -0.04610423, -0.02960227, -0.053528003) current = true fov = 90.0 [node name="OnGetHitShaker" type="Node3D" parent="CameraSmooth/Camera3D"] transform = Transform3D(1, 0, 0, -7.275958e-12, 0.99999976, 0, 0, 0, 0.99999976, 0, 1.8626451e-09, 3.7252903e-09) script = ExtResource("3_ubhf8") intensity = 1.2 duration = 0.5 fade_in = 0.06470415 fade_out = 0.46651623 shakerPreset = SubResource("Resource_60ouj") metadata/_custom_type_script = "uid://dnlxsrumw6ygp" [node name="OnHitShaker" type="Node3D" parent="CameraSmooth/Camera3D"] transform = Transform3D(1, 0, 0, -7.275958e-12, 0.99999976, 0, 0, 0, 0.99999976, 0, 1.8626451e-09, 3.7252903e-09) script = ExtResource("3_ubhf8") duration = 0.3 fade_in = 0.041234624 fade_out = 0.5547845 shakerPreset = SubResource("Resource_se3kf") metadata/_custom_type_script = "uid://dnlxsrumw6ygp" [node name="CameraAnchor" type="Marker3D" parent="."] [node name="AnimationPlayer" type="AnimationPlayer" parent="."] root_node = NodePath("../CameraSmooth/Camera3D") libraries = { &"": SubResource("AnimationLibrary_0hyrq") } [node name="AnimationTree" type="AnimationTree" parent="."] root_node = NodePath("../CameraSmooth/Camera3D") tree_root = ExtResource("3_r0h40") anim_player = NodePath("../AnimationPlayer") parameters/OnHit/active = false parameters/OnHit/internal_active = false parameters/OnHit/request = 0 parameters/OnJumpStart/active = false parameters/OnJumpStart/internal_active = false parameters/OnJumpStart/request = 0 parameters/OnJumpEnd/active = false parameters/OnJumpEnd/internal_active = false parameters/OnJumpEnd/request = 0 parameters/OnMantle/active = false parameters/OnMantle/internal_active = false parameters/OnMantle/request = 0 [connection signal="GotHit" from="." to="CameraSmooth/Camera3D/OnGetHitShaker" method="play_shake"] [connection signal="HitTarget" from="." to="CameraSmooth/Camera3D/OnHitShaker" method="play_shake"]