refactor to state machine
This commit is contained in:
+50
-18
@@ -1,10 +1,13 @@
|
||||
[gd_scene load_steps=12 format=3 uid="uid://8esyynmieyog"]
|
||||
[gd_scene load_steps=17 format=3 uid="uid://8esyynmieyog"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/runner.gd" id="1_d63rt"]
|
||||
[ext_resource type="Script" path="res://scripts/runner_input.gd" id="2_xmliy"]
|
||||
[ext_resource type="Script" path="res://scripts/multiplayer/input.gd" id="2_xmliy"]
|
||||
[ext_resource type="Material" uid="uid://ccrb46njti2ke" path="res://materials/runner.tres" id="3_6c0ro"]
|
||||
[ext_resource type="Script" path="res://scripts/state_machine.gd" id="4_40cmc"]
|
||||
[ext_resource type="Script" path="res://scripts/states/state_machine.gd" id="4_40cmc"]
|
||||
[ext_resource type="Script" path="res://scripts/states/idle.gd" id="5_hq6tn"]
|
||||
[ext_resource type="Script" path="res://scripts/states/run.gd" id="6_1teax"]
|
||||
[ext_resource type="Script" path="res://scripts/states/fall.gd" id="7_jfat4"]
|
||||
[ext_resource type="Script" path="res://scripts/states/walk.gd" id="8_phh70"]
|
||||
|
||||
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_ukf45"]
|
||||
properties/0/path = NodePath(".:player_id")
|
||||
@@ -18,9 +21,12 @@ properties/2/spawn = true
|
||||
properties/2/replication_mode = 2
|
||||
|
||||
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_1agtp"]
|
||||
properties/0/path = NodePath("RunnerInput:move_direction")
|
||||
properties/0/path = NodePath("Input:direction")
|
||||
properties/0/spawn = true
|
||||
properties/0/replication_mode = 2
|
||||
properties/1/path = NodePath("Input:walking")
|
||||
properties/1/spawn = true
|
||||
properties/1/replication_mode = 2
|
||||
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_wsx1k"]
|
||||
|
||||
@@ -34,52 +40,78 @@ height = 1.8
|
||||
|
||||
[sub_resource type="PrismMesh" id="PrismMesh_fcj1v"]
|
||||
|
||||
[node name="Runner" type="CharacterBody3D"]
|
||||
script = ExtResource("1_d63rt")
|
||||
[sub_resource type="SphereMesh" id="SphereMesh_tudvv"]
|
||||
|
||||
[node name="RunnerSync" type="MultiplayerSynchronizer" parent="."]
|
||||
[sub_resource type="SphereMesh" id="SphereMesh_1gltg"]
|
||||
|
||||
[node name="Runner" type="CharacterBody3D" node_paths=PackedStringArray("state_machine")]
|
||||
script = ExtResource("1_d63rt")
|
||||
state_machine = NodePath("StateMachine")
|
||||
|
||||
[node name="Sync" type="MultiplayerSynchronizer" parent="."]
|
||||
replication_config = SubResource("SceneReplicationConfig_ukf45")
|
||||
|
||||
[node name="RunnerInput" type="MultiplayerSynchronizer" parent="."]
|
||||
[node name="Input" type="MultiplayerSynchronizer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
replication_config = SubResource("SceneReplicationConfig_1agtp")
|
||||
script = ExtResource("2_xmliy")
|
||||
|
||||
[node name="RunnerCamera" type="Camera3D" parent="."]
|
||||
[node name="Camera" type="Camera3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
|
||||
[node name="CameraPivot" type="Node3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
|
||||
|
||||
[node name="RunnerCameraSpringArm3D" type="SpringArm3D" parent="CameraPivot"]
|
||||
[node name="CameraSpringArm" type="SpringArm3D" parent="CameraPivot"]
|
||||
shape = SubResource("SphereShape3D_wsx1k")
|
||||
spring_length = 3.5
|
||||
|
||||
[node name="RunnerCameraTarget" type="Node3D" parent="CameraPivot/RunnerCameraSpringArm3D"]
|
||||
[node name="CameraTarget" type="Node3D" parent="CameraPivot/CameraSpringArm"]
|
||||
unique_name_in_owner = true
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.5, 0)
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||
[node name="Collider" type="CollisionShape3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
|
||||
shape = SubResource("CapsuleShape3D_j6tb3")
|
||||
|
||||
[node name="RunnerSkin" type="Node3D" parent="."]
|
||||
[node name="Skin" type="Node3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="RunnerSkin"]
|
||||
[node name="MainBody" type="MeshInstance3D" parent="Skin"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
|
||||
mesh = SubResource("CapsuleMesh_di3a0")
|
||||
skeleton = NodePath("../..")
|
||||
surface_material_override/0 = ExtResource("3_6c0ro")
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="RunnerSkin/MeshInstance3D"]
|
||||
transform = Transform3D(0.35, 0, 0, 0, -1.09278e-08, 0.1, 0, -0.25, -4.37114e-09, 0, 0.65, -0.3)
|
||||
[node name="Beak" type="MeshInstance3D" parent="Skin/MainBody"]
|
||||
transform = Transform3D(0.35, 0, 0, 0, -0.105655, 0.0906308, 0, -0.226577, -0.0422618, 0, 0.45, -0.3)
|
||||
mesh = SubResource("PrismMesh_fcj1v")
|
||||
surface_material_override/0 = ExtResource("3_6c0ro")
|
||||
|
||||
[node name="StateMachine" type="Node" parent="."]
|
||||
[node name="RightEye" type="MeshInstance3D" parent="Skin/MainBody"]
|
||||
transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 0.1, 0.6, -0.25)
|
||||
mesh = SubResource("SphereMesh_tudvv")
|
||||
|
||||
[node name="LeftEye" type="MeshInstance3D" parent="Skin/MainBody"]
|
||||
transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, -0.1, 0.6, -0.25)
|
||||
mesh = SubResource("SphereMesh_1gltg")
|
||||
|
||||
[node name="StateMachine" type="Node" parent="." node_paths=PackedStringArray("current_state")]
|
||||
script = ExtResource("4_40cmc")
|
||||
current_state = NodePath("Idle")
|
||||
|
||||
[node name="Idle" type="Node" parent="StateMachine"]
|
||||
unique_name_in_owner = true
|
||||
script = ExtResource("5_hq6tn")
|
||||
|
||||
[node name="Run" type="Node" parent="StateMachine"]
|
||||
unique_name_in_owner = true
|
||||
script = ExtResource("6_1teax")
|
||||
|
||||
[node name="Fall" type="Node" parent="StateMachine"]
|
||||
unique_name_in_owner = true
|
||||
script = ExtResource("7_jfat4")
|
||||
|
||||
[node name="Walk" type="Node" parent="StateMachine"]
|
||||
unique_name_in_owner = true
|
||||
script = ExtResource("8_phh70")
|
||||
|
||||
Reference in New Issue
Block a user