Pawn bodies split out, character select redesigned, and started the dreaded process of correcting the netcode. Players can connect to a shared room, character select, and start a match. They appear correctly differentiated with cameras and map icons that follow them independently. Jankiness with trap ownership is present as is stuff connected to animation. Unit tests for all network functionality required.

This commit is contained in:
2026-03-10 01:41:15 -04:00
parent 984567cf96
commit d128501f7c
52 changed files with 1179 additions and 929 deletions

View File

@@ -1,32 +1,32 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://yosnkcj4ci4v"] [gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://yosnkcj4ci4v"]
[ext_resource type="Texture2D" uid="uid://3dj2p3xerc45" path="res://visuals/images/temp_portraits/tg-abdoll-relin.jpg" id="1_4g7al"] [ext_resource type="AudioStream" uid="uid://dhlg3pk3tbirp" path="res://external/sample audio/a.wav" id="1_mtelv"]
[ext_resource type="AudioStream" uid="uid://dhlg3pk3tbirp" path="res://external/sample audio/a.wav" id="1_32lt6"] [ext_resource type="PackedScene" uid="uid://c3s6gqy0s5kus" path="res://templates/pawns/a.tscn" id="2_mtelv"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="2_4g7al"] [ext_resource type="Texture2D" uid="uid://13pdg1vs81as" path="res://external/test portraits/a.png" id="3_qt3l7"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_8dqhi"] [ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_3x7pt"]
[ext_resource type="PackedScene" uid="uid://c3s6gqy0s5kus" path="res://templates/pawns/glitch.tscn" id="2_ptqwn"] [ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_lwcbw"]
[sub_resource type="Resource" id="Resource_4g7al"] [sub_resource type="Resource" id="Resource_4g7al"]
script = ExtResource("2_4g7al") script = ExtResource("5_lwcbw")
type = 1 type = 1
qty = 3 qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_8dqhi"] [sub_resource type="Resource" id="Resource_8dqhi"]
script = ExtResource("2_4g7al") script = ExtResource("5_lwcbw")
type = 5 type = 5
qty = 6 qty = 6
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_32lt6"] [sub_resource type="Resource" id="Resource_32lt6"]
script = ExtResource("2_4g7al") script = ExtResource("5_lwcbw")
type = 2 type = 2
qty = 2 qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource] [resource]
script = ExtResource("2_8dqhi") script = ExtResource("4_3x7pt")
name = "Abdoll Relin" name = "A"
move_speed = 3.0 move_speed = 3.0
life = 75 life = 75
max_life = 75 max_life = 75
@@ -37,8 +37,8 @@ range_damage = 12
range_time = 1.0 range_time = 1.0
melee_time = 1.25 melee_time = 1.25
reload_time = 1.75 reload_time = 1.75
portrait = ExtResource("1_4g7al") portrait = ExtResource("3_qt3l7")
name_audio = ExtResource("1_32lt6") name_audio = ExtResource("1_mtelv")
pawn_body = ExtResource("2_ptqwn") pawn_body = ExtResource("2_mtelv")
starting_hacks = Array[ExtResource("2_4g7al")]([SubResource("Resource_4g7al"), SubResource("Resource_8dqhi"), SubResource("Resource_32lt6")]) starting_hacks = Array[ExtResource("5_lwcbw")]([SubResource("Resource_4g7al"), SubResource("Resource_8dqhi"), SubResource("Resource_32lt6")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1" metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,31 +1,31 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://df4gqi1us2dwu"] [gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://df4gqi1us2dwu"]
[ext_resource type="AudioStream" uid="uid://7dsv6kcptvar" path="res://external/sample audio/b.wav" id="1_idp5c"] [ext_resource type="AudioStream" uid="uid://7dsv6kcptvar" path="res://external/sample audio/b.wav" id="1_vp6uu"]
[ext_resource type="Texture2D" uid="uid://2qoouiv1cf0i" path="res://visuals/images/temp_portraits/tg-john-bishous.jpg" id="1_sb8f5"] [ext_resource type="PackedScene" uid="uid://bum67b50tn8ye" path="res://templates/pawns/b.tscn" id="2_vp6uu"]
[ext_resource type="PackedScene" uid="uid://bum67b50tn8ye" path="res://templates/pawns/veil.tscn" id="2_rv56g"] [ext_resource type="Texture2D" uid="uid://ca6iihdssrh14" path="res://external/test portraits/b.png" id="3_qojdv"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="2_sb8f5"] [ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_0gp76"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_tu5w7"] [ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_ic2r4"]
[sub_resource type="Resource" id="Resource_sb8f5"] [sub_resource type="Resource" id="Resource_sb8f5"]
script = ExtResource("2_sb8f5") script = ExtResource("5_ic2r4")
type = 4 type = 4
qty = 2 qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_tu5w7"] [sub_resource type="Resource" id="Resource_tu5w7"]
script = ExtResource("2_sb8f5") script = ExtResource("5_ic2r4")
qty = 6 qty = 6
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_idp5c"] [sub_resource type="Resource" id="Resource_idp5c"]
script = ExtResource("2_sb8f5") script = ExtResource("5_ic2r4")
type = 2 type = 2
qty = 2 qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource] [resource]
script = ExtResource("2_tu5w7") script = ExtResource("4_0gp76")
name = "John Bishous" name = "B"
move_speed = 2.5 move_speed = 2.5
life = 125 life = 125
max_life = 125 max_life = 125
@@ -36,8 +36,8 @@ range_damage = 20
range_time = 0.75 range_time = 0.75
melee_time = 1.0 melee_time = 1.0
reload_time = 1.75 reload_time = 1.75
portrait = ExtResource("1_sb8f5") portrait = ExtResource("3_qojdv")
name_audio = ExtResource("1_idp5c") name_audio = ExtResource("1_vp6uu")
pawn_body = ExtResource("2_rv56g") pawn_body = ExtResource("2_vp6uu")
starting_hacks = Array[ExtResource("2_sb8f5")]([SubResource("Resource_sb8f5"), SubResource("Resource_tu5w7"), SubResource("Resource_idp5c")]) starting_hacks = Array[ExtResource("5_ic2r4")]([SubResource("Resource_sb8f5"), SubResource("Resource_tu5w7"), SubResource("Resource_idp5c")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1" metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,32 +1,32 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://dnty6gi4s2vdl"] [gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://dnty6gi4s2vdl"]
[ext_resource type="AudioStream" uid="uid://dr3jq3tnvtwu" path="res://external/sample audio/c.wav" id="1_6f6nq"] [ext_resource type="AudioStream" uid="uid://dr3jq3tnvtwu" path="res://external/sample audio/c.wav" id="1_ag1od"]
[ext_resource type="Texture2D" uid="uid://db0n6kjwucthf" path="res://visuals/images/temp_portraits/tg-lou-riche.jpg" id="1_onotk"] [ext_resource type="PackedScene" uid="uid://c6hojd4o764oc" path="res://templates/pawns/c.tscn" id="2_ag1od"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_7kyxn"] [ext_resource type="Texture2D" uid="uid://dm7fo7tt00p1" path="res://external/test portraits/c.png" id="3_1yr5w"]
[ext_resource type="PackedScene" uid="uid://c6hojd4o764oc" path="res://templates/pawns/miko.tscn" id="2_54xui"] [ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_nmvyh"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="2_onotk"] [ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_2i1hp"]
[sub_resource type="Resource" id="Resource_onotk"] [sub_resource type="Resource" id="Resource_onotk"]
script = ExtResource("2_onotk") script = ExtResource("5_2i1hp")
type = 1 type = 1
qty = 5 qty = 5
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_7kyxn"] [sub_resource type="Resource" id="Resource_7kyxn"]
script = ExtResource("2_onotk") script = ExtResource("5_2i1hp")
type = 2 type = 2
qty = 1 qty = 1
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_6f6nq"] [sub_resource type="Resource" id="Resource_6f6nq"]
script = ExtResource("2_onotk") script = ExtResource("5_2i1hp")
type = 3 type = 3
qty = 3 qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource] [resource]
script = ExtResource("2_7kyxn") script = ExtResource("4_nmvyh")
name = "Lou Riche" name = "C"
move_speed = 3.0 move_speed = 3.0
life = 100 life = 100
ammo = 6 ammo = 6
@@ -35,8 +35,8 @@ melee_damage = 12
range_damage = 4 range_damage = 4
range_time = 0.4 range_time = 0.4
melee_time = 1.25 melee_time = 1.25
portrait = ExtResource("1_onotk") portrait = ExtResource("3_1yr5w")
name_audio = ExtResource("1_6f6nq") name_audio = ExtResource("1_ag1od")
pawn_body = ExtResource("2_54xui") pawn_body = ExtResource("2_ag1od")
starting_hacks = Array[ExtResource("2_onotk")]([SubResource("Resource_onotk"), SubResource("Resource_7kyxn"), SubResource("Resource_6f6nq")]) starting_hacks = Array[ExtResource("5_2i1hp")]([SubResource("Resource_onotk"), SubResource("Resource_7kyxn"), SubResource("Resource_6f6nq")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1" metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,32 +1,32 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://bpb2nok3rqm1g"] [gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://bpb2nok3rqm1g"]
[ext_resource type="Texture2D" uid="uid://ci86bksme5114" path="res://visuals/images/temp_portraits/tg-tenrou-ugetsu.jpg" id="1_fm4bf"] [ext_resource type="AudioStream" uid="uid://dsikjobcle18a" path="res://external/sample audio/d.wav" id="1_l2iwo"]
[ext_resource type="AudioStream" uid="uid://dsikjobcle18a" path="res://external/sample audio/d.wav" id="1_vnwdb"] [ext_resource type="PackedScene" uid="uid://bqg51qfb0cj8y" path="res://templates/pawns/d.tscn" id="2_l2iwo"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_0fl5x"] [ext_resource type="Texture2D" uid="uid://b2ovogspuupqa" path="res://external/test portraits/d.png" id="3_b6a3y"]
[ext_resource type="PackedScene" uid="uid://bqg51qfb0cj8y" path="res://templates/pawns/mr_tingles.tscn" id="2_4mj1t"] [ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_8vcih"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="3_fm4bf"] [ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_v5xcc"]
[sub_resource type="Resource" id="Resource_0fl5x"] [sub_resource type="Resource" id="Resource_0fl5x"]
script = ExtResource("3_fm4bf") script = ExtResource("5_v5xcc")
type = 1 type = 1
qty = 2 qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_vnwdb"] [sub_resource type="Resource" id="Resource_vnwdb"]
script = ExtResource("3_fm4bf") script = ExtResource("5_v5xcc")
type = 5 type = 5
qty = 3 qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_4mj1t"] [sub_resource type="Resource" id="Resource_4mj1t"]
script = ExtResource("3_fm4bf") script = ExtResource("5_v5xcc")
type = 3 type = 3
qty = 2 qty = 2
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource] [resource]
script = ExtResource("2_0fl5x") script = ExtResource("4_8vcih")
name = "Tenrou Ugetsu" name = "D"
move_speed = 3.5 move_speed = 3.5
life = 100 life = 100
ammo = 7 ammo = 7
@@ -36,8 +36,8 @@ range_damage = 3
range_time = 0.3 range_time = 0.3
melee_time = 1.25 melee_time = 1.25
reload_time = 0.6 reload_time = 0.6
portrait = ExtResource("1_fm4bf") portrait = ExtResource("3_b6a3y")
name_audio = ExtResource("1_vnwdb") name_audio = ExtResource("1_l2iwo")
pawn_body = ExtResource("2_4mj1t") pawn_body = ExtResource("2_l2iwo")
starting_hacks = Array[ExtResource("3_fm4bf")]([SubResource("Resource_0fl5x"), SubResource("Resource_vnwdb"), SubResource("Resource_4mj1t")]) starting_hacks = Array[ExtResource("5_v5xcc")]([SubResource("Resource_0fl5x"), SubResource("Resource_vnwdb"), SubResource("Resource_4mj1t")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1" metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,32 +1,32 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://casciqabe0wgo"] [gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://casciqabe0wgo"]
[ext_resource type="Texture2D" uid="uid://bsug1ur2gifkh" path="res://visuals/images/temp_portraits/tg-tico.jpg" id="1_o3qj5"] [ext_resource type="AudioStream" uid="uid://dornjmfg37bv0" path="res://external/sample audio/e.wav" id="1_hlw2y"]
[ext_resource type="AudioStream" uid="uid://dornjmfg37bv0" path="res://external/sample audio/e.wav" id="1_o75pd"] [ext_resource type="PackedScene" uid="uid://bb6a6wu2kc3fr" path="res://templates/pawns/e.tscn" id="2_hlw2y"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_cxp03"] [ext_resource type="Texture2D" uid="uid://b2rynijk10l8a" path="res://external/test portraits/e.png" id="3_1j2en"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="2_o3qj5"] [ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_jmlxg"]
[ext_resource type="PackedScene" uid="uid://bb6a6wu2kc3fr" path="res://templates/pawns/pawn_body.tscn" id="2_wsuu3"] [ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_f1khw"]
[sub_resource type="Resource" id="Resource_o3qj5"] [sub_resource type="Resource" id="Resource_o3qj5"]
script = ExtResource("2_o3qj5") script = ExtResource("5_f1khw")
type = 4 type = 4
qty = 3 qty = 3
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_cxp03"] [sub_resource type="Resource" id="Resource_cxp03"]
script = ExtResource("2_o3qj5") script = ExtResource("5_f1khw")
type = 5 type = 5
qty = 4 qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_o75pd"] [sub_resource type="Resource" id="Resource_o75pd"]
script = ExtResource("2_o3qj5") script = ExtResource("5_f1khw")
type = 3 type = 3
qty = 4 qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource] [resource]
script = ExtResource("2_cxp03") script = ExtResource("4_jmlxg")
name = "Tico" name = "E"
move_speed = 3.0 move_speed = 3.0
life = 75 life = 75
max_life = 75 max_life = 75
@@ -37,8 +37,8 @@ range_damage = 10
range_time = 1.0 range_time = 1.0
melee_time = 1.25 melee_time = 1.25
reload_time = 2.0 reload_time = 2.0
portrait = ExtResource("1_o3qj5") portrait = ExtResource("3_1j2en")
name_audio = ExtResource("1_o75pd") name_audio = ExtResource("1_hlw2y")
pawn_body = ExtResource("2_wsuu3") pawn_body = ExtResource("2_hlw2y")
starting_hacks = Array[ExtResource("2_o3qj5")]([SubResource("Resource_o3qj5"), SubResource("Resource_cxp03"), SubResource("Resource_o75pd")]) starting_hacks = Array[ExtResource("5_f1khw")]([SubResource("Resource_o3qj5"), SubResource("Resource_cxp03"), SubResource("Resource_o75pd")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1" metadata/_custom_type_script = "uid://c53ohdio1ksp1"

View File

@@ -1,31 +1,31 @@
[gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://6s8tqfssrt5i"] [gd_resource type="Resource" script_class="PawnBaseData" load_steps=9 format=3 uid="uid://6s8tqfssrt5i"]
[ext_resource type="AudioStream" uid="uid://bqu2otr8b1oj6" path="res://external/sample audio/f.wav" id="1_2pr8m"] [ext_resource type="AudioStream" uid="uid://bqu2otr8b1oj6" path="res://external/sample audio/f.wav" id="1_2oi4n"]
[ext_resource type="Texture2D" uid="uid://bp6wc55s2t4si" path="res://visuals/images/temp_portraits/tg-van-raily.jpg" id="1_crpmc"] [ext_resource type="PackedScene" uid="uid://cwrxbjgwbiv81" path="res://templates/pawns/f.tscn" id="2_2oi4n"]
[ext_resource type="PackedScene" uid="uid://cwrxbjgwbiv81" path="res://templates/pawns/zero.tscn" id="2_1yw33"] [ext_resource type="Texture2D" uid="uid://c265jqwykqc2s" path="res://external/test portraits/f.png" id="3_ttwdt"]
[ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="2_crpmc"] [ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="4_mlun8"]
[ext_resource type="Script" uid="uid://c53ohdio1ksp1" path="res://data/pawn_base_data.gd" id="2_nf0ju"] [ext_resource type="Script" uid="uid://b0b1107c0d807" path="res://data/hackset.gd" id="5_2hgkw"]
[sub_resource type="Resource" id="Resource_crpmc"] [sub_resource type="Resource" id="Resource_crpmc"]
script = ExtResource("2_crpmc") script = ExtResource("5_2hgkw")
type = 4 type = 4
qty = 1 qty = 1
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_nf0ju"] [sub_resource type="Resource" id="Resource_nf0ju"]
script = ExtResource("2_crpmc") script = ExtResource("5_2hgkw")
qty = 4 qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[sub_resource type="Resource" id="Resource_2pr8m"] [sub_resource type="Resource" id="Resource_2pr8m"]
script = ExtResource("2_crpmc") script = ExtResource("5_2hgkw")
type = 1 type = 1
qty = 4 qty = 4
metadata/_custom_type_script = "uid://b0b1107c0d807" metadata/_custom_type_script = "uid://b0b1107c0d807"
[resource] [resource]
script = ExtResource("2_nf0ju") script = ExtResource("4_mlun8")
name = "Van Raily" name = "F"
move_speed = 3.0 move_speed = 3.0
life = 100 life = 100
ammo = 5 ammo = 5
@@ -33,8 +33,8 @@ melee_damage = 10
range_damage = 5 range_damage = 5
range_time = 0.5 range_time = 0.5
melee_time = 1.0 melee_time = 1.0
portrait = ExtResource("1_crpmc") portrait = ExtResource("3_ttwdt")
name_audio = ExtResource("1_2pr8m") name_audio = ExtResource("1_2oi4n")
pawn_body = ExtResource("2_1yw33") pawn_body = ExtResource("2_2oi4n")
starting_hacks = Array[ExtResource("2_crpmc")]([SubResource("Resource_crpmc"), SubResource("Resource_nf0ju"), SubResource("Resource_2pr8m")]) starting_hacks = Array[ExtResource("5_2hgkw")]([SubResource("Resource_crpmc"), SubResource("Resource_nf0ju"), SubResource("Resource_2pr8m")])
metadata/_custom_type_script = "uid://c53ohdio1ksp1" metadata/_custom_type_script = "uid://c53ohdio1ksp1"

BIN
external/test portraits/a.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

40
external/test portraits/a.png.import vendored Normal file
View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://13pdg1vs81as"
path="res://.godot/imported/a.png-ebbbc7f6f20fea8e38d2eb9b9f504ae6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://external/test portraits/a.png"
dest_files=["res://.godot/imported/a.png-ebbbc7f6f20fea8e38d2eb9b9f504ae6.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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

BIN
external/test portraits/b.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

40
external/test portraits/b.png.import vendored Normal file
View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ca6iihdssrh14"
path="res://.godot/imported/b.png-c4aed0756051058e2c54ebf8a9768024.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://external/test portraits/b.png"
dest_files=["res://.godot/imported/b.png-c4aed0756051058e2c54ebf8a9768024.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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

BIN
external/test portraits/c.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

40
external/test portraits/c.png.import vendored Normal file
View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dm7fo7tt00p1"
path="res://.godot/imported/c.png-959ec224d08023f8cd903e843fd686a9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://external/test portraits/c.png"
dest_files=["res://.godot/imported/c.png-959ec224d08023f8cd903e843fd686a9.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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

BIN
external/test portraits/d.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 KiB

40
external/test portraits/d.png.import vendored Normal file
View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b2ovogspuupqa"
path="res://.godot/imported/d.png-eab85833b41c1be7a701598ea9d65289.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://external/test portraits/d.png"
dest_files=["res://.godot/imported/d.png-eab85833b41c1be7a701598ea9d65289.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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

BIN
external/test portraits/e.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

40
external/test portraits/e.png.import vendored Normal file
View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b2rynijk10l8a"
path="res://.godot/imported/e.png-2e8cf58eaf7604a4ffa5b244bcce0759.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://external/test portraits/e.png"
dest_files=["res://.godot/imported/e.png-2e8cf58eaf7604a4ffa5b244bcce0759.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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

BIN
external/test portraits/f.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

40
external/test portraits/f.png.import vendored Normal file
View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c265jqwykqc2s"
path="res://.godot/imported/f.png-781e05d9cb8315bdfb553bff384fdaac.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://external/test portraits/f.png"
dest_files=["res://.godot/imported/f.png-781e05d9cb8315bdfb553bff384fdaac.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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

View File

@@ -7,6 +7,11 @@ resource_name = "texture_0"
transparency = 4 transparency = 4
cull_mode = 2 cull_mode = 2
shading_mode = 0 shading_mode = 0
diffuse_mode = 3
specular_mode = 2
disable_ambient_light = true
disable_fog = true
disable_specular_occlusion = true
albedo_texture = ExtResource("1_anj20") albedo_texture = ExtResource("1_anj20")
texture_filter = 0 texture_filter = 0
texture_repeat = false texture_repeat = false

View File

@@ -1,73 +1,11 @@
[gd_scene load_steps=13 format=3 uid="uid://ck4x56txf676a"] [gd_scene load_steps=6 format=3 uid="uid://ck4x56txf676a"]
[ext_resource type="Script" uid="uid://grs3nyom325o" path="res://scripts/character_select.gd" id="1_bow2h"] [ext_resource type="Script" uid="uid://grs3nyom325o" path="res://scripts/character_select.gd" id="1_bow2h"]
[ext_resource type="PackedScene" uid="uid://46rpw0rrd51m" path="res://templates/pawn_display.tscn" id="2_5wdeo"] [ext_resource type="PackedScene" uid="uid://46rpw0rrd51m" path="res://templates/pawn_display.tscn" id="2_5wdeo"]
[ext_resource type="Texture2D" uid="uid://dri0a20l6kpbj" path="res://visuals/images/icon.svg" id="2_uxcyu"]
[ext_resource type="AudioStream" uid="uid://vcatohtmt8bk" path="res://audio/old-music/16 - Character Select.mp3" id="3_bow2h"] [ext_resource type="AudioStream" uid="uid://vcatohtmt8bk" path="res://audio/old-music/16 - Character Select.mp3" id="3_bow2h"]
[ext_resource type="AudioStream" uid="uid://cwmfd8ov3lj1h" path="res://audio/sounds/menu select.wav" id="7_bqp8h"] [ext_resource type="AudioStream" uid="uid://cwmfd8ov3lj1h" path="res://audio/sounds/menu select.wav" id="7_bqp8h"]
[ext_resource type="AudioStream" uid="uid://doelc8yt5snc2" path="res://audio/sounds/Keypad A.wav" id="8_5cdo8"] [ext_resource type="AudioStream" uid="uid://doelc8yt5snc2" path="res://audio/sounds/Keypad A.wav" id="8_5cdo8"]
[sub_resource type="Shader" id="Shader_fa52j"]
code = "shader_type canvas_item;
uniform sampler2D main_texture;
uniform float granularity : hint_range(5, 30) = 15.0;
uniform float opacity_limit;
float random (vec2 uv) {
return fract(sin(dot(uv.xy,
vec2(12.9898,78.233))) * 43758.5453123);
}
void vertex() {
// Called for every vertex the material is visible on.
}
void fragment() {
// Called for every pixel the material is visible on.
vec2 uv = UV;
float g = ( pow(granularity, 2));
uv = round((uv * g)) / g;
uv.y = TIME * uv.y + TIME * .05;
uv.x = 10.0 * TIME * uv.x + TIME * 1.0;
float val = random(uv);
float op = random(-uv) / val;
float alpha = 1.0;
if(op < opacity_limit){
alpha = 0.0;
}
vec4 color = vec4(val, val, val, alpha * COLOR.a);
COLOR = color;
}
//void light() {
// // Called for every pixel for every light affecting the CanvasItem.
// // Uncomment to replace the default light processing function with this one.
//}
"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_5wdeo"]
shader = SubResource("Shader_fa52j")
shader_parameter/granularity = 10.0000002375
shader_parameter/opacity_limit = 0.86
[sub_resource type="Gradient" id="Gradient_ak2if"]
offsets = PackedFloat32Array(0)
colors = PackedColorArray(0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_fa52j"]
gradient = SubResource("Gradient_ak2if")
width = 1
[sub_resource type="Gradient" id="Gradient_w1hxv"]
offsets = PackedFloat32Array(1)
colors = PackedColorArray(1, 1, 1, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_bqp8h"]
gradient = SubResource("Gradient_w1hxv")
width = 1
[node name="Control" type="Control" groups=["scenes"]] [node name="Control" type="Control" groups=["scenes"]]
layout_mode = 3 layout_mode = 3
anchors_preset = 15 anchors_preset = 15
@@ -90,395 +28,84 @@ anchor_bottom = 1.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
[node name="Control" type="Control" parent="Panel"] [node name="PawnDisplays" type="Control" parent="Panel"]
unique_name_in_owner = true
anchors_preset = 0 anchors_preset = 0
offset_left = 94.0 offset_left = 94.0
offset_top = 98.0 offset_top = 98.0
offset_right = 134.0 offset_right = 134.0
offset_bottom = 138.0 offset_bottom = 138.0
[node name="P1PawnDisplay" parent="Panel/Control" instance=ExtResource("2_5wdeo")] [node name="PawnDisplay" parent="Panel/PawnDisplays" instance=ExtResource("2_5wdeo")]
unique_name_in_owner = true
layout_mode = 0 layout_mode = 0
offset_left = 0.0 offset_left = -29.0
offset_top = 0.0 offset_top = -65.0
offset_right = 700.0 offset_right = 471.0
offset_bottom = 700.0 offset_bottom = 435.0
[node name="P2PawnDisplay" parent="Panel/Control" instance=ExtResource("2_5wdeo")] [node name="PawnDisplay2" parent="Panel/PawnDisplays" instance=ExtResource("2_5wdeo")]
unique_name_in_owner = true
layout_mode = 0 layout_mode = 0
offset_left = 1032.0 offset_left = 1258.0
offset_top = 0.0 offset_top = -65.0
offset_right = 1732.0 offset_right = 1758.0
offset_bottom = 700.0 offset_bottom = 435.0
[node name="PawnName" parent="Panel/Control/P2PawnDisplay/Control" index="0"] [node name="PawnDisplay3" parent="Panel/PawnDisplays" instance=ExtResource("2_5wdeo")]
modulate = Color(0.78848296, 0, 0.22455063, 1) layout_mode = 0
offset_left = 36.0
offset_top = 451.0
offset_right = 536.0
offset_bottom = 951.0
[node name="Panel2" type="Panel" parent="."] [node name="PawnDisplay4" parent="Panel/PawnDisplays" instance=ExtResource("2_5wdeo")]
layout_mode = 0
offset_left = 1192.0
offset_top = 456.0
offset_right = 1692.0
offset_bottom = 956.0
[node name="Panel2" type="Control" parent="."]
custom_minimum_size = Vector2(0, 250) custom_minimum_size = Vector2(0, 250)
layout_mode = 1 anchors_preset = 0
anchors_preset = 12 offset_left = 727.0
anchor_top = 1.0 offset_top = 98.0
anchor_right = 1.0 offset_right = 877.0
anchor_bottom = 1.0 offset_bottom = 348.0
grow_horizontal = 2
grow_vertical = 0
[node name="HBoxContainer" type="HBoxContainer" parent="Panel2"] [node name="PawnPickPortraits" type="GridContainer" parent="Panel2"]
unique_name_in_owner = true
layout_mode = 1 layout_mode = 1
anchors_preset = 8 anchors_preset = 8
anchor_left = 0.5 anchor_left = 0.5
anchor_top = 0.5 anchor_top = 0.5
anchor_right = 0.5 anchor_right = 0.5
anchor_bottom = 0.5 anchor_bottom = 0.5
offset_left = -512.5 offset_left = -75.0
offset_top = -75.0 offset_top = -114.0
offset_right = 512.5 offset_right = 383.0
offset_bottom = 75.0 offset_bottom = 806.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/separation = 25
alignment = 1
[node name="Panel" type="Panel" parent="Panel2/HBoxContainer"]
custom_minimum_size = Vector2(150, 150)
layout_mode = 2
[node name="Portrait" type="TextureRect" parent="Panel2/HBoxContainer/Panel"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_uxcyu")
expand_mode = 1
[node name="Control" type="Control" parent="Panel2/HBoxContainer/Panel"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Static" type="TextureRect" parent="Panel2/HBoxContainer/Panel/Control"]
material = SubResource("ShaderMaterial_5wdeo")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_fa52j")
expand_mode = 1
[node name="Green Tint" type="TextureRect" parent="Panel2/HBoxContainer/Panel/Control"]
modulate = Color(0, 0.6039216, 0, 0.42745098)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_bqp8h")
expand_mode = 1
[node name="NinePatchRect" type="NinePatchRect" parent="Panel2/HBoxContainer/Panel"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Panel2" type="Panel" parent="Panel2/HBoxContainer"]
custom_minimum_size = Vector2(150, 150)
layout_mode = 2
[node name="Portrait" type="TextureRect" parent="Panel2/HBoxContainer/Panel2"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_uxcyu")
expand_mode = 1
[node name="Control" type="Control" parent="Panel2/HBoxContainer/Panel2"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Static" type="TextureRect" parent="Panel2/HBoxContainer/Panel2/Control"]
material = SubResource("ShaderMaterial_5wdeo")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_fa52j")
expand_mode = 1
[node name="Green Tint" type="TextureRect" parent="Panel2/HBoxContainer/Panel2/Control"]
modulate = Color(0, 0.6039216, 0, 0.42745098)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_bqp8h")
expand_mode = 1
[node name="NinePatchRect" type="NinePatchRect" parent="Panel2/HBoxContainer/Panel2"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Panel3" type="Panel" parent="Panel2/HBoxContainer"]
custom_minimum_size = Vector2(150, 150)
layout_mode = 2
[node name="Portrait" type="TextureRect" parent="Panel2/HBoxContainer/Panel3"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_uxcyu")
expand_mode = 1
[node name="Control" type="Control" parent="Panel2/HBoxContainer/Panel3"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Static" type="TextureRect" parent="Panel2/HBoxContainer/Panel3/Control"]
material = SubResource("ShaderMaterial_5wdeo")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_fa52j")
expand_mode = 1
[node name="Green Tint" type="TextureRect" parent="Panel2/HBoxContainer/Panel3/Control"]
modulate = Color(0, 0.6039216, 0, 0.42745098)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_bqp8h")
expand_mode = 1
[node name="NinePatchRect" type="NinePatchRect" parent="Panel2/HBoxContainer/Panel3"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Panel4" type="Panel" parent="Panel2/HBoxContainer"]
custom_minimum_size = Vector2(150, 150)
layout_mode = 2
[node name="Portrait" type="TextureRect" parent="Panel2/HBoxContainer/Panel4"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_uxcyu")
expand_mode = 1
[node name="Control" type="Control" parent="Panel2/HBoxContainer/Panel4"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Static" type="TextureRect" parent="Panel2/HBoxContainer/Panel4/Control"]
material = SubResource("ShaderMaterial_5wdeo")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_fa52j")
expand_mode = 1
[node name="Green Tint" type="TextureRect" parent="Panel2/HBoxContainer/Panel4/Control"]
modulate = Color(0, 0.6039216, 0, 0.42745098)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_bqp8h")
expand_mode = 1
[node name="NinePatchRect" type="NinePatchRect" parent="Panel2/HBoxContainer/Panel4"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Panel5" type="Panel" parent="Panel2/HBoxContainer"]
custom_minimum_size = Vector2(150, 150)
layout_mode = 2
[node name="Portrait" type="TextureRect" parent="Panel2/HBoxContainer/Panel5"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_uxcyu")
expand_mode = 1
[node name="Control" type="Control" parent="Panel2/HBoxContainer/Panel5"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Static" type="TextureRect" parent="Panel2/HBoxContainer/Panel5/Control"]
material = SubResource("ShaderMaterial_5wdeo")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_fa52j")
expand_mode = 1
[node name="Green Tint" type="TextureRect" parent="Panel2/HBoxContainer/Panel5/Control"]
modulate = Color(0, 0.6039216, 0, 0.42745098)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_bqp8h")
expand_mode = 1
[node name="NinePatchRect" type="NinePatchRect" parent="Panel2/HBoxContainer/Panel5"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Panel6" type="Panel" parent="Panel2/HBoxContainer"]
custom_minimum_size = Vector2(150, 150)
layout_mode = 2
[node name="Portrait" type="TextureRect" parent="Panel2/HBoxContainer/Panel6"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_uxcyu")
expand_mode = 1
[node name="Control" type="Control" parent="Panel2/HBoxContainer/Panel6"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Static" type="TextureRect" parent="Panel2/HBoxContainer/Panel6/Control"]
material = SubResource("ShaderMaterial_5wdeo")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_fa52j")
expand_mode = 1
[node name="Green Tint" type="TextureRect" parent="Panel2/HBoxContainer/Panel6/Control"]
modulate = Color(0, 0.6039216, 0, 0.42745098)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_bqp8h")
expand_mode = 1
[node name="NinePatchRect" type="NinePatchRect" parent="Panel2/HBoxContainer/Panel6"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
columns = 3
[node name="SelectorStart" type="Control" parent="Panel2"] [node name="SelectorStart" type="Control" parent="Panel2"]
unique_name_in_owner = true unique_name_in_owner = true
anchors_preset = 0 anchors_preset = 0
offset_left = 438.0 offset_left = -9.0
offset_top = 40.0 offset_right = 31.0
offset_right = 478.0 offset_bottom = 40.0
offset_bottom = 80.0
[node name="Panel3" type="Panel" parent="."] [node name="Label" type="Label" parent="."]
layout_mode = 1
anchors_preset = 10
anchor_right = 1.0
offset_bottom = 75.0
grow_horizontal = 2
[node name="Label" type="Label" parent="Panel3"]
layout_mode = 1 layout_mode = 1
anchors_preset = 7 anchors_preset = 7
anchor_left = 0.5 anchor_left = 0.5
anchor_top = 1.0 anchor_top = 1.0
anchor_right = 0.5 anchor_right = 0.5
anchor_bottom = 1.0 anchor_bottom = 1.0
offset_left = -75.5 offset_left = -188.5
offset_top = -23.0 offset_top = -1060.0
offset_right = 75.5 offset_right = 188.5
offset_bottom = -1005.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 0 grow_vertical = 0
theme_override_font_sizes/font_size = 40 theme_override_font_sizes/font_size = 40
@@ -507,6 +134,3 @@ bus = &"SFX"
[connection signal="spawned" from="SelectorSpawner" to="." method="_on_selector_spawner_spawned"] [connection signal="spawned" from="SelectorSpawner" to="." method="_on_selector_spawner_spawned"]
[connection signal="child_entered_tree" from="Panel2/SelectorStart" to="." method="_on_selector_start_child_entered_tree"] [connection signal="child_entered_tree" from="Panel2/SelectorStart" to="." method="_on_selector_start_child_entered_tree"]
[editable path="Panel/Control/P1PawnDisplay"]
[editable path="Panel/Control/P2PawnDisplay"]

View File

@@ -0,0 +1,139 @@
[gd_scene load_steps=6 format=3 uid="uid://ck4x56txf676a"]
[ext_resource type="Script" uid="uid://grs3nyom325o" path="res://scripts/character_select.gd" id="1_bow2h"]
[ext_resource type="PackedScene" uid="uid://46rpw0rrd51m" path="res://templates/pawn_display.tscn" id="2_5wdeo"]
[ext_resource type="AudioStream" uid="uid://vcatohtmt8bk" path="res://audio/old-music/16 - Character Select.mp3" id="3_bow2h"]
[ext_resource type="AudioStream" uid="uid://cwmfd8ov3lj1h" path="res://audio/sounds/menu select.wav" id="7_bqp8h"]
[ext_resource type="AudioStream" uid="uid://doelc8yt5snc2" path="res://audio/sounds/Keypad A.wav" id="8_5cdo8"]
[node name="Control" type="Control" groups=["scenes"]]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_bow2h")
[node name="SelectorSpawner" type="MultiplayerSpawner" parent="."]
unique_name_in_owner = true
_spawnable_scenes = PackedStringArray("uid://bvypswoe6diaq")
spawn_path = NodePath("../Panel2/SelectorStart")
[node name="Panel" type="Panel" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="PawnDisplays" type="Control" parent="Panel"]
unique_name_in_owner = true
anchors_preset = 0
offset_left = 94.0
offset_top = 98.0
offset_right = 134.0
offset_bottom = 138.0
[node name="PawnDisplay" parent="Panel/PawnDisplays" instance=ExtResource("2_5wdeo")]
layout_mode = 0
offset_left = -29.0
offset_top = -65.0
offset_right = 471.0
offset_bottom = 435.0
[node name="PawnDisplay2" parent="Panel/PawnDisplays" instance=ExtResource("2_5wdeo")]
layout_mode = 0
offset_left = 1258.0
offset_top = -65.0
offset_right = 1758.0
offset_bottom = 435.0
[node name="PawnDisplay3" parent="Panel/PawnDisplays" instance=ExtResource("2_5wdeo")]
visible = false
layout_mode = 0
offset_left = 36.0
offset_top = 451.0
offset_right = 536.0
offset_bottom = 951.0
[node name="PawnDisplay4" parent="Panel/PawnDisplays" instance=ExtResource("2_5wdeo")]
visible = false
layout_mode = 0
offset_left = 1192.0
offset_top = 456.0
offset_right = 1692.0
offset_bottom = 956.0
[node name="Panel2" type="Control" parent="."]
custom_minimum_size = Vector2(0, 250)
anchors_preset = 0
offset_left = 727.0
offset_top = 98.0
offset_right = 877.0
offset_bottom = 348.0
[node name="PawnPickPortraits" type="GridContainer" parent="Panel2"]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -75.0
offset_top = -114.0
offset_right = 383.0
offset_bottom = 806.0
grow_horizontal = 2
grow_vertical = 2
columns = 3
[node name="SelectorStart" type="Control" parent="Panel2"]
unique_name_in_owner = true
anchors_preset = 0
offset_left = 438.0
offset_top = 40.0
offset_right = 478.0
offset_bottom = 80.0
[node name="Label" type="Label" parent="."]
layout_mode = 1
anchors_preset = 7
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -188.5
offset_top = -1060.0
offset_right = 188.5
offset_bottom = -1005.0
grow_horizontal = 2
grow_vertical = 0
theme_override_font_sizes/font_size = 40
text = "CHARACTER SELECT"
horizontal_alignment = 1
[node name="Music" type="AudioStreamPlayer" parent="."]
stream = ExtResource("3_bow2h")
volume_db = -5.0
autoplay = true
bus = &"Music"
[node name="SelectSound" type="AudioStreamPlayer" parent="."]
unique_name_in_owner = true
stream = ExtResource("7_bqp8h")
[node name="Announcer" type="AudioStreamPlayer" parent="."]
unique_name_in_owner = true
volume_db = 12.381
bus = &"Voice"
[node name="SwitchSound" type="AudioStreamPlayer" parent="."]
unique_name_in_owner = true
stream = ExtResource("8_5cdo8")
bus = &"SFX"
[connection signal="spawned" from="SelectorSpawner" to="." method="_on_selector_spawner_spawned"]
[connection signal="child_entered_tree" from="Panel2/SelectorStart" to="." method="_on_selector_start_child_entered_tree"]

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=13 format=4 uid="uid://dewb10lmvj1yy"] [gd_scene load_steps=14 format=4 uid="uid://dewb10lmvj1yy"]
[ext_resource type="Script" uid="uid://d3t381vws7vns" path="res://scripts/level.gd" id="1_0a1dj"] [ext_resource type="Script" uid="uid://d3t381vws7vns" path="res://scripts/level.gd" id="1_0a1dj"]
[ext_resource type="PackedScene" uid="uid://bgocskbofewsr" path="res://templates/HUD.tscn" id="2_uckv6"] [ext_resource type="PackedScene" uid="uid://bgocskbofewsr" path="res://templates/HUD.tscn" id="2_uckv6"]
@@ -8,6 +8,7 @@
[ext_resource type="MeshLibrary" uid="uid://bp5402nbrw3hx" path="res://manufactory_minimap_mesh_library.tres" id="6_0a1dj"] [ext_resource type="MeshLibrary" uid="uid://bp5402nbrw3hx" path="res://manufactory_minimap_mesh_library.tres" id="6_0a1dj"]
[ext_resource type="Texture2D" uid="uid://dri0a20l6kpbj" path="res://visuals/images/icon.svg" id="7_cttrw"] [ext_resource type="Texture2D" uid="uid://dri0a20l6kpbj" path="res://visuals/images/icon.svg" id="7_cttrw"]
[ext_resource type="AudioStream" uid="uid://cr0n18se6jnig" path="res://audio/music/Industrial Matts Fridge Intensity 2.wav" id="9_d3ajt"] [ext_resource type="AudioStream" uid="uid://cr0n18se6jnig" path="res://audio/music/Industrial Matts Fridge Intensity 2.wav" id="9_d3ajt"]
[ext_resource type="Script" uid="uid://b5npi1ys4lnf4" path="res://scripts/multiplayer_level_setup.gd" id="9_owm7e"]
[sub_resource type="Environment" id="Environment_x4b8f"] [sub_resource type="Environment" id="Environment_x4b8f"]
background_energy_multiplier = 0.29 background_energy_multiplier = 0.29
@@ -57,6 +58,7 @@ blend_shape_mode = 0
shadow_mesh = SubResource("ArrayMesh_tlwuy") shadow_mesh = SubResource("ArrayMesh_tlwuy")
[node name="Manufactory Level" type="Node3D"] [node name="Manufactory Level" type="Node3D"]
process_mode = 4
script = ExtResource("1_0a1dj") script = ExtResource("1_0a1dj")
difficulty = 5 difficulty = 5
@@ -407,4 +409,11 @@ stream = ExtResource("9_d3ajt")
volume_db = -24.684 volume_db = -24.684
autoplay = true autoplay = true
[node name="MultiplayerLevelSetup" type="Node" parent="."]
unique_name_in_owner = true
script = ExtResource("9_owm7e")
[connection signal="spawned" from="PawnSpawner" to="MultiplayerLevelSetup" method="_on_pawn_spawner_spawned"]
[connection signal="spawned" from="CameraSpawner" to="MultiplayerLevelSetup" method="_on_camera_spawner_spawned"]
[editable path="CanvasLayer/HUD"] [editable path="CanvasLayer/HUD"]

View File

@@ -3,7 +3,7 @@
[ext_resource type="Script" uid="uid://dep7nr2nkdmga" path="res://scripts/multiplayer_setup.gd" id="1_lckj3"] [ext_resource type="Script" uid="uid://dep7nr2nkdmga" path="res://scripts/multiplayer_setup.gd" id="1_lckj3"]
[node name="MultiplayerSetup" type="MultiplayerSpawner" groups=["level_spawner"]] [node name="MultiplayerSetup" type="MultiplayerSpawner" groups=["level_spawner"]]
_spawnable_scenes = PackedStringArray("uid://ti65jukt8gvs", "uid://ck4x56txf676a", "uid://by6suwmds7xq2") _spawnable_scenes = PackedStringArray("uid://ti65jukt8gvs", "uid://ck4x56txf676a", "uid://dewb10lmvj1yy")
spawn_path = NodePath(".") spawn_path = NodePath(".")
script = ExtResource("1_lckj3") script = ExtResource("1_lckj3")

File diff suppressed because one or more lines are too long

View File

@@ -412,14 +412,17 @@ offset_bottom = 648.0
stream = ExtResource("4_mykxm") stream = ExtResource("4_mykxm")
volume_db = -18.606 volume_db = -18.606
autoplay = true autoplay = true
bus = &"Music"
[node name="SelectSound" type="AudioStreamPlayer" parent="."] [node name="SelectSound" type="AudioStreamPlayer" parent="."]
unique_name_in_owner = true unique_name_in_owner = true
stream = ExtResource("6_3yumr") stream = ExtResource("6_3yumr")
bus = &"UI"
[node name="SwitchSound" type="AudioStreamPlayer" parent="."] [node name="SwitchSound" type="AudioStreamPlayer" parent="."]
unique_name_in_owner = true unique_name_in_owner = true
stream = ExtResource("7_cs5ya") stream = ExtResource("7_cs5ya")
bus = &"UI"
[node name="TextureRect6" type="TextureRect" parent="."] [node name="TextureRect6" type="TextureRect" parent="."]
layout_mode = 0 layout_mode = 0

View File

@@ -7,6 +7,16 @@ enum Modes{
VS_MAN VS_MAN
} }
var pawns : Dictionary = {
"A" : load("res://data/pawns/a.tres"),
"B" : load("res://data/pawns/b.tres"),
"C" : load("res://data/pawns/c.tres"),
"D" : load("res://data/pawns/d.tres"),
"E" : load("res://data/pawns/e.tres"),
"F" : load("res://data/pawns/f.tres")
}
const blinder_template = preload("res://templates/blinder.tscn") const blinder_template = preload("res://templates/blinder.tscn")
const one_shot_template = preload("res://templates/one_shot.tscn") const one_shot_template = preload("res://templates/one_shot.tscn")
@@ -15,13 +25,14 @@ const vs_com_level = preload("res://scenes/test_level.tscn")
const vs_man_level = preload("res://scenes/manufactory.tscn") const vs_man_level = preload("res://scenes/manufactory.tscn")
const pawn_select_scene = preload("res://scenes/character_select.tscn") const pawn_select_scene = preload("res://scenes/character_select.tscn")
var cmd_args : Dictionary = {}
var player : PawnController var player : PawnController
var hud : HUD var hud : HUD
var level : Level var level : Level
var mode : Modes = Modes.STORY var mode : Modes = Modes.STORY
var multiplayer_game : bool = false var multiplayer_game : bool = false
var num_players : int = 1 var num_players : int = 1
var pawns_selected : Dictionary[int, PawnBaseData] = {} var pawns_selected : Dictionary[int, StringName] = {}
var level_synced : Dictionary[int, bool] = {} var level_synced : Dictionary[int, bool] = {}
var net_test : bool #TODO: Remove later var net_test : bool #TODO: Remove later
@@ -30,16 +41,21 @@ func _ready() -> void:
for arg in OS.get_cmdline_args(): for arg in OS.get_cmdline_args():
if arg.begins_with("--"): if arg.begins_with("--"):
var flag = arg.lstrip("--") var flag = arg.lstrip("--")
if flag.contains("="):
var key_val = flag.split("=")
args[key_val[0]]=key_val[1]
args[flag]=true args[flag]=true
if args.has("net_test"): if args.has("net_test"):
net_test = true net_test = true
if args.has("instance_id"):
get_tree().root.title = "Net Gunner (Instance: %s)" % args.instance_id
cmd_args = args
func setup_player(pc : PawnController) -> void: func setup_player(pc : PawnController) -> void:
var is_local = false var is_local = false
Game.level.pawns[pc.id] = pc
if pc.id == Multiplayer.id: if pc.id == Multiplayer.id:
is_local = true is_local = true
level.pawns[pc.id] = pc
if is_local: if is_local:
player = pc player = pc
if hud: if hud:
@@ -49,10 +65,11 @@ func is_multiplayer() -> bool:
return multiplayer_game return multiplayer_game
func start_level(pawns : Dictionary[int, PawnBaseData]) -> void: func start_level(pawns : Dictionary[int, StringName]) -> void:
pawns_selected = pawns
if !Multiplayer.is_host(): if !Multiplayer.is_host():
return return
pawns_selected = pawns
for i in Multiplayer.players.values(): for i in Multiplayer.players.values():
level_synced[i] = false level_synced[i] = false
level_synced[1] = true level_synced[1] = true
@@ -117,7 +134,6 @@ func level_spawned(peer_id : int) -> void:
level_synced[peer_id] = true level_synced[peer_id] = true
check_level_ready() check_level_ready()
func check_level_ready() -> void: func check_level_ready() -> void:
var ready : bool = true var ready : bool = true
for id in level_synced: for id in level_synced:

View File

@@ -34,11 +34,11 @@ func become_host() -> void:
print("Hosting Room...") print("Hosting Room...")
var room_id = await server_peer.room_connected var room_id = await server_peer.room_connected
print("Connected to room: ", server_peer.room_id) print("Connected to room: ", server_peer.room_id)
server_peer.get_rooms() #server_peer.get_rooms()
print("GETTING ROOMS!") print("GETTING ROOMS!")
var rooms = await server_peer.rooms_received #var rooms = await server_peer.rooms_received
print("GOT ROOMS!") print("GOT ROOMS!")
print(rooms) #print(rooms)
players[handle] = 1 players[handle] = 1
player_readiness[1] = false player_readiness[1] = false

View File

@@ -1,13 +1,6 @@
extends Control class_name CharacterSelect extends Control
const pawns : Array[PawnBaseData] = [
preload("res://data/pawns/van_reily.tres"),
preload("res://data/pawns/lou_riche.tres"),
preload("res://data/pawns/tico.tres"),
preload("res://data/pawns/john_bishous.tres"),
preload("res://data/pawns/abdoll_relin.tres"),
preload("res://data/pawns/tenrou_ugetsu.tres")
]
const p_colors : Array[Color] = [ const p_colors : Array[Color] = [
Color.ROYAL_BLUE, Color.ROYAL_BLUE,
@@ -16,34 +9,53 @@ const p_colors : Array[Color] = [
const selector_template = preload("res://templates/pawn_selector.tscn") const selector_template = preload("res://templates/pawn_selector.tscn")
const pawn_pick_portrait_template = preload("res://templates/pawn_pick_portrait.tscn")
@onready var pawn_displays : Array[PawnDisplay] = [
%P1PawnDisplay,
%P2PawnDisplay
]
var selector_wait : float = 0 var selector_wait : float = 0
var selected : int = -1 var selected : int = -1
var selectors : Dictionary[int,PawnSelector] = {} var selectors : Dictionary[int,PawnSelector] = {}
var displays : Dictionary[int, PawnDisplay] = {} var displays : Dictionary[int, PawnDisplay] = {}
var portraits : Dictionary[Vector2i, PawnPickPortrait] = {}
var announce_tween : Tween = null var announce_tween : Tween = null
@onready var announcer : AudioStreamPlayer = %Announcer @onready var announcer : AudioStreamPlayer = %Announcer
@onready var selector_start : Control = %SelectorStart @onready var selector_start : Control = %SelectorStart
@onready var switch_sound : AudioStreamPlayer = %SwitchSound @onready var switch_sound : AudioStreamPlayer = %SwitchSound
@onready var select_sound : AudioStreamPlayer = %SelectSound @onready var select_sound : AudioStreamPlayer = %SelectSound
@onready var portrait_grid : GridContainer = %PawnPickPortraits
@onready var pawn_displays : Control = %PawnDisplays
func _ready() -> void: func _ready() -> void:
var i : int = 0
var idx : Vector2i = Vector2i.ZERO
for pawn in Game.pawns.values():
var pp : PawnPickPortrait = pawn_pick_portrait_template.instantiate()
portrait_grid.add_child(pp)
pp.setup(pawn, i)
portraits[idx] = pp
i+=1
idx.x += 1
if idx.x >= portrait_grid.columns:
idx.y += 1
idx.x -= portrait_grid.columns
Multiplayer.waiting = true Multiplayer.waiting = true
var plist var plist
if Game.is_multiplayer(): if Game.is_multiplayer():
plist = Multiplayer.players.values() plist = Multiplayer.players.values()
for i in range(Game.num_players): for id in range(Game.num_players):
displays[plist[i]] = pawn_displays[i] var display : PawnDisplay = pawn_displays.get_child(id)
change_display(plist[i], 0) displays[plist[id]] = display
display.visible = true
portraits[Vector2i.ZERO].num_players += 1
change_display(plist[id], 0)
else: else:
displays[1] = pawn_displays[0] displays[1] = pawn_displays.get_child(0)
displays[1].visible = true
change_display(1, 0) change_display(1, 0)
portraits[Vector2i.ZERO].num_players += 1
Multiplayer.all_ready.connect(add_selector, CONNECT_ONE_SHOT) Multiplayer.all_ready.connect(add_selector, CONNECT_ONE_SHOT)
Multiplayer.set_player_ready.rpc(Multiplayer.id) Multiplayer.set_player_ready.rpc(Multiplayer.id)
#Set up each pawn on bottom #Set up each pawn on bottom
@@ -67,12 +79,12 @@ func _process(delta : float) -> void:
if !selectors.has(Multiplayer.id): if !selectors.has(Multiplayer.id):
return return
var locked = true var locked = true
var pawns_selected : Dictionary[int, PawnBaseData] = {} var pawns_selected : Dictionary[int, StringName] = {}
for selector : PawnSelector in selectors.values(): for selector : PawnSelector in selectors.values():
if !selector.selected: if !selector.selected:
locked = false locked = false
else: else:
pawns_selected[selector.player_id] = pawns[selector.selection] pawns_selected[selector.player_id] = portraits[selector.selection].pawn.name
if locked: if locked:
Game.start_level(pawns_selected) Game.start_level(pawns_selected)
@@ -88,25 +100,25 @@ func _process(delta : float) -> void:
input_vector = Input.get_vector("west","east","north","south") input_vector = Input.get_vector("west","east","north","south")
var move_dir : Vector2 = Vector2.ZERO var move_dir : Vector2i = Vector2.ZERO
if input_vector.x < 0: move_dir = Vector2i((input_vector + .499 * sign(input_vector)).round())
move_dir.x -= 1 if move_dir.length_squared() != 0:
var selection : Vector2i = selector.selection + move_dir
if input_vector.x > 0: selection.x = wrapi(selection.x, 0, portrait_grid.columns)
move_dir.x += 1 selection.y = wrapi(selection.y, 0, ceili(float(portrait_grid.get_child_count()) / portrait_grid.columns))
move_selector.rpc(selector.player_id, selection)
if move_dir.x != 0:
move_selector.rpc(selector.player_id, wrapi(selector.selection + sign(move_dir.x),0, len(pawns)))
selector_wait = 0.25 selector_wait = 0.25
@rpc("any_peer","call_local","reliable") @rpc("any_peer","call_local","reliable")
func move_selector(peer_id : int, selection : int) -> void: func move_selector(peer_id : int, selection : Vector2i) -> void:
var selector : PawnSelector = selectors[peer_id] var selector : PawnSelector = selectors[peer_id]
portraits[selector.selection].num_players -= 1
selector.selection = selection selector.selection = selection
change_display(peer_id, selector.selection) portraits[selector.selection].num_players += 1
var v = Vector2(175 * selector.selection, 0) change_display(peer_id, portraits[selector.selection].pawn_idx)
selector.position = Vector2(175 * selector.selection, 0) var v = Vector2(154 * selector.selection.x, 154 * selector.selection.y)
selector.position = v
switch_sound.play() switch_sound.play()
if announce_tween != null and announce_tween.is_running(): if announce_tween != null and announce_tween.is_running():
announce_tween.stop() announce_tween.stop()
@@ -114,7 +126,7 @@ func move_selector(peer_id : int, selection : int) -> void:
announcer.stop() announcer.stop()
announce_tween = create_tween() announce_tween = create_tween()
announce_tween.tween_interval(.25) announce_tween.tween_interval(.25)
announcer.stream = pawns[selection].name_audio announcer.stream = portraits[selection].pawn.name_audio
announce_tween.tween_callback(announcer.play) announce_tween.tween_callback(announcer.play)
@rpc("any_peer","call_local","reliable") @rpc("any_peer","call_local","reliable")
@@ -126,9 +138,10 @@ func lock_selector(peer_id : int) -> void:
func change_display(player : int, selection: int) -> void: func change_display(player : int, selection: int) -> void:
var pd : PawnDisplay = displays[player] var pd : PawnDisplay = displays[player]
pd.set_pawn_name(pawns[selection].name) var pawn : PawnBaseData = Game.pawns.values()[selection]
pd.set_portrait(pawns[selection].portrait) pd.set_pawn_name(pawn.name)
pd.set_hacks(pawns[selection].starting_hacks) pd.set_portrait(pawn.portrait)
pd.set_hacks(pawn.starting_hacks)
func _on_selector_start_child_entered_tree(node: Node) -> void: func _on_selector_start_child_entered_tree(node: Node) -> void:

View File

@@ -108,7 +108,6 @@ func _on_reveal_timeout() -> void:
func _ready() -> void: func _ready() -> void:
var owns_hack = hack_owner == Multiplayer.id var owns_hack = hack_owner == Multiplayer.id
print("Setup Hack " + name)
material.set_shader_parameter("glow_color", Color.YELLOW if owns_hack else Color.RED) material.set_shader_parameter("glow_color", Color.YELLOW if owns_hack else Color.RED)
icon.texture = hack_icons[type] icon.texture = hack_icons[type]
model.visible = owns_hack model.visible = owns_hack

View File

@@ -24,7 +24,7 @@ const camera_offset = Vector3(0, 10, 5.25)
@onready var cameras_node : Node3D = %Cameras @onready var cameras_node : Node3D = %Cameras
@onready var map_markers_node : Node3D = %MapMarkers @onready var map_markers_node : Node3D = %MapMarkers
@onready var spawn_points : Array[Node] = $PawnSpawner.get_children() @onready var spawn_points : Array[Node] = $PawnSpawner.get_children()
@onready var multiplayer_level_setup : MultiplayerLevelSetup = %MultiplayerLevelSetup
@export var difficulty : int = 1 @export var difficulty : int = 1
@@ -34,6 +34,7 @@ var cameras : Dictionary[int, PawnCamera] = {}
var map_markers : Dictionary[Object, MapMarker] = {} var map_markers : Dictionary[Object, MapMarker] = {}
func _ready() -> void: func _ready() -> void:
process_mode=Node.PROCESS_MODE_DISABLED
Game.level = self Game.level = self
if Game.mode == Game.Modes.STORY: if Game.mode == Game.Modes.STORY:
setup() setup()
@@ -43,20 +44,45 @@ func setup() -> void:
if Multiplayer.is_host(): if Multiplayer.is_host():
spawn_players() spawn_players()
@rpc("authority")
func spawn_players() -> void: func spawn_players() -> void:
if Game.is_multiplayer():
spawn_players_multiplayer()
else:
spawn_players_singleplayer()
func spawn_players_singleplayer() -> void:
var pc : PawnController = pawn_controller.instantiate()
pawns[1] = pc
pawns_node.add_child(pc,true)
var position : Vector3
if(spawn_points == null
or len(spawn_points) <= 1):
position = Vector3(0,0,0)
else:
position = spawn_points[0].global_position
pc.global_position = position
pc.setup(1, Game.pawns_selected[1])
add_pawn_camera(pc)
cameras[1].register_pawn(1)
process_mode=Node.PROCESS_MODE_INHERIT
func spawn_players_multiplayer() -> void:
var count = 0 var count = 0
multiplayer_level_setup.set_players_unready(Multiplayer.players.values())
multiplayer_level_setup.set_pawns_expected.rpc(Game.pawns_selected.size())
for key in Game.pawns_selected: for key in Game.pawns_selected:
var pc : PawnController = pawn_controller.instantiate() var pc : PawnController = pawn_controller.instantiate()
var pd = Game.pawns_selected[key] pawns[key] = pc
pawns_node.add_child(pc,true) pawns_node.add_child(pc,true)
var hacks : Array = []
for hack : HackSet in pd.starting_hacks:
var dict = {
"type":hack.type,
"qty":hack.qty
}
hacks.append(dict)
await multiplayer_level_setup.all_players_ready
for key in pawns:
var pc = pawns[key]
var position : Vector3 var position : Vector3
if(spawn_points == null if(spawn_points == null
or len(spawn_points) <= count): or len(spawn_points) <= count):
@@ -66,9 +92,22 @@ func spawn_players() -> void:
position = Vector3(3,0,0) position = Vector3(3,0,0)
else: else:
position = spawn_points[count].global_position position = spawn_points[count].global_position
pc.setup.rpc(key,hacks,position)
add_pawn_camera(pc)
count += 1 count += 1
pc.global_position = position
pc.setup.rpc(key, Game.pawns_selected[key])
multiplayer_level_setup.set_players_unready(Multiplayer.players.values())
multiplayer_level_setup.set_cameras_expected.rpc(Game.pawns_selected.size())
for pc in pawns.values():
add_pawn_camera(pc)
await multiplayer_level_setup.all_players_ready
setup_cameras()
start_level.rpc()
@rpc("authority", "call_local")
func start_level() -> void:
process_mode=Node.PROCESS_MODE_INHERIT
func is_square_detected(crd) -> bool: func is_square_detected(crd) -> bool:
@@ -88,16 +127,22 @@ func detect_square(crd : Vector3i, mark : bool) -> bool:
hack.reveal() hack.reveal()
return true return true
@rpc("any_peer", "call_local", "reliable")
func add_pawn_camera(pawn : PawnController) -> void: func add_pawn_camera(pawn : PawnController) -> void:
if Multiplayer.is_host():
var camera : PawnCamera = camera_template.instantiate() var camera : PawnCamera = camera_template.instantiate()
camera.position = pawn.global_position + camera_offset camera.position = pawn.global_position + camera_offset
cameras_node.add_child(camera,true) cameras_node.add_child(camera,true)
camera.register_pawn.rpc(pawn.id) cameras[pawn.id] = camera
func setup_cameras() -> void:
var camera_list = cameras_node.get_children()
var idx = 0
for pawn_id in pawns:
camera_list[idx].register_pawn.rpc(pawn_id)
cameras[pawn_id] = camera_list[idx]
idx += 1
func add_hack(hack : Hack, crd : Vector3i) -> void: func add_hack(hack : Hack, crd : Vector3i) -> void:
hack.square = crd hack.square = crd
hacks[crd] = hack hacks[crd] = hack

View File

@@ -1,19 +0,0 @@
extends Level
#const pawn_controller_template = preload("res://templates/pawn_controller.tscn")
#
#@onready var player_spawner = %Spawner
#func _ready() -> void:
#print("LEVEL LOADING, ID: " + str(Multiplayer.id) + " with " + str(Multiplayer.players.size()) + " keys recognized")
#Game.level = self
#
#func setup() -> void:
#if Multiplayer.is_host():
#spawn_players()
#
#func spawn_players() -> void:
#for key in Game.pawns_selected:
#var pc : PawnController = pawn_controller_template.instantiate()
#var pd = Game.pawns_selected[key]
#player_spawner.add_pawn(pc, key)
#pc.setup(key,pd.starting_hacks)

View File

@@ -0,0 +1,62 @@
class_name MultiplayerLevelSetup extends Node
var players_ready : Dictionary[int, bool] = {}
var pawns_expected : int = 1
var cameras_expected : int = 1
signal all_pawns_spawned()
signal all_cameras_spawned()
signal all_players_ready()
@rpc("authority", "reliable")
func set_pawns_expected(num : int) -> void:
all_pawns_spawned.connect(_on_all_pawns_spawned, CONNECT_ONE_SHOT)
print("(Instance %s) Expecting %d Pawns" % [Game.cmd_args.instance_id, num])
pawns_expected = num
func set_players_unready(list : Array) -> void:
players_ready = {}
for id in list:
players_ready[id] = false
players_ready[1] = true
func check_all_ready() -> bool:
for id in players_ready:
if !players_ready[id]:
return false
return true
func _on_all_pawns_spawned() -> void:
player_ready.rpc_id(1,Multiplayer.id)
func _on_all_cameras_spawned() -> void:
player_ready.rpc_id(1,Multiplayer.id)
@rpc("any_peer", "reliable")
func player_ready(id : int) -> void:
print("(Instance %s) Player %d notified ready" % [Game.cmd_args.instance_id, id])
players_ready[id] = true
if(check_all_ready()):
print("(Instance %s) ALL PLAYERS READY!!" % [Game.cmd_args.instance_id])
all_players_ready.emit()
@rpc("authority", "reliable")
func set_cameras_expected(num : int) -> void:
all_cameras_spawned.connect(_on_all_cameras_spawned, CONNECT_ONE_SHOT)
cameras_expected = num
func _on_pawn_spawner_spawned(node: Node) -> void:
print("(Instance %s) Spawned %d Pawn" % [Game.cmd_args.instance_id, node.id])
pawns_expected -= 1
if pawns_expected == 0:
print("(Instance %s) ALL PAWNS SPAWNED!" % [Game.cmd_args.instance_id])
all_pawns_spawned.emit()
func _on_camera_spawner_spawned(node: Node) -> void:
cameras_expected -= 1
if cameras_expected == 0:
all_cameras_spawned.emit()

View File

@@ -0,0 +1 @@
uid://b5npi1ys4lnf4

View File

@@ -0,0 +1,18 @@
extends Node3D
func _enter_tree() -> void:
Game.pawns_selected[1] = Game.pawns.keys()[0]
Multiplayer.client_added.connect(_on_client_added)
#SETUP HOST:
if !Game.net_test:
var handle = "Host - P1"
Multiplayer.handle = handle
#Validate entries
Multiplayer.become_host()
func _on_client_added(handle : String, id : int) -> void:
pass

View File

@@ -13,6 +13,9 @@ class_name PawnBody extends Node3D
@onready var walk_sound : AudioStreamPlayer3D = $WalkSound @onready var walk_sound : AudioStreamPlayer3D = $WalkSound
@onready var footstep_timer : Timer = $FootstepTimer @onready var footstep_timer : Timer = $FootstepTimer
signal shooting()
signal reloading()
@rpc("call_local") @rpc("call_local")
func play_animation(anim_name : String) -> void: func play_animation(anim_name : String) -> void:
anim_player.play(anim_name) anim_player.play(anim_name)

View File

@@ -4,6 +4,7 @@ class_name PawnCamera extends Camera3D
var target var target
var player_offset : Vector3 var player_offset : Vector3
@export var player_id = 1
@export var decay = 0.9 # How quickly the shaking stops [0, 1]. @export var decay = 0.9 # How quickly the shaking stops [0, 1].
@export var max_offset = Vector2(2, 1.5) # Maximum hor/ver shake in pixels. @export var max_offset = Vector2(2, 1.5) # Maximum hor/ver shake in pixels.

View File

@@ -15,9 +15,10 @@ const hack_template = preload("res://templates/hack.tscn")
const uninstall_hack_modal = preload("res://templates/uninstall_hack_modal.tscn") const uninstall_hack_modal = preload("res://templates/uninstall_hack_modal.tscn")
const decompile_hack_modal = preload("res://templates/decompile_hack_modal.tscn") const decompile_hack_modal = preload("res://templates/decompile_hack_modal.tscn")
const range_sphere_template = preload("res://templates/range_sphere.tscn") const range_sphere_template = preload("res://templates/range_sphere.tscn")
@export var pawn_name : StringName
@export var speed : float = 10 @export var speed : float = 10
@onready var body : PawnBody = $PawnBody @onready var body : PawnBody
@onready var input : PawnInput = $PawnInput @onready var input : PawnInput = $PawnInput
@onready var data : PawnLevelData = $Data @onready var data : PawnLevelData = $Data
@onready var hack_sound : AudioStreamPlayer3D = $HackSound @onready var hack_sound : AudioStreamPlayer3D = $HackSound
@@ -28,7 +29,7 @@ const range_sphere_template = preload("res://templates/range_sphere.tscn")
@onready var reload_sound : AudioStreamPlayer3D = $PawnBody/ReloadSound @onready var reload_sound : AudioStreamPlayer3D = $PawnBody/ReloadSound
@onready var detect_icon : Sprite3D = $DetectIcon @onready var detect_icon : Sprite3D = $DetectIcon
var id : int = 1 @export var id : int = 1
@export var state : State @export var state : State
var button_actions : Dictionary[int, String] var button_actions : Dictionary[int, String]
@@ -62,6 +63,8 @@ var max_ammo = 5
var combat_target var combat_target
var meleeing : bool = false var meleeing : bool = false
var shooting : bool = false var shooting : bool = false
var reloading : bool = false
var take_shot : bool = false
var flinch : float = 0 var flinch : float = 0
@@ -95,6 +98,8 @@ func _exit_tree() -> void:
#Game.level.evaluate_outcome() #Game.level.evaluate_outcome()
#Game.evaluate #Game.evaluate
func _physics_process(delta: float) -> void: func _physics_process(delta: float) -> void:
if attack_timer > 0: if attack_timer > 0:
attack_timer -= delta attack_timer -= delta
@@ -155,10 +160,11 @@ func _physics_process(delta: float) -> void:
body.play_footsteps(lerp(.78, .33, dir.length())) body.play_footsteps(lerp(.78, .33, dir.length()))
else: else:
body.stop_footsteps() body.stop_footsteps()
else: elif body != null:
body.stop_footsteps() body.stop_footsteps()
body.set_animation_parameter("parameters/Motion/blend_position", dir.length()) if body != null:
body.set_animation_parameter("parameters/Crouch/blend_position", dir.length()) body.set_animation_parameter("parameters/Motion/blend_position", dir.length())
body.set_animation_parameter("parameters/Crouch/blend_position", dir.length())
State.KNOCKUP: State.KNOCKUP:
if is_on_floor(): if is_on_floor():
knockdown(facing) knockdown(facing)
@@ -197,6 +203,20 @@ func _physics_process(delta: float) -> void:
elif state == State.NORMAL: elif state == State.NORMAL:
update_actions() update_actions()
@rpc("call_local", "reliable")
func setup_pawn_body(pd : PawnBaseData) -> void:
set_pawn_body(pd.pawn_body.instantiate())
func set_pawn_body(pb : PawnBody) -> void:
if body != null:
body.queue_free()
body = pb
pb.reloading.connect(reload_ranged)
pb.shooting.connect(fire_ranged)
add_child(body)
struggling.connect(body._on_struggle_changed)
func attack() -> void: func attack() -> void:
if attack_timer > 0: if attack_timer > 0:
return return
@@ -205,22 +225,25 @@ func attack() -> void:
attack_timer = melee_recovery_time attack_timer = melee_recovery_time
else: else:
if ammo <= 0: if ammo <= 0:
reload_sound.play() reloading = true
ammo = max_ammo
attack_timer = ranged_reload_time
ammo_changed.emit(ammo, max_ammo)
return return
ammo-=1
ammo_changed.emit(ammo, max_ammo)
attack_timer = ranged_recovery_time attack_timer = ranged_recovery_time
shooting == true shooting = true
take_shot = true
if combat_target != null: if combat_target != null:
var v = body.global_position.direction_to(combat_target.global_position) var v = body.global_position.direction_to(combat_target.global_position)
v.y = 0 v.y = 0
body.look_at(body.global_position - v) body.look_at(body.global_position - v)
func reload_ranged() -> void:
reloading = false
reload_sound.play()
ammo = max_ammo
attack_timer = ranged_reload_time
ammo_changed.emit(ammo, max_ammo)
func update_actions() -> void: func update_actions() -> void:
if attack_timer <= 0 and shooting and !input.is_action_pressed("attack"): if attack_timer <= 0 and shooting and !input.is_action_pressed("attack"):
shooting = false shooting = false
@@ -297,6 +320,9 @@ func update_poison(delta : float) -> void:
func fire_ranged() -> void: func fire_ranged() -> void:
var shot = body.projectile_template.instantiate() var shot = body.projectile_template.instantiate()
var tdir : Vector3 = Vector3.ZERO var tdir : Vector3 = Vector3.ZERO
take_shot = false
ammo-=1
ammo_changed.emit(ammo, max_ammo)
shot.speed = projectile_speed shot.speed = projectile_speed
tdir = body.ranged_point.global_position.direction_to(combat_target.global_position) if combat_target else facing tdir = body.ranged_point.global_position.direction_to(combat_target.global_position) if combat_target else facing
shot.direction = tdir shot.direction = tdir
@@ -490,15 +516,15 @@ func clear_detect_region() -> void:
detect_squares = {} detect_squares = {}
@rpc("authority", "call_local", "reliable") @rpc("authority", "call_local", "reliable")
func setup(id : int, hacks : Array, pos : Vector3) -> void: func setup(id : int, pawn : StringName) -> void:
self.id = id self.id = id
self.global_position = pos var base_data : PawnBaseData = Game.pawns[pawn]
var hacklist : Array[PawnLevelData.HackData] = [] var hacklist : Array[PawnLevelData.HackData] = []
for hack in hacks: for hack in base_data.starting_hacks:
hacklist.append(PawnLevelData.HackData.new(hack.type, hack.qty, hack.qty)) hacklist.append(PawnLevelData.HackData.new(hack.type, hack.qty, hack.qty))
$Data.hacks = hacklist $Data.hacks = hacklist
input.set_multiplayer_authority(id) input.set_multiplayer_authority(id)
struggling.connect(body._on_struggle_changed) setup_pawn_body(base_data)
Game.setup_player(self) Game.setup_player(self)
func uninstall_hack_at(square) -> void: func uninstall_hack_at(square) -> void:

View File

@@ -0,0 +1,25 @@
class_name PawnPickPortrait extends Panel
@onready var portrait : TextureRect = %Portrait
@onready var cover : Control = %Cover
var pawn : PawnBaseData
var pawn_idx : int
var _players : int = 0
var num_players : int :
get:
return _players
set(value):
_players = value
if cover != null:
cover.visible = (_players == 0)
func _ready() -> void:
pass
func setup(data : PawnBaseData, idx : int) -> void:
pawn = data
pawn_idx = idx
if portrait != null:
portrait.texture = data.portrait

View File

@@ -0,0 +1 @@
uid://dqpoa5x8u3r3h

View File

@@ -2,7 +2,7 @@ class_name PawnSelector extends TextureRect
@onready var anim_player : AnimationPlayer = $AnimationPlayer @onready var anim_player : AnimationPlayer = $AnimationPlayer
@export var player_id : int @export var player_id : int
@export var selection : int = 0 @export var selection : Vector2i = Vector2.ZERO
@export var selected : bool @export var selected : bool
func setup(id : int, color : Color) -> void: func setup(id : int, color : Color) -> void:

View File

@@ -3,6 +3,6 @@ extends Node3D
@onready var level : Level = $Level @onready var level : Level = $Level
func _ready() -> void: func _ready() -> void:
Game.pawns_selected[1] = load("res://data/pawns/van_reily.tres") Game.pawns_selected[1] = "a"
level.setup() level.setup()

View File

@@ -1,7 +1,6 @@
[gd_scene load_steps=14 format=3 uid="uid://c8xf3qawk5c6u"] [gd_scene load_steps=13 format=3 uid="uid://c8xf3qawk5c6u"]
[ext_resource type="Script" uid="uid://bcs7ygh6s3l35" path="res://scripts/pawn_controller.gd" id="1_h27ep"] [ext_resource type="Script" uid="uid://bcs7ygh6s3l35" path="res://scripts/pawn_controller.gd" id="1_h27ep"]
[ext_resource type="PackedScene" uid="uid://bb6a6wu2kc3fr" path="res://templates/pawns/pawn_body.tscn" id="2_dt0l8"]
[ext_resource type="Script" uid="uid://6w608y2grdqb" path="res://scripts/pawn_level_data.gd" id="14_ncd3b"] [ext_resource type="Script" uid="uid://6w608y2grdqb" path="res://scripts/pawn_level_data.gd" id="14_ncd3b"]
[ext_resource type="AudioStream" uid="uid://cjrlb4qiy23sj" path="res://audio/sounds/impact_deep_thud_bounce_09.wav" id="15_rsl1q"] [ext_resource type="AudioStream" uid="uid://cjrlb4qiy23sj" path="res://audio/sounds/impact_deep_thud_bounce_09.wav" id="15_rsl1q"]
[ext_resource type="AudioStream" uid="uid://blbk74d50ldut" path="res://audio/sounds/sci-fi_forcefield_hum_loop_02.wav" id="16_t8028"] [ext_resource type="AudioStream" uid="uid://blbk74d50ldut" path="res://audio/sounds/sci-fi_forcefield_hum_loop_02.wav" id="16_t8028"]
@@ -25,6 +24,12 @@ properties/1/replication_mode = 1
properties/2/path = NodePath(".:state") properties/2/path = NodePath(".:state")
properties/2/spawn = true properties/2/spawn = true
properties/2/replication_mode = 1 properties/2/replication_mode = 1
properties/3/path = NodePath(".:pawn_name")
properties/3/spawn = true
properties/3/replication_mode = 1
properties/4/path = NodePath(".:id")
properties/4/spawn = true
properties/4/replication_mode = 1
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_pnc3q"] [sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_pnc3q"]
properties/0/path = NodePath("PawnInput:dir") properties/0/path = NodePath("PawnInput:dir")
@@ -50,9 +55,6 @@ floor_snap_length = 1.0
script = ExtResource("1_h27ep") script = ExtResource("1_h27ep")
speed = 2.25 speed = 2.25
[node name="PawnBody" parent="." instance=ExtResource("2_dt0l8")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.425, 0)
[node name="CollisionShape3D" type="CollisionShape3D" parent="."] [node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.375, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.375, 0)
shape = SubResource("CapsuleShape3D_a5wj7") shape = SubResource("CapsuleShape3D_a5wj7")

View File

@@ -60,8 +60,8 @@ width = 1
[node name="PawnDisplay" type="Panel"] [node name="PawnDisplay" type="Panel"]
offset_left = 94.0 offset_left = 94.0
offset_top = 96.0 offset_top = 96.0
offset_right = 794.0 offset_right = 594.0
offset_bottom = 796.0 offset_bottom = 596.0
script = ExtResource("1_c4qnx") script = ExtResource("1_c4qnx")
[node name="Portrait" type="TextureRect" parent="."] [node name="Portrait" type="TextureRect" parent="."]
@@ -87,19 +87,18 @@ expand_mode = 1
[node name="Control" type="Control" parent="."] [node name="Control" type="Control" parent="."]
anchors_preset = 0 anchors_preset = 0
offset_left = 108.0 offset_top = 86.0
offset_top = 286.0 offset_right = 284.0
offset_right = 392.0 offset_bottom = 150.0
offset_bottom = 350.0
[node name="PawnName" type="Label" parent="Control"] [node name="PawnName" type="Label" parent="Control"]
unique_name_in_owner = true unique_name_in_owner = true
modulate = Color(0, 0.3254902, 1, 1) modulate = Color(0, 0.3254902, 1, 1)
layout_mode = 0 layout_mode = 0
offset_left = 37.0 offset_left = 37.0
offset_top = 288.0 offset_top = 264.0
offset_right = 448.0 offset_right = 448.0
offset_bottom = 355.0 offset_bottom = 331.0
theme_override_font_sizes/font_size = 48 theme_override_font_sizes/font_size = 48
text = "NAME GOES HERE" text = "NAME GOES HERE"
horizontal_alignment = 1 horizontal_alignment = 1
@@ -112,9 +111,9 @@ anchor_top = 1.0
anchor_right = 0.5 anchor_right = 0.5
anchor_bottom = 1.0 anchor_bottom = 1.0
offset_left = -39.0 offset_left = -39.0
offset_top = 281.0 offset_top = 256.0
offset_right = 245.0 offset_right = 245.0
offset_bottom = 394.0 offset_bottom = 369.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 0 grow_vertical = 0
@@ -126,7 +125,7 @@ unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
[node name="TextureRect" type="TextureRect" parent="Control/VBoxContainer/Panel/HackContainer"] [node name="TextureRect" type="TextureRect" parent="Control/VBoxContainer/Panel/HackContainer"]
custom_minimum_size = Vector2(92, 64) custom_minimum_size = Vector2(80, 94)
layout_mode = 2 layout_mode = 2
expand_mode = 1 expand_mode = 1
script = ExtResource("3_ph4cm") script = ExtResource("3_ph4cm")

View File

@@ -0,0 +1,119 @@
[gd_scene load_steps=9 format=3 uid="uid://vteg7bvq0i0v"]
[ext_resource type="Script" uid="uid://dqpoa5x8u3r3h" path="res://scripts/pawn_pick_portrait.gd" id="1_xribi"]
[ext_resource type="Texture2D" uid="uid://dri0a20l6kpbj" path="res://visuals/images/icon.svg" id="2_gb3se"]
[sub_resource type="Shader" id="Shader_fa52j"]
code = "shader_type canvas_item;
uniform sampler2D main_texture;
uniform float granularity : hint_range(5, 30) = 15.0;
uniform float opacity_limit;
float random (vec2 uv) {
return fract(sin(dot(uv.xy,
vec2(12.9898,78.233))) * 43758.5453123);
}
void vertex() {
// Called for every vertex the material is visible on.
}
void fragment() {
// Called for every pixel the material is visible on.
vec2 uv = UV;
float g = ( pow(granularity, 2));
uv = round((uv * g)) / g;
uv.y = TIME * uv.y + TIME * .05;
uv.x = 10.0 * TIME * uv.x + TIME * 1.0;
float val = random(uv);
float op = random(-uv) / val;
float alpha = 1.0;
if(op < opacity_limit){
alpha = 0.0;
}
vec4 color = vec4(val, val, val, alpha * COLOR.a);
COLOR = color;
}
//void light() {
// // Called for every pixel for every light affecting the CanvasItem.
// // Uncomment to replace the default light processing function with this one.
//}
"
[sub_resource type="ShaderMaterial" id="ShaderMaterial_5wdeo"]
shader = SubResource("Shader_fa52j")
shader_parameter/granularity = 10.0000002375
shader_parameter/opacity_limit = 0.86
[sub_resource type="Gradient" id="Gradient_ak2if"]
offsets = PackedFloat32Array(0)
colors = PackedColorArray(0, 0, 0, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_fa52j"]
gradient = SubResource("Gradient_ak2if")
width = 1
[sub_resource type="Gradient" id="Gradient_w1hxv"]
offsets = PackedFloat32Array(1)
colors = PackedColorArray(1, 1, 1, 1)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_bqp8h"]
gradient = SubResource("Gradient_w1hxv")
width = 1
[node name="PawnPickPortrait" type="Panel"]
custom_minimum_size = Vector2(150, 150)
script = ExtResource("1_xribi")
[node name="Portrait" type="TextureRect" parent="."]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_gb3se")
expand_mode = 1
[node name="Cover" type="Control" parent="."]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Static" type="TextureRect" parent="Cover"]
material = SubResource("ShaderMaterial_5wdeo")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_fa52j")
expand_mode = 1
[node name="Green Tint" type="TextureRect" parent="Cover"]
modulate = Color(0, 0.6039216, 0, 0.42745098)
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("GradientTexture1D_bqp8h")
expand_mode = 1
[node name="NinePatchRect" type="NinePatchRect" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2

View File

@@ -9891,6 +9891,20 @@ tracks/58/path = NodePath("%GeneralSkeleton:RightToes")
tracks/58/interp = 1 tracks/58/interp = 1
tracks/58/loop_wrap = true tracks/58/loop_wrap = true
tracks/58/keys = PackedFloat32Array(0, 1, 2.230305e-08, -1, -8.940697e-08, -2.2097256e-08) tracks/58/keys = PackedFloat32Array(0, 1, 2.230305e-08, -1, -8.940697e-08, -2.2097256e-08)
tracks/59/type = "method"
tracks/59/imported = false
tracks/59/enabled = true
tracks/59/path = NodePath("..")
tracks/59/interp = 1
tracks/59/loop_wrap = true
tracks/59/keys = {
"times": PackedFloat32Array(0.8),
"transitions": PackedFloat32Array(1),
"values": [{
"args": [&"reloading"],
"method": &"emit_signal"
}]
}
[sub_resource type="Animation" id="Animation_xtckd"] [sub_resource type="Animation" id="Animation_xtckd"]
resource_name = "Pistol_Shoot" resource_name = "Pistol_Shoot"
@@ -10311,15 +10325,15 @@ tracks/58/keys = PackedFloat32Array(0, 1, 2.230305e-08, -1, -8.940697e-08, -2.20
tracks/59/type = "method" tracks/59/type = "method"
tracks/59/imported = false tracks/59/imported = false
tracks/59/enabled = true tracks/59/enabled = true
tracks/59/path = NodePath("../..") tracks/59/path = NodePath("..")
tracks/59/interp = 1 tracks/59/interp = 1
tracks/59/loop_wrap = true tracks/59/loop_wrap = true
tracks/59/keys = { tracks/59/keys = {
"times": PackedFloat32Array(0), "times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1), "transitions": PackedFloat32Array(1),
"values": [{ "values": [{
"args": [], "args": [&"firing"],
"method": &"fire_ranged" "method": &"emit_signal"
}] }]
} }
@@ -19347,7 +19361,7 @@ advance_expression = "take_shot == true"
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_prcnq"] [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_prcnq"]
switch_mode = 2 switch_mode = 2
advance_mode = 2 advance_mode = 2
advance_expression = "reload == true" advance_expression = "take_shot == false"
[sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_n5wpo"] [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_n5wpo"]
advance_mode = 2 advance_mode = 2
@@ -19368,7 +19382,7 @@ states/Hit_Chest/position = Vector2(134, 239)
states/Motion/node = SubResource("AnimationNodeBlendSpace1D_a4li3") states/Motion/node = SubResource("AnimationNodeBlendSpace1D_a4li3")
states/Motion/position = Vector2(852.5, 214.3125) states/Motion/position = Vector2(852.5, 214.3125)
states/Pistol_Idle/node = SubResource("AnimationNodeAnimation_tpe7m") states/Pistol_Idle/node = SubResource("AnimationNodeAnimation_tpe7m")
states/Pistol_Idle/position = Vector2(1009.58984, 214.4654) states/Pistol_Idle/position = Vector2(1009.58984, 214.3125)
states/Pistol_Reload/node = SubResource("AnimationNodeAnimation_80lp4") states/Pistol_Reload/node = SubResource("AnimationNodeAnimation_80lp4")
states/Pistol_Reload/position = Vector2(162, 294) states/Pistol_Reload/position = Vector2(162, 294)
"states/Pistol_Reload 2/node" = SubResource("AnimationNodeAnimation_44rnf") "states/Pistol_Reload 2/node" = SubResource("AnimationNodeAnimation_44rnf")
@@ -19430,7 +19444,6 @@ script = ExtResource("1_ox2bo")
projectile_template = ExtResource("2_pbmu7") projectile_template = ExtResource("2_pbmu7")
[node name="Model" type="Node3D" parent="."] [node name="Model" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
[node name="GeneralSkeleton" type="Skeleton3D" parent="Model"] [node name="GeneralSkeleton" type="Skeleton3D" parent="Model"]
unique_name_in_owner = true unique_name_in_owner = true
@@ -19447,8 +19460,8 @@ bones/1/name = "Hips"
bones/1/parent = 0 bones/1/parent = 0
bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003) bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003)
bones/1/enabled = true bones/1/enabled = true
bones/1/position = Vector3(-0.0024818163, 0.87689203, -0.08611909) bones/1/position = Vector3(0.0029217794, 0.87712944, -0.08623208)
bones/1/rotation = Quaternion(-0.041834366, -0.11343615, -0.0047956714, 0.9926526) bones/1/rotation = Quaternion(-0.048274823, -0.122335054, -0.0053202827, 0.99129987)
bones/1/scale = Vector3(1, 1, 1) bones/1/scale = Vector3(1, 1, 1)
bones/2/name = "Spine" bones/2/name = "Spine"
bones/2/parent = 1 bones/2/parent = 1
@@ -19462,77 +19475,77 @@ bones/3/parent = 2
bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981) bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981)
bones/3/enabled = true bones/3/enabled = true
bones/3/position = Vector3(0, 0.12309997, 0.015199981) bones/3/position = Vector3(0, 0.12309997, 0.015199981)
bones/3/rotation = Quaternion(0.09659883, -5.355537e-05, 0.00026460417, 0.99532336) bones/3/rotation = Quaternion(0.083439596, -0.050386205, -0.014193618, 0.995137)
bones/3/scale = Vector3(1, 1, 1) bones/3/scale = Vector3(1, 1, 1)
bones/4/name = "UpperChest" bones/4/name = "UpperChest"
bones/4/parent = 3 bones/4/parent = 3
bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025) bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025)
bones/4/enabled = true bones/4/enabled = true
bones/4/position = Vector3(0, 0.14120016, -0.004500025) bones/4/position = Vector3(0, 0.14120016, -0.004500025)
bones/4/rotation = Quaternion(0.09650713, -0.00017420544, 0.000392597, 0.99533224) bones/4/rotation = Quaternion(0.083440006, -0.1491554, -0.011031527, 0.9852253)
bones/4/scale = Vector3(1, 1, 1) bones/4/scale = Vector3(1, 1, 1)
bones/5/name = "Neck" bones/5/name = "Neck"
bones/5/parent = 4 bones/5/parent = 4
bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037) bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037)
bones/5/enabled = true bones/5/enabled = true
bones/5/position = Vector3(0, 0.17280002, -0.005600037) bones/5/position = Vector3(0, 0.17280002, -0.005600037)
bones/5/rotation = Quaternion(-0.09660053, 8.970201e-05, -0.00042705837, 0.9953232) bones/5/rotation = Quaternion(0.017888838, 0.10118126, 0.006566928, 0.99468553)
bones/5/scale = Vector3(1, 1, 1) bones/5/scale = Vector3(1, 1, 1)
bones/6/name = "Head" bones/6/name = "Head"
bones/6/parent = 5 bones/6/parent = 5
bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875) bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875)
bones/6/enabled = true bones/6/enabled = true
bones/6/position = Vector3(0, 0.081100024, 0.0155999875) bones/6/position = Vector3(0, 0.081100024, 0.0155999875)
bones/6/rotation = Quaternion(0.07733145, 0.09392192, 0.006599924, 0.99254984) bones/6/rotation = Quaternion(0.024657993, -0.13774714, -0.024798114, 0.98985)
bones/6/scale = Vector3(1, 1, 1) bones/6/scale = Vector3(1, 1, 1)
bones/7/name = "LeftShoulder" bones/7/name = "LeftShoulder"
bones/7/parent = 4 bones/7/parent = 4
bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998) bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998)
bones/7/enabled = true bones/7/enabled = true
bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998) bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998)
bones/7/rotation = Quaternion(0.48981094, 0.5252108, 0.5261682, -0.45539638) bones/7/rotation = Quaternion(0.47803193, 0.5050022, 0.4935733, -0.52234435)
bones/7/scale = Vector3(1, 1, 1) bones/7/scale = Vector3(1, 1, 1)
bones/8/name = "LeftUpperArm" bones/8/name = "LeftUpperArm"
bones/8/parent = 7 bones/8/parent = 7
bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007) bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007)
bones/8/enabled = true bones/8/enabled = true
bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007) bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007)
bones/8/rotation = Quaternion(-0.053318888, 0.8184777, -0.5719345, 0.011934999) bones/8/rotation = Quaternion(0.49294424, 0.77037, -0.40433675, 0.0069256644)
bones/8/scale = Vector3(1, 1, 1) bones/8/scale = Vector3(1, 1, 1)
bones/9/name = "LeftLowerArm" bones/9/name = "LeftLowerArm"
bones/9/parent = 8 bones/9/parent = 8
bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08) bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08)
bones/9/enabled = true bones/9/enabled = true
bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08) bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08)
bones/9/rotation = Quaternion(0.19455527, -0.65546066, 0.18630217, 0.70555735) bones/9/rotation = Quaternion(0.40944093, -0.57015, 0.5879608, 0.40198165)
bones/9/scale = Vector3(1, 1, 1) bones/9/scale = Vector3(1, 1, 1)
bones/10/name = "LeftHand" bones/10/name = "LeftHand"
bones/10/parent = 9 bones/10/parent = 9
bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036) bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036)
bones/10/enabled = true bones/10/enabled = true
bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036) bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036)
bones/10/rotation = Quaternion(0.10066947, 0.70664036, 0.06496154, 0.6973557) bones/10/rotation = Quaternion(-0.066626236, 0.5500871, 0.035547514, 0.8316861)
bones/10/scale = Vector3(1, 1, 1) bones/10/scale = Vector3(1, 1, 1)
bones/11/name = "LeftIndexProximal" bones/11/name = "LeftIndexProximal"
bones/11/parent = 10 bones/11/parent = 10
bones/11/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.03090003, 0.11989991, 0.001999812) bones/11/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.03090003, 0.11989991, 0.001999812)
bones/11/enabled = true bones/11/enabled = true
bones/11/position = Vector3(-0.03090003, 0.11989991, 0.001999812) bones/11/position = Vector3(-0.03090003, 0.11989991, 0.001999812)
bones/11/rotation = Quaternion(0.6295968, -4.3044434e-08, -4.6125497e-06, 0.776922) bones/11/rotation = Quaternion(0.03729071, -7.154156e-08, -5.175003e-07, 0.99930453)
bones/11/scale = Vector3(1, 1, 1) bones/11/scale = Vector3(1, 1, 1)
bones/12/name = "LeftIndexIntermediate" bones/12/name = "LeftIndexIntermediate"
bones/12/parent = 11 bones/12/parent = 11
bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/enabled = true bones/12/enabled = true
bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/rotation = Quaternion(0.62334186, 2.0268834e-08, -4.2690954e-06, 0.7819495) bones/12/rotation = Quaternion(0.3397444, -1.3053811e-07, -1.8548973e-06, 0.94051784)
bones/12/scale = Vector3(1, 1, 1) bones/12/scale = Vector3(1, 1, 1)
bones/13/name = "LeftIndexDistal" bones/13/name = "LeftIndexDistal"
bones/13/parent = 12 bones/13/parent = 12
bones/13/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.0742177e-09, 0.034800045, 1.1683975e-08) bones/13/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.0742177e-09, 0.034800045, 1.1683975e-08)
bones/13/enabled = true bones/13/enabled = true
bones/13/position = Vector3(-2.0742177e-09, 0.034800045, 1.1683975e-08) bones/13/position = Vector3(-2.0742177e-09, 0.034800045, 1.1683975e-08)
bones/13/rotation = Quaternion(0.62334144, -2.2035704e-07, -4.475343e-06, 0.7819499) bones/13/rotation = Quaternion(0.26331255, 3.1589735e-08, -2.7728588e-06, 0.9647106)
bones/13/scale = Vector3(1, 1, 1) bones/13/scale = Vector3(1, 1, 1)
bones/14/name = "index_04_leaf_l" bones/14/name = "index_04_leaf_l"
bones/14/parent = 13 bones/14/parent = 13
@@ -19546,21 +19559,21 @@ bones/15/parent = 10
bones/15/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.005200028, 0.121599905, -0.00040022636) bones/15/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.005200028, 0.121599905, -0.00040022636)
bones/15/enabled = true bones/15/enabled = true
bones/15/position = Vector3(-0.005200028, 0.121599905, -0.00040022636) bones/15/position = Vector3(-0.005200028, 0.121599905, -0.00040022636)
bones/15/rotation = Quaternion(0.6288943, -0.0297349, -4.4662734e-06, 0.7769219) bones/15/rotation = Quaternion(0.034359887, -0.0016245749, -0.08324677, 0.99593514)
bones/15/scale = Vector3(1, 1, 1) bones/15/scale = Vector3(1, 1, 1)
bones/16/name = "LeftMiddleIntermediate" bones/16/name = "LeftMiddleIntermediate"
bones/16/parent = 15 bones/16/parent = 15
bones/16/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0019999952, 0.04229999, 2.1621558e-08) bones/16/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0019999952, 0.04229999, 2.1621558e-08)
bones/16/enabled = true bones/16/enabled = true
bones/16/position = Vector3(0.0019999952, 0.04229999, 2.1621558e-08) bones/16/position = Vector3(0.0019999952, 0.04229999, 2.1621558e-08)
bones/16/rotation = Quaternion(0.62273276, -0.027554581, -4.4138583e-06, 0.7819494) bones/16/rotation = Quaternion(0.3884896, 0.008260064, -0.010748425, 0.92135346)
bones/16/scale = Vector3(1, 1, 1) bones/16/scale = Vector3(1, 1, 1)
bones/17/name = "LeftMiddleDistal" bones/17/name = "LeftMiddleDistal"
bones/17/parent = 16 bones/17/parent = 16
bones/17/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0014999973, 0.033899974, 1.615871e-07) bones/17/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0014999973, 0.033899974, 1.615871e-07)
bones/17/enabled = true bones/17/enabled = true
bones/17/position = Vector3(0.0014999973, 0.033899974, 1.615871e-07) bones/17/position = Vector3(0.0014999973, 0.033899974, 1.615871e-07)
bones/17/rotation = Quaternion(0.6226684, -0.028961534, -4.46933e-06, 0.7819498) bones/17/rotation = Quaternion(0.42306805, -0.019677328, -3.4574791e-06, 0.9058843)
bones/17/scale = Vector3(1, 1, 1) bones/17/scale = Vector3(1, 1, 1)
bones/18/name = "middle_04_leaf_l" bones/18/name = "middle_04_leaf_l"
bones/18/parent = 17 bones/18/parent = 17
@@ -19574,21 +19587,21 @@ bones/19/parent = 10
bones/19/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04079998, 0.10769992, 0.0015997506) bones/19/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.04079998, 0.10769992, 0.0015997506)
bones/19/enabled = true bones/19/enabled = true
bones/19/position = Vector3(0.04079998, 0.10769992, 0.0015997506) bones/19/position = Vector3(0.04079998, 0.10769992, 0.0015997506)
bones/19/rotation = Quaternion(0.6630008, -0.044529777, 0.07369416, 0.7436506) bones/19/rotation = Quaternion(0.4281105, -0.028753696, -0.066136904, 0.9008444)
bones/19/scale = Vector3(1, 1, 1) bones/19/scale = Vector3(1, 1, 1)
bones/20/name = "LeftLittleIntermediate" bones/20/name = "LeftLittleIntermediate"
bones/20/parent = 19 bones/20/parent = 19
bones/20/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0027000003, 0.040200002, 1.7218216e-10) bones/20/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0027000003, 0.040200002, 1.7218216e-10)
bones/20/enabled = true bones/20/enabled = true
bones/20/position = Vector3(0.0027000003, 0.040200002, 1.7218216e-10) bones/20/position = Vector3(0.0027000003, 0.040200002, 1.7218216e-10)
bones/20/rotation = Quaternion(0.6203661, -0.062294018, 0.015573083, 0.78167963) bones/20/rotation = Quaternion(0.39108172, -0.13253164, 0.046397403, 0.9095811)
bones/20/scale = Vector3(1, 1, 1) bones/20/scale = Vector3(1, 1, 1)
bones/21/name = "LeftLittleDistal" bones/21/name = "LeftLittleDistal"
bones/21/parent = 20 bones/21/parent = 20
bones/21/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0018999914, 0.027600013, 2.2658543e-07) bones/21/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0018999914, 0.027600013, 2.2658543e-07)
bones/21/enabled = true bones/21/enabled = true
bones/21/position = Vector3(0.0018999914, 0.027600013, 2.2658543e-07) bones/21/position = Vector3(0.0018999914, 0.027600013, 2.2658543e-07)
bones/21/rotation = Quaternion(0.6219216, -0.042051837, -4.4705234e-06, 0.7819497) bones/21/rotation = Quaternion(0.4008552, -0.027103845, -2.9876176e-06, 0.9157405)
bones/21/scale = Vector3(1, 1, 1) bones/21/scale = Vector3(1, 1, 1)
bones/22/name = "pinky_04_leaf_l" bones/22/name = "pinky_04_leaf_l"
bones/22/parent = 21 bones/22/parent = 21
@@ -19602,21 +19615,21 @@ bones/23/parent = 10
bones/23/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.01709998, 0.1190999, -0.00010017503) bones/23/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.01709998, 0.1190999, -0.00010017503)
bones/23/enabled = true bones/23/enabled = true
bones/23/position = Vector3(0.01709998, 0.1190999, -0.00010017503) bones/23/position = Vector3(0.01709998, 0.1190999, -0.00010017503)
bones/23/rotation = Quaternion(0.6291978, -0.022414068, -4.198693e-06, 0.77692205) bones/23/rotation = Quaternion(0.30737934, -0.010949735, -0.16781034, 0.9366098)
bones/23/scale = Vector3(1, 1, 1) bones/23/scale = Vector3(1, 1, 1)
bones/24/name = "LeftRingIntermediate" bones/24/name = "LeftRingIntermediate"
bones/24/parent = 23 bones/24/parent = 23
bones/24/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.001399991, 0.039300047, -1.0103322e-07) bones/24/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.001399991, 0.039300047, -1.0103322e-07)
bones/24/enabled = true bones/24/enabled = true
bones/24/position = Vector3(0.001399991, 0.039300047, -1.0103322e-07) bones/24/position = Vector3(0.001399991, 0.039300047, -1.0103322e-07)
bones/24/rotation = Quaternion(0.6229472, -0.022176372, -4.326954e-06, 0.78194946) bones/24/rotation = Quaternion(0.3325078, -0.17884532, 0.061298802, 0.9239564)
bones/24/scale = Vector3(1, 1, 1) bones/24/scale = Vector3(1, 1, 1)
bones/25/name = "LeftRingDistal" bones/25/name = "LeftRingDistal"
bones/25/parent = 24 bones/25/parent = 24
bones/25/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0010999943, 0.030899974, -1.0082857e-07) bones/25/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0010999943, 0.030899974, -1.0082857e-07)
bones/25/enabled = true bones/25/enabled = true
bones/25/position = Vector3(0.0010999943, 0.030899974, -1.0082857e-07) bones/25/position = Vector3(0.0010999943, 0.030899974, -1.0082857e-07)
bones/25/rotation = Quaternion(0.6228982, -0.023505481, -4.496571e-06, 0.7819497) bones/25/rotation = Quaternion(0.42352107, -0.015981447, -3.7984141e-06, 0.9057453)
bones/25/scale = Vector3(1, 1, 1) bones/25/scale = Vector3(1, 1, 1)
bones/26/name = "ring_04_leaf_l" bones/26/name = "ring_04_leaf_l"
bones/26/parent = 25 bones/26/parent = 25
@@ -19630,21 +19643,21 @@ bones/27/parent = 10
bones/27/rest = Transform3D(0, -0.577, 0.816, 0, 0.816, 0.577, -1, 0, 0, -0.03360002, 0.02729993, 0.022799803) bones/27/rest = Transform3D(0, -0.577, 0.816, 0, 0.816, 0.577, -1, 0, 0, -0.03360002, 0.02729993, 0.022799803)
bones/27/enabled = true bones/27/enabled = true
bones/27/position = Vector3(-0.03360002, 0.02729993, 0.022799803) bones/27/position = Vector3(-0.03360002, 0.02729993, 0.022799803)
bones/27/rotation = Quaternion(-0.12381917, 0.7195234, 0.20183541, 0.6528533) bones/27/rotation = Quaternion(-0.21418707, 0.6738871, 0.21418677, 0.6738873)
bones/27/scale = Vector3(1, 0.99939233, 0.99939233) bones/27/scale = Vector3(1, 0.99939233, 0.99939233)
bones/28/name = "LeftThumbProximal" bones/28/name = "LeftThumbProximal"
bones/28/parent = 27 bones/28/parent = 27
bones/28/rest = Transform3D(0.99999994, 0, 0, 0, 0.9999999, 2.9802322e-08, 0, -2.9802322e-08, 0.9999999, -0.019199941, 0.03816641, 0.005296665) bones/28/rest = Transform3D(0.99999994, 0, 0, 0, 0.9999999, 2.9802322e-08, 0, -2.9802322e-08, 0.9999999, -0.019199941, 0.03816641, 0.005296665)
bones/28/enabled = true bones/28/enabled = true
bones/28/position = Vector3(-0.019199941, 0.03816641, 0.005296665) bones/28/position = Vector3(-0.019199941, 0.03816641, 0.005296665)
bones/28/rotation = Quaternion(0.18180695, 0.11012424, 0.060063306, 0.97530067) bones/28/rotation = Quaternion(-3.3225461e-07, -1.2098091e-07, -2.5420556e-07, 1)
bones/28/scale = Vector3(0.99999994, 0.9999999, 0.9999999) bones/28/scale = Vector3(0.99999994, 0.9999999, 0.9999999)
bones/29/name = "LeftThumbDistal" bones/29/name = "LeftThumbDistal"
bones/29/parent = 28 bones/29/parent = 28
bones/29/rest = Transform3D(1, 0, 0, 0, 1.0000001, 0, 0, 0, 1.0000001, -0.021900143, 0.043532185, 0.0060270326) bones/29/rest = Transform3D(1, 0, 0, 0, 1.0000001, 0, 0, 0, 1.0000001, -0.021900143, 0.043532185, 0.0060270326)
bones/29/enabled = true bones/29/enabled = true
bones/29/position = Vector3(-0.021900143, 0.043532185, 0.0060270326) bones/29/position = Vector3(-0.021900143, 0.043532185, 0.0060270326)
bones/29/rotation = Quaternion(0.59942997, 0.27396563, 0.1946321, 0.7264606) bones/29/rotation = Quaternion(1.1049305e-07, 6.664385e-08, 1.4723999e-07, 1)
bones/29/scale = Vector3(1, 1.0000001, 1.0000001) bones/29/scale = Vector3(1, 1.0000001, 1.0000001)
bones/30/name = "thumb_04_leaf_l" bones/30/name = "thumb_04_leaf_l"
bones/30/parent = 29 bones/30/parent = 29
@@ -19652,83 +19665,83 @@ bones/30/rest = Transform3D(0.6015796, -0.44539672, 0.6631167, 0.39881337, 0.887
bones/30/enabled = true bones/30/enabled = true
bones/30/position = Vector3(-0.018200096, 0.036257587, 0.0050497632) bones/30/position = Vector3(-0.018200096, 0.036257587, 0.0050497632)
bones/30/rotation = Quaternion(-0.030814808, 0.3790144, 0.2359555, 0.8942726) bones/30/rotation = Quaternion(-0.030814808, 0.3790144, 0.2359555, 0.8942726)
bones/30/scale = Vector3(1.0001454, 1.0004877, 1.0005833) bones/30/scale = Vector3(1.0001454, 1.0004876, 1.0005833)
bones/31/name = "RightShoulder" bones/31/name = "RightShoulder"
bones/31/parent = 4 bones/31/parent = 4
bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998) bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998)
bones/31/enabled = true bones/31/enabled = true
bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998) bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998)
bones/31/rotation = Quaternion(0.5410766, -0.47414726, -0.47513646, -0.5066221) bones/31/rotation = Quaternion(0.4653403, -0.5231923, -0.581982, -0.41355187)
bones/31/scale = Vector3(1, 1, 1) bones/31/scale = Vector3(1, 1, 1)
bones/32/name = "RightUpperArm" bones/32/name = "RightUpperArm"
bones/32/parent = 31 bones/32/parent = 31
bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007) bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007)
bones/32/enabled = true bones/32/enabled = true
bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007) bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007)
bones/32/rotation = Quaternion(0.0796535, 0.8229885, -0.5623339, -0.011223189) bones/32/rotation = Quaternion(-0.5746534, 0.7629577, -0.29604623, -0.0050707604)
bones/32/scale = Vector3(1, 1, 1) bones/32/scale = Vector3(1, 1, 1)
bones/33/name = "RightLowerArm" bones/33/name = "RightLowerArm"
bones/33/parent = 32 bones/33/parent = 32
bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07) bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07)
bones/33/enabled = true bones/33/enabled = true
bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07) bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07)
bones/33/rotation = Quaternion(0.28995654, 0.5505457, -0.20452261, 0.7556421) bones/33/rotation = Quaternion(0.26061803, 0.7097086, -0.5588766, 0.3406597)
bones/33/scale = Vector3(1, 1, 1) bones/33/scale = Vector3(1, 1, 1)
bones/34/name = "RightHand" bones/34/name = "RightHand"
bones/34/parent = 33 bones/34/parent = 33
bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046) bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046)
bones/34/enabled = true bones/34/enabled = true
bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046) bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046)
bones/34/rotation = Quaternion(0.11832662, -0.6995707, -0.05611654, 0.7024604) bones/34/rotation = Quaternion(0.2154221, -0.082114436, -0.03242578, 0.97252214)
bones/34/scale = Vector3(1, 1, 1) bones/34/scale = Vector3(1, 1, 1)
bones/35/name = "RightIndexProximal" bones/35/name = "RightIndexProximal"
bones/35/parent = 34 bones/35/parent = 34
bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003) bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003)
bones/35/enabled = true bones/35/enabled = true
bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003) bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003)
bones/35/rotation = Quaternion(0.6295971, 2.8769072e-08, 4.1759718e-06, 0.7769218) bones/35/rotation = Quaternion(-0.0018894076, -2.3841858e-07, 0.044270396, 0.99901783)
bones/35/scale = Vector3(1, 1, 1) bones/35/scale = Vector3(1, 1, 1)
bones/36/name = "RightIndexIntermediate" bones/36/name = "RightIndexIntermediate"
bones/36/parent = 35 bones/36/parent = 35
bones/36/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.5648136e-10, 0.040700104, -1.0677797e-07) bones/36/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.5648136e-10, 0.040700104, -1.0677797e-07)
bones/36/enabled = true bones/36/enabled = true
bones/36/position = Vector3(-5.5648136e-10, 0.040700104, -1.0677797e-07) bones/36/position = Vector3(-5.5648136e-10, 0.040700104, -1.0677797e-07)
bones/36/rotation = Quaternion(0.6233415, 1.7438845e-07, 4.4640537e-06, 0.7819498) bones/36/rotation = Quaternion(0.38319921, -0.02836375, 0.011775523, 0.923155)
bones/36/scale = Vector3(1, 1, 1) bones/36/scale = Vector3(1, 1, 1)
bones/37/name = "RightIndexDistal" bones/37/name = "RightIndexDistal"
bones/37/parent = 36 bones/37/parent = 36
bones/37/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.121974e-10, 0.03480002, -1.0666921e-07) bones/37/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.121974e-10, 0.03480002, -1.0666921e-07)
bones/37/enabled = true bones/37/enabled = true
bones/37/position = Vector3(-6.121974e-10, 0.03480002, -1.0666921e-07) bones/37/position = Vector3(-6.121974e-10, 0.03480002, -1.0666921e-07)
bones/37/rotation = Quaternion(0.6233416, 8.720804e-08, 4.2308952e-06, 0.78194976) bones/37/rotation = Quaternion(0.5064349, -1.3411044e-07, 4.470348e-06, 0.86227816)
bones/37/scale = Vector3(1, 1, 1) bones/37/scale = Vector3(1, 1, 1)
bones/38/name = "index_04_leaf_r" bones/38/name = "index_04_leaf_r"
bones/38/parent = 37 bones/38/parent = 37
bones/38/rest = Transform3D(-1.0000001, 1.173466e-07, -1.5419573e-07, 6.8917885e-08, 0.9999999, 1.3196864e-08, 1.7491357e-07, 2.6301036e-08, -0.9999999, 2.5607045e-09, 0.030099956, 1.2416471e-08) bones/38/rest = Transform3D(-1.0000001, 1.173466e-07, -1.5419573e-07, 6.8917885e-08, 0.9999999, 1.3196864e-08, 1.7491357e-07, 2.6301036e-08, -0.9999999, 2.5607045e-09, 0.030099956, 1.2416471e-08)
bones/38/enabled = true bones/38/enabled = true
bones/38/position = Vector3(2.5607045e-09, 0.030099956, 1.2416471e-08) bones/38/position = Vector3(2.5607045e-09, 0.030099956, 1.2416471e-08)
bones/38/rotation = Quaternion(4.9972892e-09, 1, 4.193082e-08, -5.8335807e-08) bones/38/rotation = Quaternion(1.9557778e-08, 1, -1.7506343e-09, -8.7456776e-08)
bones/38/scale = Vector3(1.0000001, 0.9999999, 0.9999999) bones/38/scale = Vector3(1.0000001, 0.9999999, 0.9999999)
bones/39/name = "RightMiddleProximal" bones/39/name = "RightMiddleProximal"
bones/39/parent = 34 bones/39/parent = 34
bones/39/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0052000335, 0.12159993, -0.00040023506) bones/39/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0052000335, 0.12159993, -0.00040023506)
bones/39/enabled = true bones/39/enabled = true
bones/39/position = Vector3(0.0052000335, 0.12159993, -0.00040023506) bones/39/position = Vector3(0.0052000335, 0.12159993, -0.00040023506)
bones/39/rotation = Quaternion(0.62889475, 0.029734792, 4.350848e-06, 0.7769217) bones/39/rotation = Quaternion(0.6046183, 0.028586894, 0.03459153, 0.79525036)
bones/39/scale = Vector3(1, 1, 1) bones/39/scale = Vector3(1, 1, 1)
bones/40/name = "RightMiddleIntermediate" bones/40/name = "RightMiddleIntermediate"
bones/40/parent = 39 bones/40/parent = 39
bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08) bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08)
bones/40/enabled = true bones/40/enabled = true
bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08) bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08)
bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.4966587e-06, 0.78194976) bones/40/rotation = Quaternion(0.5162386, 0.077261716, -0.033125486, 0.8523092)
bones/40/scale = Vector3(1, 1, 1) bones/40/scale = Vector3(1, 1, 1)
bones/41/name = "RightMiddleDistal" bones/41/name = "RightMiddleDistal"
bones/41/parent = 40 bones/41/parent = 40
bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08) bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08)
bones/41/enabled = true bones/41/enabled = true
bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08) bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08)
bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.326954e-06, 0.7819494) bones/41/rotation = Quaternion(0.29623953, 0.013778644, 1.2516977e-06, 0.95501435)
bones/41/scale = Vector3(1, 1, 1) bones/41/scale = Vector3(1, 1, 1)
bones/42/name = "middle_04_leaf_r" bones/42/name = "middle_04_leaf_r"
bones/42/parent = 41 bones/42/parent = 41
@@ -19742,77 +19755,77 @@ bones/43/parent = 34
bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475) bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475)
bones/43/enabled = true bones/43/enabled = true
bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475) bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475)
bones/43/rotation = Quaternion(0.6630007, 0.044529956, -0.07369392, 0.74365073) bones/43/rotation = Quaternion(0.80694354, 0.05419756, -0.041671038, 0.5866586)
bones/43/scale = Vector3(1, 1, 1) bones/43/scale = Vector3(1, 1, 1)
bones/44/name = "RightLittleIntermediate" bones/44/name = "RightLittleIntermediate"
bones/44/parent = 43 bones/44/parent = 43
bones/44/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0026999926, 0.040199965, -4.7321702e-11) bones/44/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0026999926, 0.040199965, -4.7321702e-11)
bones/44/enabled = true bones/44/enabled = true
bones/44/position = Vector3(-0.0026999926, 0.040199965, -4.7321702e-11) bones/44/position = Vector3(-0.0026999926, 0.040199965, -4.7321702e-11)
bones/44/rotation = Quaternion(0.6203664, 0.06229365, -0.01557291, 0.7816794) bones/44/rotation = Quaternion(0.31627935, 0.13458802, -0.038931996, 0.93826324)
bones/44/scale = Vector3(1, 1, 1) bones/44/scale = Vector3(1, 1, 1)
bones/45/name = "RightLittleDistal" bones/45/name = "RightLittleDistal"
bones/45/parent = 44 bones/45/parent = 44
bones/45/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0018999918, 0.027600035, -1.0417894e-08) bones/45/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0018999918, 0.027600035, -1.0417894e-08)
bones/45/enabled = true bones/45/enabled = true
bones/45/position = Vector3(-0.0018999918, 0.027600035, -1.0417894e-08) bones/45/position = Vector3(-0.0018999918, 0.027600035, -1.0417894e-08)
bones/45/rotation = Quaternion(0.6219219, 0.04205143, 4.4810004e-06, 0.78194946) bones/45/rotation = Quaternion(0.25646293, 0.017340943, 3.3676624e-06, 0.9663985)
bones/45/scale = Vector3(1, 1, 1) bones/45/scale = Vector3(1, 1, 1)
bones/46/name = "pinky_04_leaf_r" bones/46/name = "pinky_04_leaf_r"
bones/46/parent = 45 bones/46/parent = 45
bones/46/rest = Transform3D(-0.99772197, -0.0674616, -2.5873078e-07, -0.06746164, 0.9977217, 1.503156e-08, 1.7270258e-07, 4.6777405e-08, -0.9999999, -0.001899995, 0.028100003, -1.2148155e-07) bones/46/rest = Transform3D(-0.99772197, -0.0674616, -2.5873078e-07, -0.06746164, 0.9977217, 1.503156e-08, 1.7270258e-07, 4.6777405e-08, -0.9999999, -0.001899995, 0.028100003, -1.2148155e-07)
bones/46/enabled = true bones/46/enabled = true
bones/46/position = Vector3(-0.001899995, 0.028100003, -1.2148155e-07) bones/46/position = Vector3(-0.001899995, 0.028100003, -1.2148155e-07)
bones/46/rotation = Quaternion(-0.03375008, 0.99943036, 4.8276583e-08, -5.8037205e-08) bones/46/rotation = Quaternion(-0.03375011, 0.99943036, 7.077092e-09, -1.322724e-07)
bones/46/scale = Vector3(1.0000001, 0.99999976, 0.9999999) bones/46/scale = Vector3(1.0000001, 0.99999976, 0.9999999)
bones/47/name = "RightRingProximal" bones/47/name = "RightRingProximal"
bones/47/parent = 34 bones/47/parent = 34
bones/47/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.017099975, 0.11909993, -0.00010018104) bones/47/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.017099975, 0.11909993, -0.00010018104)
bones/47/enabled = true bones/47/enabled = true
bones/47/position = Vector3(-0.017099975, 0.11909993, -0.00010018104) bones/47/position = Vector3(-0.017099975, 0.11909993, -0.00010018104)
bones/47/rotation = Quaternion(0.6291981, 0.022413788, 4.1188027e-06, 0.77692175) bones/47/rotation = Quaternion(0.7688189, 0.027387554, -0.019950124, 0.6385684)
bones/47/scale = Vector3(1, 1, 1) bones/47/scale = Vector3(1, 1, 1)
bones/48/name = "RightRingIntermediate" bones/48/name = "RightRingIntermediate"
bones/48/parent = 47 bones/48/parent = 47
bones/48/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0013999942, 0.039300077, -2.1747476e-07) bones/48/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0013999942, 0.039300077, -2.1747476e-07)
bones/48/enabled = true bones/48/enabled = true
bones/48/position = Vector3(-0.0013999942, 0.039300077, -2.1747476e-07) bones/48/position = Vector3(-0.0013999942, 0.039300077, -2.1747476e-07)
bones/48/rotation = Quaternion(0.62294656, 0.0221762, 4.4662743e-06, 0.7819501) bones/48/rotation = Quaternion(0.32148638, 0.10910274, -0.03375864, 0.94000185)
bones/48/scale = Vector3(1, 1, 1) bones/48/scale = Vector3(1, 1, 1)
bones/49/name = "RightRingDistal" bones/49/name = "RightRingDistal"
bones/49/parent = 48 bones/49/parent = 48
bones/49/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0010999979, 0.030900003, -9.946502e-08) bones/49/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0010999979, 0.030900003, -9.946502e-08)
bones/49/enabled = true bones/49/enabled = true
bones/49/position = Vector3(-0.0010999979, 0.030900003, -9.946502e-08) bones/49/position = Vector3(-0.0010999979, 0.030900003, -9.946502e-08)
bones/49/rotation = Quaternion(0.6228987, 0.02350526, 4.1732565e-06, 0.78194934) bones/49/rotation = Quaternion(0.3906144, 0.0147405695, 3.0696388e-06, 0.9204363)
bones/49/scale = Vector3(1, 1, 1) bones/49/scale = Vector3(1, 1, 1)
bones/50/name = "ring_04_leaf_r" bones/50/name = "ring_04_leaf_r"
bones/50/parent = 49 bones/50/parent = 49
bones/50/rest = Transform3D(-0.9992889, -0.037708856, -3.9285123e-07, -0.037708916, 0.99928814, 7.1365776e-09, 4.1251042e-07, 3.5821593e-08, -0.9999999, -0.0011999963, 0.031799987, 5.404123e-09) bones/50/rest = Transform3D(-0.9992889, -0.037708856, -3.9285123e-07, -0.037708916, 0.99928814, 7.1365776e-09, 4.1251042e-07, 3.5821593e-08, -0.9999999, -0.0011999963, 0.031799987, 5.404123e-09)
bones/50/enabled = true bones/50/enabled = true
bones/50/position = Vector3(-0.0011999963, 0.031799987, 5.404123e-09) bones/50/position = Vector3(-0.0011999963, 0.031799987, 5.404123e-09)
bones/50/rotation = Quaternion(-0.018857837, 0.9998222, -1.4548527e-08, -2.3622121e-07) bones/50/rotation = Quaternion(-0.018857807, 0.9998222, 1.4018108e-08, -2.0655628e-07)
bones/50/scale = Vector3(1.0000001, 0.99999934, 0.9999999) bones/50/scale = Vector3(1.0000001, 0.99999934, 0.9999999)
bones/51/name = "RightThumbMetacarpal" bones/51/name = "RightThumbMetacarpal"
bones/51/parent = 34 bones/51/parent = 34
bones/51/rest = Transform3D(0, 0.577, -0.816, 0, 0.816, 0.577, 1, 0, 0, 0.03360003, 0.02729996, 0.022799788) bones/51/rest = Transform3D(0, 0.577, -0.816, 0, 0.816, 0.577, 1, 0, 0, 0.03360003, 0.02729996, 0.022799788)
bones/51/enabled = true bones/51/enabled = true
bones/51/position = Vector3(0.03360003, 0.02729996, 0.022799788) bones/51/position = Vector3(0.03360003, 0.02729996, 0.022799788)
bones/51/rotation = Quaternion(-0.12381923, -0.71952325, -0.2018356, 0.6528533) bones/51/rotation = Quaternion(-0.06001975, -0.7160839, -0.2818967, 0.6357324)
bones/51/scale = Vector3(1, 0.99939233, 0.99939233) bones/51/scale = Vector3(1, 0.99939233, 0.99939233)
bones/52/name = "RightThumbProximal" bones/52/name = "RightThumbProximal"
bones/52/parent = 51 bones/52/parent = 51
bones/52/rest = Transform3D(0.99999994, 0, 0, 0, 0.9999999, 2.9802322e-08, 0, -2.9802322e-08, 0.9999999, 0.019199956, 0.038166482, 0.005296612) bones/52/rest = Transform3D(0.99999994, 0, 0, 0, 0.9999999, 2.9802322e-08, 0, -2.9802322e-08, 0.9999999, 0.019199956, 0.038166482, 0.005296612)
bones/52/enabled = true bones/52/enabled = true
bones/52/position = Vector3(0.019199956, 0.038166482, 0.005296612) bones/52/position = Vector3(0.019199956, 0.038166482, 0.005296612)
bones/52/rotation = Quaternion(0.18180704, -0.11012423, -0.06006331, 0.97530067) bones/52/rotation = Quaternion(0.18916614, -0.26830974, 0.13073356, 0.9354864)
bones/52/scale = Vector3(0.99999994, 0.9999999, 0.9999999) bones/52/scale = Vector3(0.99999994, 0.9999999, 0.9999999)
bones/53/name = "RightThumbDistal" bones/53/name = "RightThumbDistal"
bones/53/parent = 52 bones/53/parent = 52
bones/53/rest = Transform3D(1, 0, 0, 0, 1.0000001, 0, 0, 0, 1.0000001, 0.021899961, 0.04353219, 0.0060271067) bones/53/rest = Transform3D(1, 0, 0, 0, 1.0000001, 0, 0, 0, 1.0000001, 0.021899961, 0.04353219, 0.0060271067)
bones/53/enabled = true bones/53/enabled = true
bones/53/position = Vector3(0.021899961, 0.04353219, 0.0060271067) bones/53/position = Vector3(0.021899961, 0.04353219, 0.0060271067)
bones/53/rotation = Quaternion(0.59943014, -0.27396527, -0.19463219, 0.7264605) bones/53/rotation = Quaternion(0.41658878, -0.19039917, -0.13526444, 0.87858146)
bones/53/scale = Vector3(1, 1.0000001, 1.0000001) bones/53/scale = Vector3(1, 1.0000001, 1.0000001)
bones/54/name = "thumb_04_leaf_r" bones/54/name = "thumb_04_leaf_r"
bones/54/parent = 53 bones/54/parent = 53
@@ -19820,34 +19833,34 @@ bones/54/rest = Transform3D(0.6015796, 0.4453967, -0.6631166, -0.39881328, 0.887
bones/54/enabled = true bones/54/enabled = true
bones/54/position = Vector3(0.018199861, 0.03625768, 0.00504987) bones/54/position = Vector3(0.018199861, 0.03625768, 0.00504987)
bones/54/rotation = Quaternion(-0.030814791, -0.37901437, -0.23595548, 0.8942726) bones/54/rotation = Quaternion(-0.030814791, -0.37901437, -0.23595548, 0.8942726)
bones/54/scale = Vector3(1.0001454, 1.0004876, 1.0005835) bones/54/scale = Vector3(1.0001454, 1.0004877, 1.0005834)
bones/55/name = "LeftUpperLeg" bones/55/name = "LeftUpperLeg"
bones/55/parent = 1 bones/55/parent = 1
bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985) bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985)
bones/55/enabled = true bones/55/enabled = true
bones/55/position = Vector3(0.089, 0.015400031, 0.051499985) bones/55/position = Vector3(0.089, 0.015400031, 0.051499985)
bones/55/rotation = Quaternion(-0.0013026018, 0.12700388, 0.98540676, -0.11332204) bones/55/rotation = Quaternion(-0.00078904, 0.11607768, 0.98681295, -0.11280838)
bones/55/scale = Vector3(1, 1, 1) bones/55/scale = Vector3(1, 1, 1)
bones/56/name = "LeftLowerLeg" bones/56/name = "LeftLowerLeg"
bones/56/parent = 55 bones/56/parent = 55
bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893) bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893)
bones/56/enabled = true bones/56/enabled = true
bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893) bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893)
bones/56/rotation = Quaternion(0.017659737, 0.9805859, -0.16177222, 0.10940432) bones/56/rotation = Quaternion(0.015998328, 0.98269093, -0.14611013, 0.11275837)
bones/56/scale = Vector3(1, 1, 1) bones/56/scale = Vector3(1, 1, 1)
bones/57/name = "LeftFoot" bones/57/name = "LeftFoot"
bones/57/parent = 56 bones/57/parent = 56
bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886) bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886)
bones/57/enabled = true bones/57/enabled = true
bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886) bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886)
bones/57/rotation = Quaternion(-0.096044466, 0.7320531, -0.67438495, 0.008879307) bones/57/rotation = Quaternion(-0.092097424, 0.7294667, -0.6776705, 0.012619125)
bones/57/scale = Vector3(1, 1, 1) bones/57/scale = Vector3(1, 1, 1)
bones/58/name = "LeftToes" bones/58/name = "LeftToes"
bones/58/parent = 57 bones/58/parent = 57
bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997) bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997)
bones/58/enabled = true bones/58/enabled = true
bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997) bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997)
bones/58/rotation = Quaternion(4.5368964e-08, 1, 5.9104984e-08, 2.8313277e-08) bones/58/rotation = Quaternion(4.105099e-08, 1, 5.9604645e-08, 1.2867343e-08)
bones/58/scale = Vector3(1, 1, 1) bones/58/scale = Vector3(1, 1, 1)
bones/59/name = "ball_leaf_l" bones/59/name = "ball_leaf_l"
bones/59/parent = 58 bones/59/parent = 58
@@ -19861,28 +19874,28 @@ bones/60/parent = 1
bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985) bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985)
bones/60/enabled = true bones/60/enabled = true
bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985) bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985)
bones/60/rotation = Quaternion(0.0011372183, -0.09572886, 0.9888311, 0.114227556) bones/60/rotation = Quaternion(0.00082032575, -0.1092699, 0.98706883, 0.1172803)
bones/60/scale = Vector3(1, 1, 1) bones/60/scale = Vector3(1, 1, 1)
bones/61/name = "RightLowerLeg" bones/61/name = "RightLowerLeg"
bones/61/parent = 60 bones/61/parent = 60
bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893) bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893)
bones/61/enabled = true bones/61/enabled = true
bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893) bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893)
bones/61/rotation = Quaternion(-0.036037955, 0.930469, -0.099836566, -0.35065863) bones/61/rotation = Quaternion(-0.030194327, 0.9287684, -0.08459321, -0.35961306)
bones/61/scale = Vector3(1, 1, 1) bones/61/scale = Vector3(1, 1, 1)
bones/62/name = "RightFoot" bones/62/name = "RightFoot"
bones/62/parent = 61 bones/62/parent = 61
bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875) bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875)
bones/62/enabled = true bones/62/enabled = true
bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875) bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875)
bones/62/rotation = Quaternion(0.16559078, 0.63940245, -0.750829, 0.00030067726) bones/62/rotation = Quaternion(0.17524873, 0.6450124, -0.7437998, 0.0029911033)
bones/62/scale = Vector3(1, 1, 1) bones/62/scale = Vector3(1, 1, 1)
bones/63/name = "RightToes" bones/63/name = "RightToes"
bones/63/parent = 62 bones/63/parent = 62
bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997) bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997)
bones/63/enabled = true bones/63/enabled = true
bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997) bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997)
bones/63/rotation = Quaternion(-3.593684e-05, 0.99999905, 0.0014147965, -2.2199322e-06) bones/63/rotation = Quaternion(-2.230305e-08, 1, 8.940697e-08, 2.2097256e-08)
bones/63/scale = Vector3(1, 1, 1) bones/63/scale = Vector3(1, 1, 1)
bones/64/name = "ball_leaf_r" bones/64/name = "ball_leaf_r"
bones/64/parent = 63 bones/64/parent = 63
@@ -19940,15 +19953,12 @@ parameters/Crouch/blend_position = 0.0
parameters/Motion/blend_position = 0.002057613 parameters/Motion/blend_position = 0.002057613
[node name="MeleeSound" type="AudioStreamPlayer3D" parent="."] [node name="MeleeSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_ghbft") stream = SubResource("AudioStreamRandomizer_ghbft")
[node name="RangedSound" type="AudioStreamPlayer3D" parent="."] [node name="RangedSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_rclin") stream = SubResource("AudioStreamRandomizer_rclin")
[node name="ReloadSound" type="AudioStreamPlayer3D" parent="."] [node name="ReloadSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = ExtResource("11_602kf") stream = ExtResource("11_602kf")
[node name="Subviewport" type="SubViewport" parent="."] [node name="Subviewport" type="SubViewport" parent="."]
@@ -19976,13 +19986,11 @@ show_percentage = false
[node name="StruggleUI" type="Sprite3D" parent="."] [node name="StruggleUI" type="Sprite3D" parent="."]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75085443, 0)
visible = false visible = false
billboard = 1 billboard = 1
texture = SubResource("ViewportTexture_yixtd") texture = SubResource("ViewportTexture_yixtd")
[node name="WalkSound" type="AudioStreamPlayer3D" parent="."] [node name="WalkSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.4, 0)
stream = SubResource("AudioStreamRandomizer_8tr25") stream = SubResource("AudioStreamRandomizer_8tr25")
volume_db = 80.0 volume_db = 80.0
unit_size = 23.18 unit_size = 23.18

View File

@@ -19430,7 +19430,6 @@ script = ExtResource("1_8supt")
projectile_template = ExtResource("2_ltmd0") projectile_template = ExtResource("2_ltmd0")
[node name="Model" type="Node3D" parent="."] [node name="Model" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
[node name="GeneralSkeleton" type="Skeleton3D" parent="Model"] [node name="GeneralSkeleton" type="Skeleton3D" parent="Model"]
unique_name_in_owner = true unique_name_in_owner = true
@@ -19447,8 +19446,8 @@ bones/1/name = "Hips"
bones/1/parent = 0 bones/1/parent = 0
bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003) bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003)
bones/1/enabled = true bones/1/enabled = true
bones/1/position = Vector3(-0.0007328938, 0.87101936, -0.08622885) bones/1/position = Vector3(0.0035783986, 0.87028646, -0.087276146)
bones/1/rotation = Quaternion(-0.040890746, -0.112898745, -0.0052762795, 0.99275076) bones/1/rotation = Quaternion(-0.033985823, -0.113068104, -0.0042227297, 0.99299693)
bones/1/scale = Vector3(1, 1, 1) bones/1/scale = Vector3(1, 1, 1)
bones/2/name = "Spine" bones/2/name = "Spine"
bones/2/parent = 1 bones/2/parent = 1
@@ -19462,56 +19461,56 @@ bones/3/parent = 2
bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981) bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981)
bones/3/enabled = true bones/3/enabled = true
bones/3/position = Vector3(0, 0.12309997, 0.015199981) bones/3/position = Vector3(0, 0.12309997, 0.015199981)
bones/3/rotation = Quaternion(0.08572956, 0.00031751368, 0.0005701809, 0.9963182) bones/3/rotation = Quaternion(0.09935148, 0.000311001, 0.00038528154, 0.9950523)
bones/3/scale = Vector3(1, 1, 1) bones/3/scale = Vector3(1, 1, 1)
bones/4/name = "UpperChest" bones/4/name = "UpperChest"
bones/4/parent = 3 bones/4/parent = 3
bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025) bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025)
bones/4/enabled = true bones/4/enabled = true
bones/4/position = Vector3(0, 0.14120016, -0.004500025) bones/4/position = Vector3(0, 0.14120016, -0.004500025)
bones/4/rotation = Quaternion(0.08574654, 0.00097332295, -0.00031272857, 0.9963165) bones/4/rotation = Quaternion(0.0993596, 0.00093416346, -4.954339e-05, 0.9950512)
bones/4/scale = Vector3(1, 1, 1) bones/4/scale = Vector3(1, 1, 1)
bones/5/name = "Neck" bones/5/name = "Neck"
bones/5/parent = 4 bones/5/parent = 4
bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037) bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037)
bones/5/enabled = true bones/5/enabled = true
bones/5/position = Vector3(0, 0.17280002, -0.005600037) bones/5/position = Vector3(0, 0.17280002, -0.005600037)
bones/5/rotation = Quaternion(-0.085740305, -0.0005980185, 0.00015731764, 0.9963174) bones/5/rotation = Quaternion(-0.09935692, -0.00058916595, 2.1520977e-06, 0.9950517)
bones/5/scale = Vector3(1, 1, 1) bones/5/scale = Vector3(1, 1, 1)
bones/6/name = "Head" bones/6/name = "Head"
bones/6/parent = 5 bones/6/parent = 5
bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875) bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875)
bones/6/enabled = true bones/6/enabled = true
bones/6/position = Vector3(0, 0.081100024, 0.0155999875) bones/6/position = Vector3(0, 0.081100024, 0.0155999875)
bones/6/rotation = Quaternion(0.049555123, 0.092761904, 0.011915421, 0.99438304) bones/6/rotation = Quaternion(0.050695438, 0.093066566, 0.009045329, 0.9943273)
bones/6/scale = Vector3(1, 1, 1) bones/6/scale = Vector3(1, 1, 1)
bones/7/name = "LeftShoulder" bones/7/name = "LeftShoulder"
bones/7/parent = 4 bones/7/parent = 4
bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998) bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998)
bones/7/enabled = true bones/7/enabled = true
bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998) bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998)
bones/7/rotation = Quaternion(0.49939632, 0.52170205, 0.5287748, -0.4459008) bones/7/rotation = Quaternion(0.5016779, 0.5209627, 0.5296114, -0.44320315)
bones/7/scale = Vector3(1, 1, 1) bones/7/scale = Vector3(1, 1, 1)
bones/8/name = "LeftUpperArm" bones/8/name = "LeftUpperArm"
bones/8/parent = 7 bones/8/parent = 7
bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007) bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007)
bones/8/enabled = true bones/8/enabled = true
bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007) bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007)
bones/8/rotation = Quaternion(-0.026602931, 0.82267, -0.567814, 0.009682478) bones/8/rotation = Quaternion(-0.018290967, 0.82400405, -0.56620026, 0.010002998)
bones/8/scale = Vector3(1, 1, 1) bones/8/scale = Vector3(1, 1, 1)
bones/9/name = "LeftLowerArm" bones/9/name = "LeftLowerArm"
bones/9/parent = 8 bones/9/parent = 8
bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08) bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08)
bones/9/enabled = true bones/9/enabled = true
bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08) bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08)
bones/9/rotation = Quaternion(0.16140701, -0.67935175, 0.16613506, 0.6962961) bones/9/rotation = Quaternion(0.16994551, -0.6821057, 0.17713998, 0.6888191)
bones/9/scale = Vector3(1, 1, 1) bones/9/scale = Vector3(1, 1, 1)
bones/10/name = "LeftHand" bones/10/name = "LeftHand"
bones/10/parent = 9 bones/10/parent = 9
bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036) bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036)
bones/10/enabled = true bones/10/enabled = true
bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036) bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036)
bones/10/rotation = Quaternion(0.098697186, 0.70702124, 0.062972814, 0.69743407) bones/10/rotation = Quaternion(0.09773752, 0.70720583, 0.062021844, 0.69746727)
bones/10/scale = Vector3(1, 1, 1) bones/10/scale = Vector3(1, 1, 1)
bones/11/name = "LeftIndexProximal" bones/11/name = "LeftIndexProximal"
bones/11/parent = 10 bones/11/parent = 10
@@ -19525,7 +19524,7 @@ bones/12/parent = 11
bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/enabled = true bones/12/enabled = true
bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/rotation = Quaternion(0.62334186, 2.0268834e-08, -4.2690954e-06, 0.7819495) bones/12/rotation = Quaternion(0.62334186, 2.0268828e-08, -4.269095e-06, 0.78194946)
bones/12/scale = Vector3(1, 1, 1) bones/12/scale = Vector3(1, 1, 1)
bones/13/name = "LeftIndexDistal" bones/13/name = "LeftIndexDistal"
bones/13/parent = 12 bones/13/parent = 12
@@ -19658,35 +19657,35 @@ bones/31/parent = 4
bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998) bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998)
bones/31/enabled = true bones/31/enabled = true
bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998) bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998)
bones/31/rotation = Quaternion(0.54971313, -0.47258875, -0.47741523, -0.4965382) bones/31/rotation = Quaternion(0.5522747, -0.47179142, -0.47765303, -0.49421963)
bones/31/scale = Vector3(1, 1, 1) bones/31/scale = Vector3(1, 1, 1)
bones/32/name = "RightUpperArm" bones/32/name = "RightUpperArm"
bones/32/parent = 31 bones/32/parent = 31
bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007) bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007)
bones/32/enabled = true bones/32/enabled = true
bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007) bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007)
bones/32/rotation = Quaternion(0.070963025, 0.82362676, -0.56250995, -0.013635286) bones/32/rotation = Quaternion(0.05523748, 0.8201528, -0.5693277, -0.012820049)
bones/32/scale = Vector3(1, 1, 1) bones/32/scale = Vector3(1, 1, 1)
bones/33/name = "RightLowerArm" bones/33/name = "RightLowerArm"
bones/33/parent = 32 bones/33/parent = 32
bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07) bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07)
bones/33/enabled = true bones/33/enabled = true
bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07) bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07)
bones/33/rotation = Quaternion(0.29087102, 0.55626345, -0.20558362, 0.7507998) bones/33/rotation = Quaternion(0.287982, 0.5648795, -0.20954835, 0.7443568)
bones/33/scale = Vector3(1, 1, 1) bones/33/scale = Vector3(1, 1, 1)
bones/34/name = "RightHand" bones/34/name = "RightHand"
bones/34/parent = 33 bones/34/parent = 33
bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046) bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046)
bones/34/enabled = true bones/34/enabled = true
bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046) bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046)
bones/34/rotation = Quaternion(0.12028777, -0.6991298, -0.058104146, 0.70240474) bones/34/rotation = Quaternion(0.12122572, -0.6989181, -0.059071515, 0.70237345)
bones/34/scale = Vector3(1, 1, 1) bones/34/scale = Vector3(1, 1, 1)
bones/35/name = "RightIndexProximal" bones/35/name = "RightIndexProximal"
bones/35/parent = 34 bones/35/parent = 34
bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003) bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003)
bones/35/enabled = true bones/35/enabled = true
bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003) bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003)
bones/35/rotation = Quaternion(0.6295971, 2.8769072e-08, 4.1759718e-06, 0.7769218) bones/35/rotation = Quaternion(0.6295971, 2.8769083e-08, 4.1759718e-06, 0.77692175)
bones/35/scale = Vector3(1, 1, 1) bones/35/scale = Vector3(1, 1, 1)
bones/36/name = "RightIndexIntermediate" bones/36/name = "RightIndexIntermediate"
bones/36/parent = 35 bones/36/parent = 35
@@ -19721,14 +19720,14 @@ bones/40/parent = 39
bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08) bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08)
bones/40/enabled = true bones/40/enabled = true
bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08) bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08)
bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.4966587e-06, 0.78194976) bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.496629e-06, 0.78194976)
bones/40/scale = Vector3(1, 1, 1) bones/40/scale = Vector3(1, 1, 1)
bones/41/name = "RightMiddleDistal" bones/41/name = "RightMiddleDistal"
bones/41/parent = 40 bones/41/parent = 40
bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08) bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08)
bones/41/enabled = true bones/41/enabled = true
bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08) bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08)
bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.326954e-06, 0.7819494) bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.3270115e-06, 0.7819494)
bones/41/scale = Vector3(1, 1, 1) bones/41/scale = Vector3(1, 1, 1)
bones/42/name = "middle_04_leaf_r" bones/42/name = "middle_04_leaf_r"
bones/42/parent = 41 bones/42/parent = 41
@@ -19742,7 +19741,7 @@ bones/43/parent = 34
bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475) bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475)
bones/43/enabled = true bones/43/enabled = true
bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475) bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475)
bones/43/rotation = Quaternion(0.6630007, 0.044529956, -0.07369392, 0.74365073) bones/43/rotation = Quaternion(0.6630007, 0.044529952, -0.07369392, 0.74365073)
bones/43/scale = Vector3(1, 1, 1) bones/43/scale = Vector3(1, 1, 1)
bones/44/name = "RightLittleIntermediate" bones/44/name = "RightLittleIntermediate"
bones/44/parent = 43 bones/44/parent = 43
@@ -19826,28 +19825,28 @@ bones/55/parent = 1
bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985) bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985)
bones/55/enabled = true bones/55/enabled = true
bones/55/position = Vector3(0.089, 0.015400031, 0.051499985) bones/55/position = Vector3(0.089, 0.015400031, 0.051499985)
bones/55/rotation = Quaternion(-0.0013758647, 0.14514801, 0.9825068, -0.11666445) bones/55/rotation = Quaternion(-0.0012875049, 0.15872778, 0.98051995, -0.115691364)
bones/55/scale = Vector3(1, 1, 1) bones/55/scale = Vector3(1, 1, 1)
bones/56/name = "LeftLowerLeg" bones/56/name = "LeftLowerLeg"
bones/56/parent = 55 bones/56/parent = 55
bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893) bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893)
bones/56/enabled = true bones/56/enabled = true
bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893) bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893)
bones/56/rotation = Quaternion(0.019550378, 0.9776327, -0.17951924, 0.107819065) bones/56/rotation = Quaternion(0.021205574, 0.9747985, -0.19431588, 0.10751541)
bones/56/scale = Vector3(1, 1, 1) bones/56/scale = Vector3(1, 1, 1)
bones/57/name = "LeftFoot" bones/57/name = "LeftFoot"
bones/57/parent = 56 bones/57/parent = 56
bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886) bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886)
bones/57/enabled = true bones/57/enabled = true
bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886) bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886)
bones/57/rotation = Quaternion(-0.09572972, 0.7170797, -0.6903439, 0.0076039) bones/57/rotation = Quaternion(-0.09338482, 0.7142249, -0.69363207, 0.006069531)
bones/57/scale = Vector3(1, 1, 1) bones/57/scale = Vector3(1, 1, 1)
bones/58/name = "LeftToes" bones/58/name = "LeftToes"
bones/58/parent = 57 bones/58/parent = 57
bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997) bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997)
bones/58/enabled = true bones/58/enabled = true
bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997) bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997)
bones/58/rotation = Quaternion(4.6476497e-08, 1, 5.955227e-08, 2.799873e-08) bones/58/rotation = Quaternion(4.657518e-08, 1, 5.7965877e-08, 2.7641883e-08)
bones/58/scale = Vector3(1, 1, 1) bones/58/scale = Vector3(1, 1, 1)
bones/59/name = "ball_leaf_l" bones/59/name = "ball_leaf_l"
bones/59/parent = 58 bones/59/parent = 58
@@ -19861,28 +19860,28 @@ bones/60/parent = 1
bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985) bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985)
bones/60/enabled = true bones/60/enabled = true
bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985) bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985)
bones/60/rotation = Quaternion(0.00032880568, -0.08772252, 0.98788196, 0.12803897) bones/60/rotation = Quaternion(0.0010378001, -0.070010096, 0.9884011, 0.13476186)
bones/60/scale = Vector3(1, 1, 1) bones/60/scale = Vector3(1, 1, 1)
bones/61/name = "RightLowerLeg" bones/61/name = "RightLowerLeg"
bones/61/parent = 60 bones/61/parent = 60
bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893) bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893)
bones/61/enabled = true bones/61/enabled = true
bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893) bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893)
bones/61/rotation = Quaternion(-0.0474711, 0.9277421, -0.13053513, -0.3464126) bones/61/rotation = Quaternion(-0.05508089, 0.92485654, -0.15087481, -0.3447368)
bones/61/scale = Vector3(1, 1, 1) bones/61/scale = Vector3(1, 1, 1)
bones/62/name = "RightFoot" bones/62/name = "RightFoot"
bones/62/parent = 61 bones/62/parent = 61
bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875) bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875)
bones/62/enabled = true bones/62/enabled = true
bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875) bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875)
bones/62/rotation = Quaternion(0.16675825, 0.6255169, -0.7621795, 0.0016651292) bones/62/rotation = Quaternion(0.16729471, 0.6259585, -0.76169723, 0.0023935277)
bones/62/scale = Vector3(1, 1, 1) bones/62/scale = Vector3(1, 1, 1)
bones/63/name = "RightToes" bones/63/name = "RightToes"
bones/63/parent = 62 bones/63/parent = 62
bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997) bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997)
bones/63/enabled = true bones/63/enabled = true
bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997) bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997)
bones/63/rotation = Quaternion(-8.577401e-05, 0.99999464, 0.0032863708, -1.2409903e-05) bones/63/rotation = Quaternion(-2.7880405e-06, 1, 0.00010817407, -1.9588432e-08)
bones/63/scale = Vector3(1, 1, 1) bones/63/scale = Vector3(1, 1, 1)
bones/64/name = "ball_leaf_r" bones/64/name = "ball_leaf_r"
bones/64/parent = 63 bones/64/parent = 63
@@ -19940,15 +19939,12 @@ parameters/Crouch/blend_position = 0.0
parameters/Motion/blend_position = 0.002057613 parameters/Motion/blend_position = 0.002057613
[node name="MeleeSound" type="AudioStreamPlayer3D" parent="."] [node name="MeleeSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_ghbft") stream = SubResource("AudioStreamRandomizer_ghbft")
[node name="RangedSound" type="AudioStreamPlayer3D" parent="."] [node name="RangedSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_rclin") stream = SubResource("AudioStreamRandomizer_rclin")
[node name="ReloadSound" type="AudioStreamPlayer3D" parent="."] [node name="ReloadSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = ExtResource("11_h04yd") stream = ExtResource("11_h04yd")
[node name="Subviewport" type="SubViewport" parent="."] [node name="Subviewport" type="SubViewport" parent="."]
@@ -19976,13 +19972,11 @@ show_percentage = false
[node name="StruggleUI" type="Sprite3D" parent="."] [node name="StruggleUI" type="Sprite3D" parent="."]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75085443, 0)
visible = false visible = false
billboard = 1 billboard = 1
texture = SubResource("ViewportTexture_yixtd") texture = SubResource("ViewportTexture_yixtd")
[node name="WalkSound" type="AudioStreamPlayer3D" parent="."] [node name="WalkSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.4, 0)
stream = SubResource("AudioStreamRandomizer_8tr25") stream = SubResource("AudioStreamRandomizer_8tr25")
volume_db = 80.0 volume_db = 80.0
unit_size = 23.18 unit_size = 23.18

View File

@@ -19430,7 +19430,6 @@ script = ExtResource("1_6whai")
projectile_template = ExtResource("2_w8pby") projectile_template = ExtResource("2_w8pby")
[node name="Model" type="Node3D" parent="."] [node name="Model" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
[node name="GeneralSkeleton" type="Skeleton3D" parent="Model"] [node name="GeneralSkeleton" type="Skeleton3D" parent="Model"]
unique_name_in_owner = true unique_name_in_owner = true
@@ -19447,8 +19446,8 @@ bones/1/name = "Hips"
bones/1/parent = 0 bones/1/parent = 0
bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003) bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003)
bones/1/enabled = true bones/1/enabled = true
bones/1/position = Vector3(-0.0025638156, 0.8756274, -0.08546088) bones/1/position = Vector3(0.0058907853, 0.87681985, -0.08587572)
bones/1/rotation = Quaternion(-0.045415677, -0.1130729, -0.005606056, 0.9925324) bones/1/rotation = Quaternion(-0.04371296, -0.113571204, -0.004594289, 0.99255717)
bones/1/scale = Vector3(1, 1, 1) bones/1/scale = Vector3(1, 1, 1)
bones/2/name = "Spine" bones/2/name = "Spine"
bones/2/parent = 1 bones/2/parent = 1
@@ -19462,56 +19461,56 @@ bones/3/parent = 2
bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981) bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981)
bones/3/enabled = true bones/3/enabled = true
bones/3/position = Vector3(0, 0.12309997, 0.015199981) bones/3/position = Vector3(0, 0.12309997, 0.015199981)
bones/3/rotation = Quaternion(0.08434574, 9.824781e-05, 0.0004899132, 0.9964364) bones/3/rotation = Quaternion(0.09211567, -6.884248e-05, -3.4262594e-05, 0.9957484)
bones/3/scale = Vector3(1, 1, 1) bones/3/scale = Vector3(1, 1, 1)
bones/4/name = "UpperChest" bones/4/name = "UpperChest"
bones/4/parent = 3 bones/4/parent = 3
bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025) bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025)
bones/4/enabled = true bones/4/enabled = true
bones/4/position = Vector3(0, 0.14120016, -0.004500025) bones/4/position = Vector3(0, 0.14120016, -0.004500025)
bones/4/rotation = Quaternion(0.08434601, 0.00030209115, -6.088444e-05, 0.9964365) bones/4/rotation = Quaternion(0.092143066, -0.00027035174, 0.00086010795, 0.99574536)
bones/4/scale = Vector3(1, 1, 1) bones/4/scale = Vector3(1, 1, 1)
bones/5/name = "Neck" bones/5/name = "Neck"
bones/5/parent = 4 bones/5/parent = 4
bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037) bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037)
bones/5/enabled = true bones/5/enabled = true
bones/5/position = Vector3(0, 0.17280002, -0.005600037) bones/5/position = Vector3(0, 0.17280002, -0.005600037)
bones/5/rotation = Quaternion(-0.084346, -0.00018050426, -8.021084e-05, 0.99643654) bones/5/rotation = Quaternion(-0.092136875, 0.00011046327, -0.00072176685, 0.99574614)
bones/5/scale = Vector3(1, 1, 1) bones/5/scale = Vector3(1, 1, 1)
bones/6/name = "Head" bones/6/name = "Head"
bones/6/parent = 5 bones/6/parent = 5
bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875) bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875)
bones/6/enabled = true bones/6/enabled = true
bones/6/position = Vector3(0, 0.081100024, 0.0155999875) bones/6/position = Vector3(0, 0.081100024, 0.0155999875)
bones/6/rotation = Quaternion(0.066666156, 0.09334051, 0.010397589, 0.99334544) bones/6/rotation = Quaternion(0.07963282, 0.09391119, 0.006821567, 0.9923673)
bones/6/scale = Vector3(1, 1, 1) bones/6/scale = Vector3(1, 1, 1)
bones/7/name = "LeftShoulder" bones/7/name = "LeftShoulder"
bones/7/parent = 4 bones/7/parent = 4
bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998) bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998)
bones/7/enabled = true bones/7/enabled = true
bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998) bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998)
bones/7/rotation = Quaternion(0.49232474, 0.52423346, 0.5267168, -0.45317224) bones/7/rotation = Quaternion(0.48838937, 0.5258198, 0.5259783, -0.45643872)
bones/7/scale = Vector3(1, 1, 1) bones/7/scale = Vector3(1, 1, 1)
bones/8/name = "LeftUpperArm" bones/8/name = "LeftUpperArm"
bones/8/parent = 7 bones/8/parent = 7
bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007) bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007)
bones/8/enabled = true bones/8/enabled = true
bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007) bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007)
bones/8/rotation = Quaternion(-0.04792774, 0.8191922, -0.5714158, 0.0105498275) bones/8/rotation = Quaternion(-0.0550842, 0.8187982, -0.57127297, 0.013505305)
bones/8/scale = Vector3(1, 1, 1) bones/8/scale = Vector3(1, 1, 1)
bones/9/name = "LeftLowerArm" bones/9/name = "LeftLowerArm"
bones/9/parent = 8 bones/9/parent = 8
bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08) bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08)
bones/9/enabled = true bones/9/enabled = true
bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08) bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08)
bones/9/rotation = Quaternion(0.17626457, -0.6631221, 0.17249054, 0.7067156) bones/9/rotation = Quaternion(0.19448301, -0.6548683, 0.18500713, 0.7064674)
bones/9/scale = Vector3(1, 1, 1) bones/9/scale = Vector3(1, 1, 1)
bones/10/name = "LeftHand" bones/10/name = "LeftHand"
bones/10/parent = 9 bones/10/parent = 9
bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036) bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036)
bones/10/enabled = true bones/10/enabled = true
bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036) bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036)
bones/10/rotation = Quaternion(0.10016495, 0.70673794, 0.06444844, 0.6973772) bones/10/rotation = Quaternion(0.09940687, 0.7068844, 0.06368306, 0.6974075)
bones/10/scale = Vector3(1, 1, 1) bones/10/scale = Vector3(1, 1, 1)
bones/11/name = "LeftIndexProximal" bones/11/name = "LeftIndexProximal"
bones/11/parent = 10 bones/11/parent = 10
@@ -19525,7 +19524,7 @@ bones/12/parent = 11
bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/enabled = true bones/12/enabled = true
bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/rotation = Quaternion(0.62334186, 2.0268834e-08, -4.2690954e-06, 0.7819495) bones/12/rotation = Quaternion(0.62334186, 2.0268828e-08, -4.269095e-06, 0.78194946)
bones/12/scale = Vector3(1, 1, 1) bones/12/scale = Vector3(1, 1, 1)
bones/13/name = "LeftIndexDistal" bones/13/name = "LeftIndexDistal"
bones/13/parent = 12 bones/13/parent = 12
@@ -19658,35 +19657,35 @@ bones/31/parent = 4
bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998) bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998)
bones/31/enabled = true bones/31/enabled = true
bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998) bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998)
bones/31/rotation = Quaternion(0.543032, -0.47399366, -0.47592238, -0.5039289) bones/31/rotation = Quaternion(0.54024076, -0.47401735, -0.4745282, -0.50820315)
bones/31/scale = Vector3(1, 1, 1) bones/31/scale = Vector3(1, 1, 1)
bones/32/name = "RightUpperArm" bones/32/name = "RightUpperArm"
bones/32/parent = 31 bones/32/parent = 31
bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007) bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007)
bones/32/enabled = true bones/32/enabled = true
bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007) bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007)
bones/32/rotation = Quaternion(0.08615736, 0.8249933, -0.55839694, -0.012486909) bones/32/rotation = Quaternion(0.0878418, 0.82396096, -0.5596979, -0.010513932)
bones/32/scale = Vector3(1, 1, 1) bones/32/scale = Vector3(1, 1, 1)
bones/33/name = "RightLowerArm" bones/33/name = "RightLowerArm"
bones/33/parent = 32 bones/33/parent = 32
bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07) bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07)
bones/33/enabled = true bones/33/enabled = true
bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07) bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07)
bones/33/rotation = Quaternion(0.29221416, 0.5469413, -0.20242546, 0.7579514) bones/33/rotation = Quaternion(0.29096532, 0.5455984, -0.20283404, 0.7592892)
bones/33/scale = Vector3(1, 1, 1) bones/33/scale = Vector3(1, 1, 1)
bones/34/name = "RightHand" bones/34/name = "RightHand"
bones/34/parent = 33 bones/34/parent = 33
bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046) bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046)
bones/34/enabled = true bones/34/enabled = true
bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046) bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046)
bones/34/rotation = Quaternion(0.11883263, -0.6994573, -0.056624856, 0.7024472) bones/34/rotation = Quaternion(0.11958737, -0.69928753, -0.057388805, 0.7024261)
bones/34/scale = Vector3(1, 1, 1) bones/34/scale = Vector3(1, 1, 1)
bones/35/name = "RightIndexProximal" bones/35/name = "RightIndexProximal"
bones/35/parent = 34 bones/35/parent = 34
bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003) bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003)
bones/35/enabled = true bones/35/enabled = true
bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003) bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003)
bones/35/rotation = Quaternion(0.6295971, 2.8769072e-08, 4.1759718e-06, 0.7769218) bones/35/rotation = Quaternion(0.6295971, 2.8769083e-08, 4.1759718e-06, 0.77692175)
bones/35/scale = Vector3(1, 1, 1) bones/35/scale = Vector3(1, 1, 1)
bones/36/name = "RightIndexIntermediate" bones/36/name = "RightIndexIntermediate"
bones/36/parent = 35 bones/36/parent = 35
@@ -19721,14 +19720,14 @@ bones/40/parent = 39
bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08) bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08)
bones/40/enabled = true bones/40/enabled = true
bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08) bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08)
bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.4966587e-06, 0.78194976) bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.496629e-06, 0.78194976)
bones/40/scale = Vector3(1, 1, 1) bones/40/scale = Vector3(1, 1, 1)
bones/41/name = "RightMiddleDistal" bones/41/name = "RightMiddleDistal"
bones/41/parent = 40 bones/41/parent = 40
bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08) bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08)
bones/41/enabled = true bones/41/enabled = true
bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08) bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08)
bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.326954e-06, 0.7819494) bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.3270115e-06, 0.7819494)
bones/41/scale = Vector3(1, 1, 1) bones/41/scale = Vector3(1, 1, 1)
bones/42/name = "middle_04_leaf_r" bones/42/name = "middle_04_leaf_r"
bones/42/parent = 41 bones/42/parent = 41
@@ -19742,7 +19741,7 @@ bones/43/parent = 34
bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475) bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475)
bones/43/enabled = true bones/43/enabled = true
bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475) bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475)
bones/43/rotation = Quaternion(0.6630007, 0.044529956, -0.07369392, 0.74365073) bones/43/rotation = Quaternion(0.6630007, 0.044529952, -0.07369392, 0.74365073)
bones/43/scale = Vector3(1, 1, 1) bones/43/scale = Vector3(1, 1, 1)
bones/44/name = "RightLittleIntermediate" bones/44/name = "RightLittleIntermediate"
bones/44/parent = 43 bones/44/parent = 43
@@ -19826,28 +19825,28 @@ bones/55/parent = 1
bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985) bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985)
bones/55/enabled = true bones/55/enabled = true
bones/55/position = Vector3(0.089, 0.015400031, 0.051499985) bones/55/position = Vector3(0.089, 0.015400031, 0.051499985)
bones/55/rotation = Quaternion(-0.0018068515, 0.12977028, 0.9849287, -0.114332065) bones/55/rotation = Quaternion(-0.000746168, 0.12113166, 0.9867302, -0.10812065)
bones/55/scale = Vector3(1, 1, 1) bones/55/scale = Vector3(1, 1, 1)
bones/56/name = "LeftLowerLeg" bones/56/name = "LeftLowerLeg"
bones/56/parent = 55 bones/56/parent = 55
bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893) bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893)
bones/56/enabled = true bones/56/enabled = true
bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893) bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893)
bones/56/rotation = Quaternion(0.017952427, 0.9800376, -0.16544186, 0.1087792) bones/56/rotation = Quaternion(0.016855104, 0.9818568, -0.15339416, 0.110197134)
bones/56/scale = Vector3(1, 1, 1) bones/56/scale = Vector3(1, 1, 1)
bones/57/name = "LeftFoot" bones/57/name = "LeftFoot"
bones/57/parent = 56 bones/57/parent = 56
bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886) bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886)
bones/57/enabled = true bones/57/enabled = true
bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886) bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886)
bones/57/rotation = Quaternion(-0.096428044, 0.72722596, -0.67953897, 0.008423382) bones/57/rotation = Quaternion(-0.09245131, 0.7269736, -0.6803805, 0.0066690515)
bones/57/scale = Vector3(1, 1, 1) bones/57/scale = Vector3(1, 1, 1)
bones/58/name = "LeftToes" bones/58/name = "LeftToes"
bones/58/parent = 57 bones/58/parent = 57
bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997) bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997)
bones/58/enabled = true bones/58/enabled = true
bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997) bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997)
bones/58/rotation = Quaternion(4.5906763e-08, 1, 5.9348327e-08, 2.8165825e-08) bones/58/rotation = Quaternion(0.0001911232, 0.9999878, 0.0049433312, 4.2000767e-05)
bones/58/scale = Vector3(1, 1, 1) bones/58/scale = Vector3(1, 1, 1)
bones/59/name = "ball_leaf_l" bones/59/name = "ball_leaf_l"
bones/59/parent = 58 bones/59/parent = 58
@@ -19861,28 +19860,28 @@ bones/60/parent = 1
bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985) bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985)
bones/60/enabled = true bones/60/enabled = true
bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985) bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985)
bones/60/rotation = Quaternion(0.000749186, -0.10171321, 0.9880044, 0.11619519) bones/60/rotation = Quaternion(0.001525715, -0.0988607, 0.98845094, 0.11484319)
bones/60/scale = Vector3(1, 1, 1) bones/60/scale = Vector3(1, 1, 1)
bones/61/name = "RightLowerLeg" bones/61/name = "RightLowerLeg"
bones/61/parent = 60 bones/61/parent = 60
bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893) bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893)
bones/61/enabled = true bones/61/enabled = true
bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893) bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893)
bones/61/rotation = Quaternion(-0.037605032, 0.93026084, -0.10409464, -0.3498072) bones/61/rotation = Quaternion(-0.030458855, 0.9317075, -0.085165486, -0.3517672)
bones/61/scale = Vector3(1, 1, 1) bones/61/scale = Vector3(1, 1, 1)
bones/62/name = "RightFoot" bones/62/name = "RightFoot"
bones/62/parent = 61 bones/62/parent = 61
bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875) bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875)
bones/62/enabled = true bones/62/enabled = true
bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875) bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875)
bones/62/rotation = Quaternion(0.1661122, 0.63684976, -0.7528805, 0.00033434457) bones/62/rotation = Quaternion(0.16811803, 0.6457038, -0.74484575, -0.002813183)
bones/62/scale = Vector3(1, 1, 1) bones/62/scale = Vector3(1, 1, 1)
bones/63/name = "RightToes" bones/63/name = "RightToes"
bones/63/parent = 62 bones/63/parent = 62
bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997) bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997)
bones/63/enabled = true bones/63/enabled = true
bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997) bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997)
bones/63/rotation = Quaternion(-6.9096524e-05, 0.9999964, 0.00267778, -8.130566e-06) bones/63/rotation = Quaternion(-6.46722e-08, 1, 8.867271e-08, 3.034323e-09)
bones/63/scale = Vector3(1, 1, 1) bones/63/scale = Vector3(1, 1, 1)
bones/64/name = "ball_leaf_r" bones/64/name = "ball_leaf_r"
bones/64/parent = 63 bones/64/parent = 63
@@ -19940,15 +19939,12 @@ parameters/Crouch/blend_position = 0.0
parameters/Motion/blend_position = 0.002057613 parameters/Motion/blend_position = 0.002057613
[node name="MeleeSound" type="AudioStreamPlayer3D" parent="."] [node name="MeleeSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_ghbft") stream = SubResource("AudioStreamRandomizer_ghbft")
[node name="RangedSound" type="AudioStreamPlayer3D" parent="."] [node name="RangedSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_rclin") stream = SubResource("AudioStreamRandomizer_rclin")
[node name="ReloadSound" type="AudioStreamPlayer3D" parent="."] [node name="ReloadSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = ExtResource("11_bd00j") stream = ExtResource("11_bd00j")
[node name="Subviewport" type="SubViewport" parent="."] [node name="Subviewport" type="SubViewport" parent="."]
@@ -19976,13 +19972,11 @@ show_percentage = false
[node name="StruggleUI" type="Sprite3D" parent="."] [node name="StruggleUI" type="Sprite3D" parent="."]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75085443, 0)
visible = false visible = false
billboard = 1 billboard = 1
texture = SubResource("ViewportTexture_yixtd") texture = SubResource("ViewportTexture_yixtd")
[node name="WalkSound" type="AudioStreamPlayer3D" parent="."] [node name="WalkSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.4, 0)
stream = SubResource("AudioStreamRandomizer_8tr25") stream = SubResource("AudioStreamRandomizer_8tr25")
volume_db = 80.0 volume_db = 80.0
unit_size = 23.18 unit_size = 23.18

View File

@@ -19430,7 +19430,6 @@ script = ExtResource("1_d2882")
projectile_template = ExtResource("2_qv76n") projectile_template = ExtResource("2_qv76n")
[node name="Model" type="Node3D" parent="."] [node name="Model" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
[node name="GeneralSkeleton" type="Skeleton3D" parent="Model"] [node name="GeneralSkeleton" type="Skeleton3D" parent="Model"]
unique_name_in_owner = true unique_name_in_owner = true
@@ -19447,8 +19446,8 @@ bones/1/name = "Hips"
bones/1/parent = 0 bones/1/parent = 0
bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003) bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003)
bones/1/enabled = true bones/1/enabled = true
bones/1/position = Vector3(0.005574269, 0.8755195, -0.08624316) bones/1/position = Vector3(0.0042645712, 0.8748299, -0.08550102)
bones/1/rotation = Quaternion(-0.04090682, -0.113633506, -0.004265207, 0.99267113) bones/1/rotation = Quaternion(-0.04534594, -0.11352874, -0.0050549675, 0.99248654)
bones/1/scale = Vector3(1, 1, 1) bones/1/scale = Vector3(1, 1, 1)
bones/2/name = "Spine" bones/2/name = "Spine"
bones/2/parent = 1 bones/2/parent = 1
@@ -19462,56 +19461,56 @@ bones/3/parent = 2
bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981) bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981)
bones/3/enabled = true bones/3/enabled = true
bones/3/position = Vector3(0, 0.12309997, 0.015199981) bones/3/position = Vector3(0, 0.12309997, 0.015199981)
bones/3/rotation = Quaternion(0.09631412, -0.000108351356, -2.431958e-05, 0.99535096) bones/3/rotation = Quaternion(0.084504776, -9.890261e-05, 0.0001838734, 0.99642307)
bones/3/scale = Vector3(1, 1, 1) bones/3/scale = Vector3(1, 1, 1)
bones/4/name = "UpperChest" bones/4/name = "UpperChest"
bones/4/parent = 3 bones/4/parent = 3
bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025) bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025)
bones/4/enabled = true bones/4/enabled = true
bones/4/position = Vector3(0, 0.14120016, -0.004500025) bones/4/position = Vector3(0, 0.14120016, -0.004500025)
bones/4/rotation = Quaternion(0.09633294, -0.00039006156, 0.0008636003, 0.9953488) bones/4/rotation = Quaternion(0.08451262, -0.0003157211, 0.00058076094, 0.99642223)
bones/4/scale = Vector3(1, 1, 1) bones/4/scale = Vector3(1, 1, 1)
bones/5/name = "Neck" bones/5/name = "Neck"
bones/5/parent = 4 bones/5/parent = 4
bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037) bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037)
bones/5/enabled = true bones/5/enabled = true
bones/5/position = Vector3(0, 0.17280002, -0.005600037) bones/5/position = Vector3(0, 0.17280002, -0.005600037)
bones/5/rotation = Quaternion(-0.09632571, 0.000184314, -0.00074373465, 0.9953496) bones/5/rotation = Quaternion(-0.08450983, 0.00017172996, -0.0005535491, 0.9964225)
bones/5/scale = Vector3(1, 1, 1) bones/5/scale = Vector3(1, 1, 1)
bones/6/name = "Head" bones/6/name = "Head"
bones/6/parent = 5 bones/6/parent = 5
bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875) bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875)
bones/6/enabled = true bones/6/enabled = true
bones/6/position = Vector3(0, 0.081100024, 0.0155999875) bones/6/position = Vector3(0, 0.081100024, 0.0155999875)
bones/6/rotation = Quaternion(0.07657449, 0.09402677, 0.0063171024, 0.9926004) bones/6/rotation = Quaternion(0.0643297, 0.09366626, 0.010036925, 0.9934725)
bones/6/scale = Vector3(1, 1, 1) bones/6/scale = Vector3(1, 1, 1)
bones/7/name = "LeftShoulder" bones/7/name = "LeftShoulder"
bones/7/parent = 4 bones/7/parent = 4
bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998) bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998)
bones/7/enabled = true bones/7/enabled = true
bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998) bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998)
bones/7/rotation = Quaternion(0.4905012, 0.5251041, 0.52663684, -0.4542333) bones/7/rotation = Quaternion(0.49271595, 0.52426314, 0.5271608, -0.45219538)
bones/7/scale = Vector3(1, 1, 1) bones/7/scale = Vector3(1, 1, 1)
bones/8/name = "LeftUpperArm" bones/8/name = "LeftUpperArm"
bones/8/parent = 7 bones/8/parent = 7
bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007) bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007)
bones/8/enabled = true bones/8/enabled = true
bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007) bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007)
bones/8/rotation = Quaternion(-0.04774507, 0.8200236, -0.57017225, 0.013615374) bones/8/rotation = Quaternion(-0.042781785, 0.8202811, -0.57022136, 0.012503532)
bones/8/scale = Vector3(1, 1, 1) bones/8/scale = Vector3(1, 1, 1)
bones/9/name = "LeftLowerArm" bones/9/name = "LeftLowerArm"
bones/9/parent = 8 bones/9/parent = 8
bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08) bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08)
bones/9/enabled = true bones/9/enabled = true
bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08) bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08)
bones/9/rotation = Quaternion(0.19398732, -0.65948683, 0.18701304, 0.7017637) bones/9/rotation = Quaternion(0.17573594, -0.6667964, 0.17210805, 0.7034759)
bones/9/scale = Vector3(1, 1, 1) bones/9/scale = Vector3(1, 1, 1)
bones/10/name = "LeftHand" bones/10/name = "LeftHand"
bones/10/parent = 9 bones/10/parent = 9
bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036) bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036)
bones/10/enabled = true bones/10/enabled = true
bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036) bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036)
bones/10/rotation = Quaternion(0.09983649, 0.7068015, 0.06411595, 0.6973906) bones/10/rotation = Quaternion(0.100653686, 0.7066435, 0.06494543, 0.6973564)
bones/10/scale = Vector3(1, 1, 1) bones/10/scale = Vector3(1, 1, 1)
bones/11/name = "LeftIndexProximal" bones/11/name = "LeftIndexProximal"
bones/11/parent = 10 bones/11/parent = 10
@@ -19525,7 +19524,7 @@ bones/12/parent = 11
bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/enabled = true bones/12/enabled = true
bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/rotation = Quaternion(0.62334186, 2.0268834e-08, -4.2690954e-06, 0.7819495) bones/12/rotation = Quaternion(0.62334186, 2.0268828e-08, -4.269095e-06, 0.78194946)
bones/12/scale = Vector3(1, 1, 1) bones/12/scale = Vector3(1, 1, 1)
bones/13/name = "LeftIndexDistal" bones/13/name = "LeftIndexDistal"
bones/13/parent = 12 bones/13/parent = 12
@@ -19658,35 +19657,35 @@ bones/31/parent = 4
bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998) bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998)
bones/31/enabled = true bones/31/enabled = true
bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998) bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998)
bones/31/rotation = Quaternion(0.54231256, -0.47354805, -0.47494215, -0.5060428) bones/31/rotation = Quaternion(0.5441236, -0.4733411, -0.47558567, -0.50368243)
bones/31/scale = Vector3(1, 1, 1) bones/31/scale = Vector3(1, 1, 1)
bones/32/name = "RightUpperArm" bones/32/name = "RightUpperArm"
bones/32/parent = 31 bones/32/parent = 31
bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007) bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007)
bones/32/enabled = true bones/32/enabled = true
bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007) bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007)
bones/32/rotation = Quaternion(0.080904864, 0.8227587, -0.5625072, -0.0103966305) bones/32/rotation = Quaternion(0.089283906, 0.8244131, -0.5587953, -0.010921587)
bones/32/scale = Vector3(1, 1, 1) bones/32/scale = Vector3(1, 1, 1)
bones/33/name = "RightLowerArm" bones/33/name = "RightLowerArm"
bones/33/parent = 32 bones/33/parent = 32
bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07) bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07)
bones/33/enabled = true bones/33/enabled = true
bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07) bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07)
bones/33/rotation = Quaternion(0.28962183, 0.54968536, -0.20453429, 0.7563935) bones/33/rotation = Quaternion(0.29129902, 0.5448649, -0.20238465, 0.7598075)
bones/33/scale = Vector3(1, 1, 1) bones/33/scale = Vector3(1, 1, 1)
bones/34/name = "RightHand" bones/34/name = "RightHand"
bones/34/parent = 33 bones/34/parent = 33
bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046) bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046)
bones/34/enabled = true bones/34/enabled = true
bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046) bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046)
bones/34/rotation = Quaternion(0.1191605, -0.6993836, -0.05695583, 0.70243824) bones/34/rotation = Quaternion(0.11834249, -0.69956714, -0.056132432, 0.70246)
bones/34/scale = Vector3(1, 1, 1) bones/34/scale = Vector3(1, 1, 1)
bones/35/name = "RightIndexProximal" bones/35/name = "RightIndexProximal"
bones/35/parent = 34 bones/35/parent = 34
bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003) bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003)
bones/35/enabled = true bones/35/enabled = true
bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003) bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003)
bones/35/rotation = Quaternion(0.6295971, 2.8769072e-08, 4.1759718e-06, 0.7769218) bones/35/rotation = Quaternion(0.6295971, 2.8769083e-08, 4.1759718e-06, 0.77692175)
bones/35/scale = Vector3(1, 1, 1) bones/35/scale = Vector3(1, 1, 1)
bones/36/name = "RightIndexIntermediate" bones/36/name = "RightIndexIntermediate"
bones/36/parent = 35 bones/36/parent = 35
@@ -19721,14 +19720,14 @@ bones/40/parent = 39
bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08) bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08)
bones/40/enabled = true bones/40/enabled = true
bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08) bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08)
bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.4966587e-06, 0.78194976) bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.496629e-06, 0.78194976)
bones/40/scale = Vector3(1, 1, 1) bones/40/scale = Vector3(1, 1, 1)
bones/41/name = "RightMiddleDistal" bones/41/name = "RightMiddleDistal"
bones/41/parent = 40 bones/41/parent = 40
bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08) bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08)
bones/41/enabled = true bones/41/enabled = true
bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08) bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08)
bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.326954e-06, 0.7819494) bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.3270115e-06, 0.7819494)
bones/41/scale = Vector3(1, 1, 1) bones/41/scale = Vector3(1, 1, 1)
bones/42/name = "middle_04_leaf_r" bones/42/name = "middle_04_leaf_r"
bones/42/parent = 41 bones/42/parent = 41
@@ -19742,7 +19741,7 @@ bones/43/parent = 34
bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475) bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475)
bones/43/enabled = true bones/43/enabled = true
bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475) bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475)
bones/43/rotation = Quaternion(0.6630007, 0.044529956, -0.07369392, 0.74365073) bones/43/rotation = Quaternion(0.6630007, 0.044529952, -0.07369392, 0.74365073)
bones/43/scale = Vector3(1, 1, 1) bones/43/scale = Vector3(1, 1, 1)
bones/44/name = "RightLittleIntermediate" bones/44/name = "RightLittleIntermediate"
bones/44/parent = 43 bones/44/parent = 43
@@ -19826,28 +19825,28 @@ bones/55/parent = 1
bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985) bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985)
bones/55/enabled = true bones/55/enabled = true
bones/55/position = Vector3(0.089, 0.015400031, 0.051499985) bones/55/position = Vector3(0.089, 0.015400031, 0.051499985)
bones/55/rotation = Quaternion(-0.0006689172, 0.12762417, 0.9857714, -0.10939051) bones/55/rotation = Quaternion(-0.00095228496, 0.1270012, 0.98568875, -0.110849224)
bones/55/scale = Vector3(1, 1, 1) bones/55/scale = Vector3(1, 1, 1)
bones/56/name = "LeftLowerLeg" bones/56/name = "LeftLowerLeg"
bones/56/parent = 55 bones/56/parent = 55
bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893) bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893)
bones/56/enabled = true bones/56/enabled = true
bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893) bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893)
bones/56/rotation = Quaternion(0.017698636, 0.9806428, -0.16120204, 0.10972883) bones/56/rotation = Quaternion(0.018931953, 0.9787562, -0.17256525, 0.10908367)
bones/56/scale = Vector3(1, 1, 1) bones/56/scale = Vector3(1, 1, 1)
bones/57/name = "LeftFoot" bones/57/name = "LeftFoot"
bones/57/parent = 56 bones/57/parent = 56
bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886) bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886)
bones/57/enabled = true bones/57/enabled = true
bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886) bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886)
bones/57/rotation = Quaternion(-0.0925149, 0.72437215, -0.68314046, 0.00671727) bones/57/rotation = Quaternion(-0.093163215, 0.7262054, -0.68111247, 0.005678429)
bones/57/scale = Vector3(1, 1, 1) bones/57/scale = Vector3(1, 1, 1)
bones/58/name = "LeftToes" bones/58/name = "LeftToes"
bones/58/parent = 57 bones/58/parent = 57
bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997) bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997)
bones/58/enabled = true bones/58/enabled = true
bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997) bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997)
bones/58/rotation = Quaternion(0.00017265085, 0.99998975, 0.0045258277, 3.465564e-05) bones/58/rotation = Quaternion(4.516369e-08, 1, 5.9012102e-08, 2.8369557e-08)
bones/58/scale = Vector3(1, 1, 1) bones/58/scale = Vector3(1, 1, 1)
bones/59/name = "ball_leaf_l" bones/59/name = "ball_leaf_l"
bones/59/parent = 58 bones/59/parent = 58
@@ -19861,28 +19860,28 @@ bones/60/parent = 1
bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985) bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985)
bones/60/enabled = true bones/60/enabled = true
bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985) bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985)
bones/60/rotation = Quaternion(0.0016175861, -0.09062679, 0.9887162, 0.11926638) bones/60/rotation = Quaternion(0.0013847166, -0.09644216, 0.9880318, 0.12037537)
bones/60/scale = Vector3(1, 1, 1) bones/60/scale = Vector3(1, 1, 1)
bones/61/name = "RightLowerLeg" bones/61/name = "RightLowerLeg"
bones/61/parent = 60 bones/61/parent = 60
bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893) bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893)
bones/61/enabled = true bones/61/enabled = true
bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893) bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893)
bones/61/rotation = Quaternion(-0.035620138, 0.93069524, -0.09881665, -0.3503898) bones/61/rotation = Quaternion(-0.038029958, 0.930211, -0.10531431, -0.34952837)
bones/61/scale = Vector3(1, 1, 1) bones/61/scale = Vector3(1, 1, 1)
bones/62/name = "RightFoot" bones/62/name = "RightFoot"
bones/62/parent = 61 bones/62/parent = 61
bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875) bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875)
bones/62/enabled = true bones/62/enabled = true
bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875) bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875)
bones/62/rotation = Quaternion(0.16796975, 0.6402663, -0.74956095, -0.0019032309) bones/62/rotation = Quaternion(0.16806103, 0.6395543, -0.7501501, -0.0009114338)
bones/62/scale = Vector3(1, 1, 1) bones/62/scale = Vector3(1, 1, 1)
bones/63/name = "RightToes" bones/63/name = "RightToes"
bones/63/parent = 62 bones/63/parent = 62
bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997) bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997)
bones/63/enabled = true bones/63/enabled = true
bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997) bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997)
bones/63/rotation = Quaternion(-6.6901464e-07, 1, 2.4017418e-05, 1.5630183e-09) bones/63/rotation = Quaternion(-2.3502384e-05, 0.9999996, 0.00092779385, -9.513219e-07)
bones/63/scale = Vector3(1, 1, 1) bones/63/scale = Vector3(1, 1, 1)
bones/64/name = "ball_leaf_r" bones/64/name = "ball_leaf_r"
bones/64/parent = 63 bones/64/parent = 63
@@ -19940,15 +19939,12 @@ parameters/Crouch/blend_position = 0.0
parameters/Motion/blend_position = 0.002057613 parameters/Motion/blend_position = 0.002057613
[node name="MeleeSound" type="AudioStreamPlayer3D" parent="."] [node name="MeleeSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_ghbft") stream = SubResource("AudioStreamRandomizer_ghbft")
[node name="RangedSound" type="AudioStreamPlayer3D" parent="."] [node name="RangedSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_rclin") stream = SubResource("AudioStreamRandomizer_rclin")
[node name="ReloadSound" type="AudioStreamPlayer3D" parent="."] [node name="ReloadSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = ExtResource("11_31rrw") stream = ExtResource("11_31rrw")
[node name="Subviewport" type="SubViewport" parent="."] [node name="Subviewport" type="SubViewport" parent="."]
@@ -19976,13 +19972,11 @@ show_percentage = false
[node name="StruggleUI" type="Sprite3D" parent="."] [node name="StruggleUI" type="Sprite3D" parent="."]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75085443, 0)
visible = false visible = false
billboard = 1 billboard = 1
texture = SubResource("ViewportTexture_yixtd") texture = SubResource("ViewportTexture_yixtd")
[node name="WalkSound" type="AudioStreamPlayer3D" parent="."] [node name="WalkSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.4, 0)
stream = SubResource("AudioStreamRandomizer_8tr25") stream = SubResource("AudioStreamRandomizer_8tr25")
volume_db = 80.0 volume_db = 80.0
unit_size = 23.18 unit_size = 23.18

View File

@@ -19429,7 +19429,6 @@ script = ExtResource("1_0wnch")
projectile_template = ExtResource("2_0os2k") projectile_template = ExtResource("2_0os2k")
[node name="Model" type="Node3D" parent="."] [node name="Model" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
[node name="GeneralSkeleton" type="Skeleton3D" parent="Model"] [node name="GeneralSkeleton" type="Skeleton3D" parent="Model"]
unique_name_in_owner = true unique_name_in_owner = true
@@ -19446,8 +19445,8 @@ bones/1/name = "Hips"
bones/1/parent = 0 bones/1/parent = 0
bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003) bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003)
bones/1/enabled = true bones/1/enabled = true
bones/1/position = Vector3(-0.0016600662, 0.87612575, -0.085451) bones/1/position = Vector3(0.0044895806, 0.877053, -0.08615181)
bones/1/rotation = Quaternion(-0.045864392, -0.11305309, -0.005547559, 0.9925144) bones/1/rotation = Quaternion(-0.04155466, -0.11325949, -0.004972296, 0.9926837)
bones/1/scale = Vector3(1, 1, 1) bones/1/scale = Vector3(1, 1, 1)
bones/2/name = "Spine" bones/2/name = "Spine"
bones/2/parent = 1 bones/2/parent = 1
@@ -19461,56 +19460,56 @@ bones/3/parent = 2
bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981) bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981)
bones/3/enabled = true bones/3/enabled = true
bones/3/position = Vector3(0, 0.12309997, 0.015199981) bones/3/position = Vector3(0, 0.12309997, 0.015199981)
bones/3/rotation = Quaternion(0.085763186, 0.00028054538, 0.00035265, 0.9963155) bones/3/rotation = Quaternion(0.09553866, 1.7329065e-05, 0.0003837751, 0.99542564)
bones/3/scale = Vector3(1, 1, 1) bones/3/scale = Vector3(1, 1, 1)
bones/4/name = "UpperChest" bones/4/name = "UpperChest"
bones/4/parent = 3 bones/4/parent = 3
bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025) bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025)
bones/4/enabled = true bones/4/enabled = true
bones/4/position = Vector3(0, 0.14120016, -0.004500025) bones/4/position = Vector3(0, 0.14120016, -0.004500025)
bones/4/rotation = Quaternion(0.08577239, 0.0008301627, 2.7710943e-05, 0.9963144) bones/4/rotation = Quaternion(0.09553722, 5.4219578e-05, 0.00014699828, 0.9954259)
bones/4/scale = Vector3(1, 1, 1) bones/4/scale = Vector3(1, 1, 1)
bones/5/name = "Neck" bones/5/name = "Neck"
bones/5/parent = 4 bones/5/parent = 4
bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037) bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037)
bones/5/enabled = true bones/5/enabled = true
bones/5/position = Vector3(0, 0.17280002, -0.005600037) bones/5/position = Vector3(0, 0.17280002, -0.005600037)
bones/5/rotation = Quaternion(-0.08577083, -0.0005333681, -6.7883135e-05, 0.99631476) bones/5/rotation = Quaternion(-0.095537856, -3.5485977e-05, -0.00024328716, 0.99542576)
bones/5/scale = Vector3(1, 1, 1) bones/5/scale = Vector3(1, 1, 1)
bones/6/name = "Head" bones/6/name = "Head"
bones/6/parent = 5 bones/6/parent = 5
bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875) bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875)
bones/6/enabled = true bones/6/enabled = true
bones/6/position = Vector3(0, 0.081100024, 0.0155999875) bones/6/position = Vector3(0, 0.081100024, 0.0155999875)
bones/6/rotation = Quaternion(0.071368344, 0.09305658, 0.009607097, 0.99305326) bones/6/rotation = Quaternion(0.07830661, 0.09378848, 0.0068963896, 0.99248385)
bones/6/scale = Vector3(1, 1, 1) bones/6/scale = Vector3(1, 1, 1)
bones/7/name = "LeftShoulder" bones/7/name = "LeftShoulder"
bones/7/parent = 4 bones/7/parent = 4
bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998) bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998)
bones/7/enabled = true bones/7/enabled = true
bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998) bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998)
bones/7/rotation = Quaternion(0.49028015, 0.524968, 0.5261498, -0.45519266) bones/7/rotation = Quaternion(0.49015304, 0.5250311, 0.5261494, -0.45525736)
bones/7/scale = Vector3(1, 1, 1) bones/7/scale = Vector3(1, 1, 1)
bones/8/name = "LeftUpperArm" bones/8/name = "LeftUpperArm"
bones/8/parent = 7 bones/8/parent = 7
bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007) bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007)
bones/8/enabled = true bones/8/enabled = true
bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007) bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007)
bones/8/rotation = Quaternion(-0.053926907, 0.8182545, -0.57221866, 0.010835223) bones/8/rotation = Quaternion(-0.053745493, 0.81830615, -0.57215565, 0.011155514)
bones/8/scale = Vector3(1, 1, 1) bones/8/scale = Vector3(1, 1, 1)
bones/9/name = "LeftLowerArm" bones/9/name = "LeftLowerArm"
bones/9/parent = 8 bones/9/parent = 8
bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08) bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08)
bones/9/enabled = true bones/9/enabled = true
bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08) bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08)
bones/9/rotation = Quaternion(0.18121533, -0.65820575, 0.17555758, 0.7092995) bones/9/rotation = Quaternion(0.19388121, -0.65521055, 0.18622604, 0.7059951)
bones/9/scale = Vector3(1, 1, 1) bones/9/scale = Vector3(1, 1, 1)
bones/10/name = "LeftHand" bones/10/name = "LeftHand"
bones/10/parent = 9 bones/10/parent = 9
bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036) bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036)
bones/10/enabled = true bones/10/enabled = true
bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036) bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036)
bones/10/rotation = Quaternion(0.09770074, 0.7072129, 0.061985604, 0.69746846) bones/10/rotation = Quaternion(0.10053076, 0.70666724, 0.06482015, 0.6973617)
bones/10/scale = Vector3(1, 1, 1) bones/10/scale = Vector3(1, 1, 1)
bones/11/name = "LeftIndexProximal" bones/11/name = "LeftIndexProximal"
bones/11/parent = 10 bones/11/parent = 10
@@ -19524,7 +19523,7 @@ bones/12/parent = 11
bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/enabled = true bones/12/enabled = true
bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/rotation = Quaternion(0.62334186, 2.0268834e-08, -4.2690954e-06, 0.7819495) bones/12/rotation = Quaternion(0.62334186, 2.0268828e-08, -4.269095e-06, 0.78194946)
bones/12/scale = Vector3(1, 1, 1) bones/12/scale = Vector3(1, 1, 1)
bones/13/name = "LeftIndexDistal" bones/13/name = "LeftIndexDistal"
bones/13/parent = 12 bones/13/parent = 12
@@ -19657,35 +19656,35 @@ bones/31/parent = 4
bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998) bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998)
bones/31/enabled = true bones/31/enabled = true
bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998) bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998)
bones/31/rotation = Quaternion(0.54117733, -0.47432834, -0.47543794, -0.50606173) bones/31/rotation = Quaternion(0.5411382, -0.47428846, -0.47536317, -0.5062112)
bones/31/scale = Vector3(1, 1, 1) bones/31/scale = Vector3(1, 1, 1)
bones/32/name = "RightUpperArm" bones/32/name = "RightUpperArm"
bones/32/parent = 31 bones/32/parent = 31
bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007) bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007)
bones/32/enabled = true bones/32/enabled = true
bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007) bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007)
bones/32/rotation = Quaternion(0.087934904, 0.8254735, -0.5574047, -0.0126849115) bones/32/rotation = Quaternion(0.08061493, 0.8235483, -0.5613639, -0.011832971)
bones/32/scale = Vector3(1, 1, 1) bones/32/scale = Vector3(1, 1, 1)
bones/33/name = "RightLowerArm" bones/33/name = "RightLowerArm"
bones/33/parent = 32 bones/33/parent = 32
bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07) bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07)
bones/33/enabled = true bones/33/enabled = true
bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07) bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07)
bones/33/rotation = Quaternion(0.293253, 0.546503, -0.20216428, 0.7579358) bones/33/rotation = Quaternion(0.29066324, 0.5500736, -0.2040325, 0.75584704)
bones/33/scale = Vector3(1, 1, 1) bones/33/scale = Vector3(1, 1, 1)
bones/34/name = "RightHand" bones/34/name = "RightHand"
bones/34/parent = 33 bones/34/parent = 33
bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046) bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046)
bones/34/enabled = true bones/34/enabled = true
bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046) bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046)
bones/34/rotation = Quaternion(0.12126146, -0.69891006, -0.059108604, 0.7023721) bones/34/rotation = Quaternion(0.118466064, -0.6995395, -0.05625629, 0.70245683)
bones/34/scale = Vector3(1, 1, 1) bones/34/scale = Vector3(1, 1, 1)
bones/35/name = "RightIndexProximal" bones/35/name = "RightIndexProximal"
bones/35/parent = 34 bones/35/parent = 34
bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003) bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003)
bones/35/enabled = true bones/35/enabled = true
bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003) bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003)
bones/35/rotation = Quaternion(0.6295971, 2.8769072e-08, 4.1759718e-06, 0.7769218) bones/35/rotation = Quaternion(0.6295971, 2.8769083e-08, 4.1759718e-06, 0.77692175)
bones/35/scale = Vector3(1, 1, 1) bones/35/scale = Vector3(1, 1, 1)
bones/36/name = "RightIndexIntermediate" bones/36/name = "RightIndexIntermediate"
bones/36/parent = 35 bones/36/parent = 35
@@ -19720,14 +19719,14 @@ bones/40/parent = 39
bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08) bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08)
bones/40/enabled = true bones/40/enabled = true
bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08) bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08)
bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.4966587e-06, 0.78194976) bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.496629e-06, 0.78194976)
bones/40/scale = Vector3(1, 1, 1) bones/40/scale = Vector3(1, 1, 1)
bones/41/name = "RightMiddleDistal" bones/41/name = "RightMiddleDistal"
bones/41/parent = 40 bones/41/parent = 40
bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08) bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08)
bones/41/enabled = true bones/41/enabled = true
bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08) bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08)
bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.326954e-06, 0.7819494) bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.3270115e-06, 0.7819494)
bones/41/scale = Vector3(1, 1, 1) bones/41/scale = Vector3(1, 1, 1)
bones/42/name = "middle_04_leaf_r" bones/42/name = "middle_04_leaf_r"
bones/42/parent = 41 bones/42/parent = 41
@@ -19741,7 +19740,7 @@ bones/43/parent = 34
bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475) bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475)
bones/43/enabled = true bones/43/enabled = true
bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475) bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475)
bones/43/rotation = Quaternion(0.6630007, 0.044529956, -0.07369392, 0.74365073) bones/43/rotation = Quaternion(0.6630007, 0.044529952, -0.07369392, 0.74365073)
bones/43/scale = Vector3(1, 1, 1) bones/43/scale = Vector3(1, 1, 1)
bones/44/name = "RightLittleIntermediate" bones/44/name = "RightLittleIntermediate"
bones/44/parent = 43 bones/44/parent = 43
@@ -19825,28 +19824,28 @@ bones/55/parent = 1
bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985) bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985)
bones/55/enabled = true bones/55/enabled = true
bones/55/position = Vector3(0.089, 0.015400031, 0.051499985) bones/55/position = Vector3(0.089, 0.015400031, 0.051499985)
bones/55/rotation = Quaternion(-0.0011777148, 0.119648084, 0.9863776, -0.11288149) bones/55/rotation = Quaternion(-0.00163945, 0.13579133, 0.98457384, -0.110328786)
bones/55/scale = Vector3(1, 1, 1) bones/55/scale = Vector3(1, 1, 1)
bones/56/name = "LeftLowerLeg" bones/56/name = "LeftLowerLeg"
bones/56/parent = 55 bones/56/parent = 55
bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893) bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893)
bones/56/enabled = true bones/56/enabled = true
bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893) bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893)
bones/56/rotation = Quaternion(0.016378824, 0.9824544, -0.1499833, 0.10963587) bones/56/rotation = Quaternion(0.018505456, 0.97922075, -0.16983092, 0.10927858)
bones/56/scale = Vector3(1, 1, 1) bones/56/scale = Vector3(1, 1, 1)
bones/57/name = "LeftFoot" bones/57/name = "LeftFoot"
bones/57/parent = 56 bones/57/parent = 56
bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886) bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886)
bones/57/enabled = true bones/57/enabled = true
bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886) bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886)
bones/57/rotation = Quaternion(-0.09584612, 0.7275553, -0.6792646, 0.00874709) bones/57/rotation = Quaternion(-0.09292828, 0.7304874, -0.6765518, 0.0054874304)
bones/57/scale = Vector3(1, 1, 1) bones/57/scale = Vector3(1, 1, 1)
bones/58/name = "LeftToes" bones/58/name = "LeftToes"
bones/58/parent = 57 bones/58/parent = 57
bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997) bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997)
bones/58/enabled = true bones/58/enabled = true
bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997) bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997)
bones/58/rotation = Quaternion(4.659032e-08, 1, 5.7722527e-08, 2.7587145e-08) bones/58/rotation = Quaternion(4.5643787e-08, 1, 5.9229336e-08, 2.8237926e-08)
bones/58/scale = Vector3(1, 1, 1) bones/58/scale = Vector3(1, 1, 1)
bones/59/name = "ball_leaf_l" bones/59/name = "ball_leaf_l"
bones/59/parent = 58 bones/59/parent = 58
@@ -19860,28 +19859,28 @@ bones/60/parent = 1
bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985) bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985)
bones/60/enabled = true bones/60/enabled = true
bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985) bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985)
bones/60/rotation = Quaternion(0.0010388761, -0.103355095, 0.98814464, 0.11352068) bones/60/rotation = Quaternion(0.0009245566, -0.09752154, 0.9883424, 0.11691002)
bones/60/scale = Vector3(1, 1, 1) bones/60/scale = Vector3(1, 1, 1)
bones/61/name = "RightLowerLeg" bones/61/name = "RightLowerLeg"
bones/61/parent = 60 bones/61/parent = 60
bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893) bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893)
bones/61/enabled = true bones/61/enabled = true
bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893) bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893)
bones/61/rotation = Quaternion(-0.03771726, 0.9299992, -0.104437694, -0.3503882) bones/61/rotation = Quaternion(-0.034305982, 0.930912, -0.09530545, -0.350917)
bones/61/scale = Vector3(1, 1, 1) bones/61/scale = Vector3(1, 1, 1)
bones/62/name = "RightFoot" bones/62/name = "RightFoot"
bones/62/parent = 61 bones/62/parent = 61
bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875) bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875)
bones/62/enabled = true bones/62/enabled = true
bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875) bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875)
bones/62/rotation = Quaternion(0.16620031, 0.6437181, -0.74699664, 0.0007381945) bones/62/rotation = Quaternion(0.1675761, 0.6431822, -0.7471485, -0.0020216284)
bones/62/scale = Vector3(1, 1, 1) bones/62/scale = Vector3(1, 1, 1)
bones/63/name = "RightToes" bones/63/name = "RightToes"
bones/63/parent = 62 bones/63/parent = 62
bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997) bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997)
bones/63/enabled = true bones/63/enabled = true
bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997) bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997)
bones/63/rotation = Quaternion(-6.5746896e-08, 1, 8.806346e-08, 3.4598688e-09) bones/63/rotation = Quaternion(-5.3498534e-05, 0.99999785, 0.0020912706, -4.911824e-06)
bones/63/scale = Vector3(1, 1, 1) bones/63/scale = Vector3(1, 1, 1)
bones/64/name = "ball_leaf_r" bones/64/name = "ball_leaf_r"
bones/64/parent = 63 bones/64/parent = 63
@@ -19939,15 +19938,12 @@ parameters/Crouch/blend_position = 0.0
parameters/Motion/blend_position = 0.002057613 parameters/Motion/blend_position = 0.002057613
[node name="MeleeSound" type="AudioStreamPlayer3D" parent="."] [node name="MeleeSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_ghbft") stream = SubResource("AudioStreamRandomizer_ghbft")
[node name="RangedSound" type="AudioStreamPlayer3D" parent="."] [node name="RangedSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_rclin") stream = SubResource("AudioStreamRandomizer_rclin")
[node name="ReloadSound" type="AudioStreamPlayer3D" parent="."] [node name="ReloadSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = ExtResource("11_fcyur") stream = ExtResource("11_fcyur")
[node name="Subviewport" type="SubViewport" parent="."] [node name="Subviewport" type="SubViewport" parent="."]
@@ -19975,13 +19971,11 @@ show_percentage = false
[node name="StruggleUI" type="Sprite3D" parent="."] [node name="StruggleUI" type="Sprite3D" parent="."]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75085443, 0)
visible = false visible = false
billboard = 1 billboard = 1
texture = SubResource("ViewportTexture_yixtd") texture = SubResource("ViewportTexture_yixtd")
[node name="WalkSound" type="AudioStreamPlayer3D" parent="."] [node name="WalkSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.4, 0)
stream = SubResource("AudioStreamRandomizer_8tr25") stream = SubResource("AudioStreamRandomizer_8tr25")
volume_db = 80.0 volume_db = 80.0
unit_size = 23.18 unit_size = 23.18

View File

@@ -281,6 +281,7 @@ bind/64/bone = -1
bind/64/pose = Transform3D(-1.0000001, -6.9388815e-18, -1.05879106e-22, 4.879777e-15, -1.490116e-07, 0.9999998, -5.8207675e-11, 1.0000001, -3.5527135e-15, -0.08900002, -0.19209997, -0.015200032) bind/64/pose = Transform3D(-1.0000001, -6.9388815e-18, -1.05879106e-22, 4.879777e-15, -1.490116e-07, 0.9999998, -5.8207675e-11, 1.0000001, -3.5527135e-15, -0.08900002, -0.19209997, -0.015200032)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_t5t85"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_t5t85"]
albedo_color = Color(1, 0.8117647, 0, 1)
[sub_resource type="BoxShape3D" id="BoxShape3D_j3lta"] [sub_resource type="BoxShape3D" id="BoxShape3D_j3lta"]
size = Vector3(0.25, 0.25, 0.6) size = Vector3(0.25, 0.25, 0.6)
@@ -19429,7 +19430,6 @@ script = ExtResource("1_t5t85")
projectile_template = ExtResource("2_p65xv") projectile_template = ExtResource("2_p65xv")
[node name="Model" type="Node3D" parent="."] [node name="Model" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
[node name="GeneralSkeleton" type="Skeleton3D" parent="Model"] [node name="GeneralSkeleton" type="Skeleton3D" parent="Model"]
unique_name_in_owner = true unique_name_in_owner = true
@@ -19446,8 +19446,8 @@ bones/1/name = "Hips"
bones/1/parent = 0 bones/1/parent = 0
bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003) bones/1/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.9167, -0.05010003)
bones/1/enabled = true bones/1/enabled = true
bones/1/position = Vector3(-0.002219703, 0.8751915, -0.086504385) bones/1/position = Vector3(0.0034290752, 0.8734538, -0.08587178)
bones/1/rotation = Quaternion(-0.038857117, -0.11301225, -0.004933522, 0.9928213) bones/1/rotation = Quaternion(-0.04391324, -0.11337096, -0.0051048403, 0.99256873)
bones/1/scale = Vector3(1, 1, 1) bones/1/scale = Vector3(1, 1, 1)
bones/2/name = "Spine" bones/2/name = "Spine"
bones/2/parent = 1 bones/2/parent = 1
@@ -19461,56 +19461,56 @@ bones/3/parent = 2
bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981) bones/3/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12309997, 0.015199981)
bones/3/enabled = true bones/3/enabled = true
bones/3/position = Vector3(0, 0.12309997, 0.015199981) bones/3/position = Vector3(0, 0.12309997, 0.015199981)
bones/3/rotation = Quaternion(0.09885698, 0.00015590974, 0.00053247047, 0.9951015) bones/3/rotation = Quaternion(0.0851174, -3.5074405e-05, 0.00031055597, 0.996371)
bones/3/scale = Vector3(1, 1, 1) bones/3/scale = Vector3(1, 1, 1)
bones/4/name = "UpperChest" bones/4/name = "UpperChest"
bones/4/parent = 3 bones/4/parent = 3
bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025) bones/4/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.14120016, -0.004500025)
bones/4/enabled = true bones/4/enabled = true
bones/4/position = Vector3(0, 0.14120016, -0.004500025) bones/4/position = Vector3(0, 0.14120016, -0.004500025)
bones/4/rotation = Quaternion(0.098860845, 0.00050146726, -0.00017967504, 0.99510115) bones/4/rotation = Quaternion(0.08511802, -0.000115100265, 0.00032540943, 0.9963708)
bones/4/scale = Vector3(1, 1, 1) bones/4/scale = Vector3(1, 1, 1)
bones/5/name = "Neck" bones/5/name = "Neck"
bones/5/parent = 4 bones/5/parent = 4
bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037) bones/5/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17280002, -0.005600037)
bones/5/enabled = true bones/5/enabled = true
bones/5/position = Vector3(0, 0.17280002, -0.005600037) bones/5/position = Vector3(0, 0.17280002, -0.005600037)
bones/5/rotation = Quaternion(-0.09885946, -0.0002937633, 1.8720975e-05, 0.99510133) bones/5/rotation = Quaternion(-0.08511795, 6.079086e-05, -0.00037093184, 0.9963708)
bones/5/scale = Vector3(1, 1, 1) bones/5/scale = Vector3(1, 1, 1)
bones/6/name = "Head" bones/6/name = "Head"
bones/6/parent = 5 bones/6/parent = 5
bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875) bones/6/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.081100024, 0.0155999875)
bones/6/enabled = true bones/6/enabled = true
bones/6/position = Vector3(0, 0.081100024, 0.0155999875) bones/6/position = Vector3(0, 0.081100024, 0.0155999875)
bones/6/rotation = Quaternion(0.07143778, 0.093532264, 0.007065458, 0.99302495) bones/6/rotation = Quaternion(0.05681539, 0.09345796, 0.01103773, 0.9939396)
bones/6/scale = Vector3(1, 1, 1) bones/6/scale = Vector3(1, 1, 1)
bones/7/name = "LeftShoulder" bones/7/name = "LeftShoulder"
bones/7/parent = 4 bones/7/parent = 4
bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998) bones/7/rest = Transform3D(0, 1, 0, 0, 0, 1, 1, 0, 0, 0.0188, 0.14310004, 0.07629998)
bones/7/enabled = true bones/7/enabled = true
bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998) bones/7/position = Vector3(0.0188, 0.14310004, 0.07629998)
bones/7/rotation = Quaternion(0.49305636, 0.5239528, 0.5268875, -0.45250252) bones/7/rotation = Quaternion(0.49635032, 0.52293545, 0.52815086, -0.44858864)
bones/7/scale = Vector3(1, 1, 1) bones/7/scale = Vector3(1, 1, 1)
bones/8/name = "LeftUpperArm" bones/8/name = "LeftUpperArm"
bones/8/parent = 7 bones/8/parent = 7
bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007) bones/8/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -0.13680005, 0.17309996, -0.01710007)
bones/8/enabled = true bones/8/enabled = true
bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007) bones/8/position = Vector3(-0.13680005, 0.17309996, -0.01710007)
bones/8/rotation = Quaternion(-0.04608989, 0.81948596, -0.57115024, 0.010298576) bones/8/rotation = Quaternion(-0.033191722, 0.8215709, -0.5690271, 0.01130531)
bones/8/scale = Vector3(1, 1, 1) bones/8/scale = Vector3(1, 1, 1)
bones/9/name = "LeftLowerArm" bones/9/name = "LeftLowerArm"
bones/9/parent = 8 bones/9/parent = 8
bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08) bones/9/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, 0.004699965, 0.27440003, 3.769936e-08)
bones/9/enabled = true bones/9/enabled = true
bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08) bones/9/position = Vector3(0.004699965, 0.27440003, 3.769936e-08)
bones/9/rotation = Quaternion(0.18968888, -0.6607, 0.18610394, 0.70203924) bones/9/rotation = Quaternion(0.1677185, -0.67427033, 0.1682622, 0.6992266)
bones/9/scale = Vector3(1, 1, 1) bones/9/scale = Vector3(1, 1, 1)
bones/10/name = "LeftHand" bones/10/name = "LeftHand"
bones/10/parent = 9 bones/10/parent = 9
bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036) bones/10/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, 2.0133815e-08, 0.27260005, 0.004700036)
bones/10/enabled = true bones/10/enabled = true
bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036) bones/10/position = Vector3(2.0133815e-08, 0.27260005, 0.004700036)
bones/10/rotation = Quaternion(0.099780746, 0.70681214, 0.064059675, 0.6973928) bones/10/rotation = Quaternion(0.100645244, 0.70664513, 0.06493682, 0.69735676)
bones/10/scale = Vector3(1, 1, 1) bones/10/scale = Vector3(1, 1, 1)
bones/11/name = "LeftIndexProximal" bones/11/name = "LeftIndexProximal"
bones/11/parent = 10 bones/11/parent = 10
@@ -19524,7 +19524,7 @@ bones/12/parent = 11
bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/enabled = true bones/12/enabled = true
bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08) bones/12/position = Vector3(-4.097772e-09, 0.040700007, 1.25191555e-08)
bones/12/rotation = Quaternion(0.62334186, 2.0268834e-08, -4.2690954e-06, 0.7819495) bones/12/rotation = Quaternion(0.62334186, 2.0268828e-08, -4.269095e-06, 0.78194946)
bones/12/scale = Vector3(1, 1, 1) bones/12/scale = Vector3(1, 1, 1)
bones/13/name = "LeftIndexDistal" bones/13/name = "LeftIndexDistal"
bones/13/parent = 12 bones/13/parent = 12
@@ -19657,35 +19657,35 @@ bones/31/parent = 4
bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998) bones/31/rest = Transform3D(0, -1, 0, 0, 0, 1, -1, 0, 0, -0.0188, 0.14310004, 0.07629998)
bones/31/enabled = true bones/31/enabled = true
bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998) bones/31/position = Vector3(-0.0188, 0.14310004, 0.07629998)
bones/31/rotation = Quaternion(0.5436264, -0.47392794, -0.47613505, -0.5031481) bones/31/rotation = Quaternion(0.54740435, -0.47274178, -0.4764465, -0.49986243)
bones/31/scale = Vector3(1, 1, 1) bones/31/scale = Vector3(1, 1, 1)
bones/32/name = "RightUpperArm" bones/32/name = "RightUpperArm"
bones/32/parent = 31 bones/32/parent = 31
bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007) bones/32/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0.13680005, 0.17309996, -0.01710007)
bones/32/enabled = true bones/32/enabled = true
bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007) bones/32/position = Vector3(0.13680005, 0.17309996, -0.01710007)
bones/32/rotation = Quaternion(0.0688658, 0.82236403, -0.56463414, -0.012776165) bones/32/rotation = Quaternion(0.08300525, 0.8236736, -0.56083983, -0.011431293)
bones/32/scale = Vector3(1, 1, 1) bones/32/scale = Vector3(1, 1, 1)
bones/33/name = "RightLowerArm" bones/33/name = "RightLowerArm"
bones/33/parent = 32 bones/33/parent = 32
bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07) bones/33/rest = Transform3D(0, 0, 1, 0, 1, 0, -1, 0, 0, -0.004699971, 0.2744, 1.6425727e-07)
bones/33/enabled = true bones/33/enabled = true
bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07) bones/33/position = Vector3(-0.004699971, 0.2744, 1.6425727e-07)
bones/33/rotation = Quaternion(0.28960642, 0.55713725, -0.20638974, 0.7504197) bones/33/rotation = Quaternion(0.29069784, 0.54860634, -0.20364544, 0.75700366)
bones/33/scale = Vector3(1, 1, 1) bones/33/scale = Vector3(1, 1, 1)
bones/34/name = "RightHand" bones/34/name = "RightHand"
bones/34/parent = 33 bones/34/parent = 33
bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046) bones/34/rest = Transform3D(0, 0, -1, 0, 1, 0, 1, 0, 0, -2.829891e-08, 0.27259997, 0.004700046)
bones/34/enabled = true bones/34/enabled = true
bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046) bones/34/position = Vector3(-2.829891e-08, 0.27259997, 0.004700046)
bones/34/rotation = Quaternion(0.11921599, -0.69937116, -0.057012, 0.7024366) bones/34/rotation = Quaternion(0.118351, -0.69956523, -0.05614095, 0.7024598)
bones/34/scale = Vector3(1, 1, 1) bones/34/scale = Vector3(1, 1, 1)
bones/35/name = "RightIndexProximal" bones/35/name = "RightIndexProximal"
bones/35/parent = 34 bones/35/parent = 34
bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003) bones/35/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.030900035, 0.11989994, 0.0019998003)
bones/35/enabled = true bones/35/enabled = true
bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003) bones/35/position = Vector3(0.030900035, 0.11989994, 0.0019998003)
bones/35/rotation = Quaternion(0.6295971, 2.8769072e-08, 4.1759718e-06, 0.7769218) bones/35/rotation = Quaternion(0.6295971, 2.8769083e-08, 4.1759718e-06, 0.77692175)
bones/35/scale = Vector3(1, 1, 1) bones/35/scale = Vector3(1, 1, 1)
bones/36/name = "RightIndexIntermediate" bones/36/name = "RightIndexIntermediate"
bones/36/parent = 35 bones/36/parent = 35
@@ -19720,14 +19720,14 @@ bones/40/parent = 39
bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08) bones/40/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0019999943, 0.04230002, -9.594936e-08)
bones/40/enabled = true bones/40/enabled = true
bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08) bones/40/position = Vector3(-0.0019999943, 0.04230002, -9.594936e-08)
bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.4966587e-06, 0.78194976) bones/40/rotation = Quaternion(0.6227322, 0.02755449, 4.496629e-06, 0.78194976)
bones/40/scale = Vector3(1, 1, 1) bones/40/scale = Vector3(1, 1, 1)
bones/41/name = "RightMiddleDistal" bones/41/name = "RightMiddleDistal"
bones/41/parent = 40 bones/41/parent = 40
bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08) bones/41/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0014999958, 0.033900008, 4.301159e-08)
bones/41/enabled = true bones/41/enabled = true
bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08) bones/41/position = Vector3(-0.0014999958, 0.033900008, 4.301159e-08)
bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.326954e-06, 0.7819494) bones/41/rotation = Quaternion(0.62266874, 0.02896139, 4.3270115e-06, 0.7819494)
bones/41/scale = Vector3(1, 1, 1) bones/41/scale = Vector3(1, 1, 1)
bones/42/name = "middle_04_leaf_r" bones/42/name = "middle_04_leaf_r"
bones/42/parent = 41 bones/42/parent = 41
@@ -19741,7 +19741,7 @@ bones/43/parent = 34
bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475) bones/43/rest = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.040799975, 0.107699946, 0.0015997475)
bones/43/enabled = true bones/43/enabled = true
bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475) bones/43/position = Vector3(-0.040799975, 0.107699946, 0.0015997475)
bones/43/rotation = Quaternion(0.6630007, 0.044529956, -0.07369392, 0.74365073) bones/43/rotation = Quaternion(0.6630007, 0.044529952, -0.07369392, 0.74365073)
bones/43/scale = Vector3(1, 1, 1) bones/43/scale = Vector3(1, 1, 1)
bones/44/name = "RightLittleIntermediate" bones/44/name = "RightLittleIntermediate"
bones/44/parent = 43 bones/44/parent = 43
@@ -19825,28 +19825,28 @@ bones/55/parent = 1
bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985) bones/55/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, 0.089, 0.015400031, 0.051499985)
bones/55/enabled = true bones/55/enabled = true
bones/55/position = Vector3(0.089, 0.015400031, 0.051499985) bones/55/position = Vector3(0.089, 0.015400031, 0.051499985)
bones/55/rotation = Quaternion(-0.0017174614, 0.14006186, 0.98344296, -0.11497729) bones/55/rotation = Quaternion(-0.0014386552, 0.14018583, 0.9836426, -0.1131067)
bones/55/scale = Vector3(1, 1, 1) bones/55/scale = Vector3(1, 1, 1)
bones/56/name = "LeftLowerLeg" bones/56/name = "LeftLowerLeg"
bones/56/parent = 55 bones/56/parent = 55
bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893) bones/56/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -7.450581e-09, 0.40029997, -0.0027998893)
bones/56/enabled = true bones/56/enabled = true
bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893) bones/56/position = Vector3(-7.450581e-09, 0.40029997, -0.0027998893)
bones/56/rotation = Quaternion(0.01825388, 0.97968286, -0.16751526, 0.108751714) bones/56/rotation = Quaternion(0.020425119, 0.97608227, -0.18751183, 0.10810039)
bones/56/scale = Vector3(1, 1, 1) bones/56/scale = Vector3(1, 1, 1)
bones/57/name = "LeftFoot" bones/57/name = "LeftFoot"
bones/57/parent = 56 bones/57/parent = 56
bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886) bones/57/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, -7.218184e-09, 0.42809996, 0.034399886)
bones/57/enabled = true bones/57/enabled = true
bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886) bones/57/position = Vector3(-7.218184e-09, 0.42809996, 0.034399886)
bones/57/rotation = Quaternion(-0.09591657, 0.7239311, -0.68311256, 0.009009208) bones/57/rotation = Quaternion(-0.093771756, 0.7247995, -0.6825288, 0.005193214)
bones/57/scale = Vector3(1, 1, 1) bones/57/scale = Vector3(1, 1, 1)
bones/58/name = "LeftToes" bones/58/name = "LeftToes"
bones/58/parent = 57 bones/58/parent = 57
bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997) bones/58/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, -3.933849e-09, 0.14900002, -0.08849997)
bones/58/enabled = true bones/58/enabled = true
bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997) bones/58/position = Vector3(-3.933849e-09, 0.14900002, -0.08849997)
bones/58/rotation = Quaternion(4.6074632e-08, 1, 5.9424284e-08, 2.81198e-08) bones/58/rotation = Quaternion(4.5456044e-08, 1, 5.9144387e-08, 2.8289401e-08)
bones/58/scale = Vector3(1, 1, 1) bones/58/scale = Vector3(1, 1, 1)
bones/59/name = "ball_leaf_l" bones/59/name = "ball_leaf_l"
bones/59/parent = 58 bones/59/parent = 58
@@ -19860,28 +19860,28 @@ bones/60/parent = 1
bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985) bones/60/rest = Transform3D(-1, 0, 0, 0, -1, 0, 0, 0, 1, -0.089, 0.015400031, 0.051499985)
bones/60/enabled = true bones/60/enabled = true
bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985) bones/60/position = Vector3(-0.089, 0.015400031, 0.051499985)
bones/60/rotation = Quaternion(0.00068275526, -0.09077584, 0.9887022, 0.11927835) bones/60/rotation = Quaternion(0.0011705678, -0.08936617, 0.9880272, 0.12575582)
bones/60/scale = Vector3(1, 1, 1) bones/60/scale = Vector3(1, 1, 1)
bones/61/name = "RightLowerLeg" bones/61/name = "RightLowerLeg"
bones/61/parent = 60 bones/61/parent = 60
bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893) bones/61/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 7.450581e-09, 0.40029997, -0.0027998893)
bones/61/enabled = true bones/61/enabled = true
bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893) bones/61/position = Vector3(7.450581e-09, 0.40029997, -0.0027998893)
bones/61/rotation = Quaternion(-0.04082445, 0.9293716, -0.112541944, -0.34919363) bones/61/rotation = Quaternion(-0.043489594, 0.9288716, -0.119884506, -0.3477559)
bones/61/scale = Vector3(1, 1, 1) bones/61/scale = Vector3(1, 1, 1)
bones/62/name = "RightFoot" bones/62/name = "RightFoot"
bones/62/parent = 61 bones/62/parent = 61
bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875) bones/62/rest = Transform3D(-1, 0, 0, 0, 0, -1, 0, -1, 0, 7.683263e-09, 0.4280999, 0.034399875)
bones/62/enabled = true bones/62/enabled = true
bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875) bones/62/position = Vector3(7.683263e-09, 0.4280999, 0.034399875)
bones/62/rotation = Quaternion(0.16571537, 0.6334806, -0.7558044, 0.0006096732) bones/62/rotation = Quaternion(0.16783756, 0.633235, -0.7555422, 0.00020735944)
bones/62/scale = Vector3(1, 1, 1) bones/62/scale = Vector3(1, 1, 1)
bones/63/name = "RightToes" bones/63/name = "RightToes"
bones/63/parent = 62 bones/63/parent = 62
bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997) bones/63/rest = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 3.5171341e-09, 0.14900002, -0.08849997)
bones/63/enabled = true bones/63/enabled = true
bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997) bones/63/position = Vector3(3.5171341e-09, 0.14900002, -0.08849997)
bones/63/rotation = Quaternion(-7.738583e-05, 0.99999565, 0.0029830416, -1.0143903e-05) bones/63/rotation = Quaternion(-4.15132e-05, 0.99999875, 0.0016303275, -3.0271615e-06)
bones/63/scale = Vector3(1, 1, 1) bones/63/scale = Vector3(1, 1, 1)
bones/64/name = "ball_leaf_r" bones/64/name = "ball_leaf_r"
bones/64/parent = 63 bones/64/parent = 63
@@ -19939,15 +19939,12 @@ parameters/Crouch/blend_position = 0.0
parameters/Motion/blend_position = 0.002057613 parameters/Motion/blend_position = 0.002057613
[node name="MeleeSound" type="AudioStreamPlayer3D" parent="."] [node name="MeleeSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_ghbft") stream = SubResource("AudioStreamRandomizer_ghbft")
[node name="RangedSound" type="AudioStreamPlayer3D" parent="."] [node name="RangedSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = SubResource("AudioStreamRandomizer_rclin") stream = SubResource("AudioStreamRandomizer_rclin")
[node name="ReloadSound" type="AudioStreamPlayer3D" parent="."] [node name="ReloadSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.425, 0)
stream = ExtResource("11_mw5y3") stream = ExtResource("11_mw5y3")
[node name="Subviewport" type="SubViewport" parent="."] [node name="Subviewport" type="SubViewport" parent="."]
@@ -19975,13 +19972,11 @@ show_percentage = false
[node name="StruggleUI" type="Sprite3D" parent="."] [node name="StruggleUI" type="Sprite3D" parent="."]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75085443, 0)
visible = false visible = false
billboard = 1 billboard = 1
texture = SubResource("ViewportTexture_yixtd") texture = SubResource("ViewportTexture_yixtd")
[node name="WalkSound" type="AudioStreamPlayer3D" parent="."] [node name="WalkSound" type="AudioStreamPlayer3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.4, 0)
stream = SubResource("AudioStreamRandomizer_8tr25") stream = SubResource("AudioStreamRandomizer_8tr25")
volume_db = 80.0 volume_db = 80.0
unit_size = 23.18 unit_size = 23.18

View File

@@ -6,6 +6,12 @@
resource_name = "texture_0" resource_name = "texture_0"
transparency = 4 transparency = 4
cull_mode = 2 cull_mode = 2
shading_mode = 0
diffuse_mode = 1
specular_mode = 2
disable_ambient_light = true
disable_fog = true
disable_specular_occlusion = true
albedo_texture = ExtResource("1_mttbj") albedo_texture = ExtResource("1_mttbj")
texture_filter = 0 texture_filter = 0
texture_repeat = false texture_repeat = false