Inventory management focused game written in Godot / C#
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

247 lines
11 KiB

[gd_scene load_steps=22 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/Player.cs" id="1_a0mas"]
[ext_resource type="Script" path="res://player/MovementController.cs" id="2_1pst4"]
[ext_resource type="Script" path="res://player/PushbackArea.cs" id="2_almik"]
[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.24
height = 1.5
[sub_resource type="BoxShape3D" id="BoxShape3D_gtuvx"]
size = Vector3(0.6, 1.6, 0.6)
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_l8s0f"]
radius = 0.24
height = 1.5
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_305lt"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 1
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 1
properties/2/path = NodePath(".:velocity")
properties/2/spawn = true
properties/2/replication_mode = 1
properties/3/path = NodePath("MovementController:InputVector")
properties/3/spawn = true
properties/3/replication_mode = 1
properties/4/path = NodePath("CameraController:CurrentPitch")
properties/4/spawn = true
properties/4/replication_mode = 1
properties/5/path = NodePath("CameraController:CurrentYaw")
properties/5/spawn = true
properties/5/replication_mode = 1
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_v7y1g"]
animation = &"hold"
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_ra5r1"]
animation = &"idle"
[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_10xtt"]
filter_enabled = true
filters = ["Skeleton/Skeleton3D:LowerArm_L", "Skeleton/Skeleton3D:LowerArm_R", "Skeleton/Skeleton3D:UpperArm_L", "Skeleton/Skeleton3D:UpperArm_R", "Skeleton/Skeleton3D:Wrist_L", "Skeleton/Skeleton3D:Wrist_R"]
[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"]
nodes/hold/node = SubResource("AnimationNodeAnimation_v7y1g")
nodes/hold/position = Vector2(800, 340)
nodes/idle/node = SubResource("AnimationNodeAnimation_ra5r1")
nodes/idle/position = Vector2(600, 60)
nodes/is_holding/node = SubResource("AnimationNodeBlend2_10xtt")
nodes/is_holding/position = Vector2(1000, 200)
nodes/not_moving/node = SubResource("AnimationNodeAnimation_cun17")
nodes/not_moving/position = Vector2(400, 60)
nodes/output/position = Vector2(1180, 260)
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 = [&"is_holding", 0, &"walk_state", &"is_holding", 1, &"hold", &"output", 0, &"is_holding", &"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
script = ExtResource("1_a0mas")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("CapsuleShape3D_h1mfd")
[node name="WorkshopTracker" type="Area3D" parent="."]
collision_layer = 0
collision_mask = 1024
monitorable = false
[node name="CollisionShape3D" type="CollisionShape3D" parent="WorkshopTracker"]
shape = SubResource("BoxShape3D_gtuvx")
[node name="PushbackArea" type="Area3D" parent="."]
collision_layer = 4
collision_mask = 4
script = ExtResource("2_almik")
[node name="CollisionShape3D" type="CollisionShape3D" parent="PushbackArea"]
shape = SubResource("CapsuleShape3D_l8s0f")
[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="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_305lt")
[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("../AnimationController/Root/LowerBody/UpperBody/Neck/Head/Camera")
[node name="AnimationController" type="Node3D" parent="." node_paths=PackedStringArray("Skeleton")]
script = ExtResource("3_5rlwc")
Skeleton = NodePath("../Model/Skeleton/Skeleton3D")
[node name="AnimationTree" type="AnimationTree" parent="AnimationController"]
active = false
root_node = NodePath("../../Model")
tree_root = SubResource("AnimationNodeBlendTree_cstk8")
anim_player = NodePath("../../Model/AnimationPlayer")
parameters/is_holding/blend_amount = 0.0
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 = "idle"
parameters/walk_state/transition_request = ""
parameters/walk_state/current_index = 0
[node name="Root" type="BoneAttachment3D" parent="AnimationController"]
transform = Transform3D(1, -8.74228e-08, 0, 0, 0, 1, -8.74228e-08, -1, 0, 2.18384e-09, 0.271327, 0.0249802)
bone_name = "Root"
bone_idx = 2
use_external_skeleton = true
external_skeleton = NodePath("../../Model/Skeleton/Skeleton3D")
[node name="LowerBody" type="BoneAttachment3D" parent="AnimationController/Root"]
transform = Transform3D(-1, 0, 8.74228e-08, 8.71645e-08, 0.0768132, 0.997046, -6.71523e-09, 0.997046, -0.0768132, 0, 0, -0.199593)
bone_name = "LowerBody"
bone_idx = 3
use_external_skeleton = true
external_skeleton = NodePath("../../../Model/Skeleton/Skeleton3D")
[node name="UpperBody" type="BoneAttachment3D" parent="AnimationController/Root/LowerBody"]
transform = Transform3D(1, -1.08108e-08, 8.67517e-08, 0, 0.992324, 0.123662, -8.74228e-08, -0.123662, 0.992324, 1.77636e-15, 0.154362, 0)
bone_name = "UpperBody"
bone_idx = 4
use_external_skeleton = true
external_skeleton = NodePath("../../../../Model/Skeleton/Skeleton3D")
[node name="Neck" type="BoneAttachment3D" parent="AnimationController/Root/LowerBody/UpperBody"]
transform = Transform3D(1, -4.4409e-16, -7.10543e-15, 0, 0.998891, -0.0470728, 0, 0.0470728, 0.998892, -1.11022e-15, 0.251888, 1.49012e-08)
bone_name = "Neck"
bone_idx = 5
use_external_skeleton = true
external_skeleton = NodePath("../../../../../Model/Skeleton/Skeleton3D")
[node name="Head" type="BoneAttachment3D" parent="AnimationController/Root/LowerBody/UpperBody/Neck"]
transform = Transform3D(-1, 7.10543e-15, 8.74228e-08, 8.74228e-08, -7.10543e-15, 1, 0, 1, 7.10543e-15, -2.22045e-16, 0.101598, -3.72529e-09)
bone_name = "Head"
bone_idx = 6
use_external_skeleton = true
external_skeleton = NodePath("../../../../../../Model/Skeleton/Skeleton3D")
[node name="Camera" type="Camera3D" parent="AnimationController/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
current = true
[node name="UpperArm_L" type="BoneAttachment3D" parent="AnimationController/Root/LowerBody/UpperBody"]
transform = Transform3D(-0.572005, 0.82025, 9.68575e-08, -0.819341, -0.571371, -0.0470728, -0.0386114, -0.026926, 0.998891, 0.0873834, 0.213866, -0.00179176)
bone_name = "UpperArm_L"
bone_idx = 7
use_external_skeleton = true
external_skeleton = NodePath("../../../../../Model/Skeleton/Skeleton3D")
[node name="LowerArm_L" type="BoneAttachment3D" parent="AnimationController/Root/LowerBody/UpperBody/UpperArm_L"]
transform = Transform3D(0.999306, 0.0372507, 2.71155e-07, -0.0372507, 0.999306, -3.32672e-09, -2.66575e-07, -3.54041e-09, 1, 0, 0.193644, 0)
bone_name = "LowerArm_L"
bone_idx = 8
use_external_skeleton = true
external_skeleton = NodePath("../../../../../../Model/Skeleton/Skeleton3D")
[node name="Wrist_L" type="BoneAttachment3D" parent="AnimationController/Root/LowerBody/UpperBody/UpperArm_L/LowerArm_L"]
transform = Transform3D(0.999334, 0.0364873, 3.47525e-07, -0.0364873, 0.999334, -1.66881e-08, -3.47903e-07, 3.9968e-09, 1, 1.19209e-07, 0.187995, -1.86265e-09)
bone_name = "Wrist_L"
bone_idx = 9
use_external_skeleton = true
external_skeleton = NodePath("../../../../../../../Model/Skeleton/Skeleton3D")
[node name="UpperArm_R" type="BoneAttachment3D" parent="AnimationController/Root/LowerBody/UpperBody"]
transform = Transform3D(-0.572005, -0.82025, -9.68575e-08, 0.819341, -0.571371, -0.0470728, 0.0386114, -0.026926, 0.998891, -0.0873834, 0.213866, -0.00179176)
bone_name = "UpperArm_R"
bone_idx = 14
use_external_skeleton = true
external_skeleton = NodePath("../../../../../Model/Skeleton/Skeleton3D")
[node name="LowerArm_R" type="BoneAttachment3D" parent="AnimationController/Root/LowerBody/UpperBody/UpperArm_R"]
transform = Transform3D(0.999306, -0.0372507, -2.71155e-07, 0.0372507, 0.999306, -3.3267e-09, 2.69728e-07, -3.66446e-09, 1, 0, 0.193644, 1.86265e-09)
bone_name = "LowerArm_R"
bone_idx = 15
use_external_skeleton = true
external_skeleton = NodePath("../../../../../../Model/Skeleton/Skeleton3D")
[node name="Wrist_R" type="BoneAttachment3D" parent="AnimationController/Root/LowerBody/UpperBody/UpperArm_R/LowerArm_R"]
transform = Transform3D(0.999334, -0.0364873, -3.47525e-07, 0.0364873, 0.999334, -1.66882e-08, 3.47903e-07, 3.99677e-09, 1, -1.19209e-07, 0.187995, -1.86265e-09)
bone_name = "Wrist_R"
bone_idx = 16
use_external_skeleton = true
external_skeleton = NodePath("../../../../../../../Model/Skeleton/Skeleton3D")
[node name="PickupController" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.4, -0.45)
script = ExtResource("2_ns2pe")
[connection signal="area_entered" from="WorkshopTracker" to="." method="OnWorkshopTrackerAreaEntered"]
[connection signal="area_exited" from="WorkshopTracker" to="." method="OnWorkshopTrackerAreaExited"]