cirnogodot/Scenes/Actors/IsoPlayer_FSM.tscn
2025-08-13 16:51:56 +02:00

460 lines
20 KiB
Text

[gd_scene load_steps=70 format=3 uid="uid://rimplblbptcd"]
[ext_resource type="Script" uid="uid://88smibkin17p" path="res://Scripts/Components/FSM/3DPlayer/IsoPlayerFSMProxy.cs" id="1_cc7e7"]
[ext_resource type="Texture2D" uid="uid://ddwhrlrgj6i00" path="res://Sprites/Actors/Cirno.png" id="1_vex34"]
[ext_resource type="Script" uid="uid://cn3o414nvdd58" path="res://Scripts/Components/FSM/3DPlayer/IsoPlayerStateMachine.cs" id="1_vsywg"]
[ext_resource type="Script" uid="uid://y35vqx1ifo52" path="res://Scripts/Components/FSM/3DPlayer/Init.cs" id="2_3oyrx"]
[ext_resource type="Script" uid="uid://d3ydlcdm8m3tg" path="res://Scripts/Components/FSM/3DPlayer/Active.cs" id="3_cc7e7"]
[ext_resource type="Script" uid="uid://c5brx3ail1tlh" path="res://Scripts/Components/FSM/3DPlayer/IsoMovementModule.cs" id="5_fg04g"]
[ext_resource type="Script" uid="uid://cmafvigtkg2qo" path="res://Scripts/Components/FSM/3DPlayer/Dead.cs" id="5_ok250"]
[ext_resource type="Script" uid="uid://ci87ilsfrj1xh" path="res://Scripts/Components/FSM/3DPlayer/Cutscene.cs" id="6_chmen"]
[ext_resource type="Script" uid="uid://eop2ue3otxcs" path="res://Scripts/Components/FSM/3DPlayer/IsoPlayerStorageModule.cs" id="6_habpy"]
[ext_resource type="Script" uid="uid://bwdmhpotan5ai" path="res://Scripts/Components/FSM/3DPlayer/Drowning.cs" id="6_nk07c"]
[ext_resource type="Script" uid="uid://cq1joxgoj3jdp" path="res://Scripts/Components/Actors/3D/PlayerAnimationProvider3D.cs" id="6_onfm2"]
[ext_resource type="SpriteFrames" uid="uid://c6exoa8pxbc6w" path="res://Resources/Sprites/player_float.tres" id="6_yq7h2"]
[ext_resource type="Script" uid="uid://dq338w2lw5phl" path="res://Scripts/Components/Actors/KeyboardInputProvider.cs" id="7_4cdxq"]
[ext_resource type="SpriteFrames" uid="uid://byb4cbb23cawf" path="res://Resources/Sprites/player_float_legs.tres" id="7_l4f8l"]
[ext_resource type="Script" uid="uid://dls68t7f8eoqb" path="res://Scripts/Components/FSM/3DPlayer/Teleporting.cs" id="7_nwocn"]
[ext_resource type="Material" uid="uid://dsrsfpcpwmaql" path="res://Resources/Materials/Player_Blink_Teleport_Material_3D.tres" id="7_yarib"]
[ext_resource type="Script" uid="uid://bayjsi428yx83" path="res://Scripts/Components/FSM/3DPlayer/UnTeleporting.cs" id="8_nk07c"]
[ext_resource type="Script" uid="uid://1fryvj4omkin" path="res://Scripts/Components/Actors/MouseAimProvider3D.cs" id="9_2ffwi"]
[ext_resource type="Script" uid="uid://c8ar11sg0su2h" path="res://Scripts/Components/FSM/3DPlayer/ShadowModule.cs" id="9_fg04g"]
[ext_resource type="Script" uid="uid://ceiworv2pgl1r" path="res://Scripts/Components/Actors/3D/AnimatedShaderSprite3D.cs" id="9_yarib"]
[ext_resource type="Script" uid="uid://dvln1783wvvuw" path="res://Scripts/Components/Actors/ShadowProvider.cs" id="10_2kukh"]
[ext_resource type="Script" uid="uid://bm73kgly8gv2i" path="res://Scripts/Components/FSM/3DPlayer/IsoInteractionController.cs" id="10_habpy"]
[ext_resource type="Script" uid="uid://d1ixvdcii6uy7" path="res://Scripts/Components/FSM/3DPlayer/SelectorController.cs" id="11_4cdxq"]
[ext_resource type="Script" uid="uid://vne180ohyucn" path="res://Scripts/Components/FSM/3DPlayer/IsoActivationProvider.cs" id="11_4exx2"]
[ext_resource type="AudioStream" uid="uid://myr6n2c1u503" path="res://SFX/581602__samsterbirdies__beep-error.mp3" id="13_2ffwi"]
[ext_resource type="Script" uid="uid://d2psafx4f3f58" path="res://Scripts/Components/FSM/3DPlayer/PlayerWeaponModule3D.cs" id="15_el8as"]
[ext_resource type="Script" uid="uid://by0x0qmbmkoak" path="res://Scripts/Components/FSM/3DPlayer/PlayerWeaponProvider3D.cs" id="16_olwak"]
[ext_resource type="PackedScene" uid="uid://cfgc6ik8vb08c" path="res://Scenes/Weapons/BaseWeapon_3D.tscn" id="17_olwak"]
[ext_resource type="Script" uid="uid://cqyr8mko8oo5" path="res://Scripts/Components/FSM/3DPlayer/PlayerAcidDeathModule.cs" id="19_7selo"]
[ext_resource type="PackedScene" uid="uid://cwnyegefc8o6q" path="res://Scenes/HUD/WorldSelector3D.tscn" id="24_j6bpw"]
[ext_resource type="Script" uid="uid://hdw15b6fi7de" path="res://Scripts/Components/Actors/3D/PlayerDamageReceiver3D.cs" id="26_ok6gd"]
[ext_resource type="Script" uid="uid://ddsqqfx1usc3j" path="res://Scripts/Resources/DamageResistance.cs" id="27_5v3dv"]
[ext_resource type="Script" uid="uid://cqwvssstkrdmw" path="res://Scripts/Components/Actors/ActorResourceProvider.cs" id="28_b3jpo"]
[ext_resource type="Script" uid="uid://b2cqsoywem26t" path="res://Scripts/Components/Actors/3D/PlayerHitboxSpriteProvider3D.cs" id="29_tmq7e"]
[ext_resource type="Texture2D" uid="uid://bwjrdlnysft15" path="res://Sprites/Actors/Focus_Circle.png" id="30_rikg1"]
[ext_resource type="Texture2D" uid="uid://bc4tp44e00g0d" path="res://Sprites/Actors/Focus_Square.png" id="31_iw7um"]
[ext_resource type="Texture2D" uid="uid://bf37ce6jskdel" path="res://Sprites/SmallHitbox.png" id="32_chmen"]
[ext_resource type="Script" uid="uid://byiv30s1ahdyh" path="res://Scripts/Components/Actors/3D/PlayerCrosshairModule3D.cs" id="33_iw7um"]
[ext_resource type="Texture2D" uid="uid://cf2855sd3hqty" path="res://Sprites/Actors/Aiming_Reticule_Small.png" id="34_chmen"]
[ext_resource type="Script" uid="uid://pqsd8h60urrc" path="res://Scripts/Components/FSM/3DPlayer/PlayerGrazingModule3D.cs" id="39_gndug"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_fg04g"]
radius = 0.342937
height = 0.685874
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_2kukh"]
transparency = 1
depth_draw_mode = 2
shading_mode = 0
albedo_color = Color(0, 0, 0, 0.235294)
[sub_resource type="QuadMesh" id="QuadMesh_fg04g"]
material = SubResource("StandardMaterial3D_2kukh")
[sub_resource type="CylinderShape3D" id="CylinderShape3D_habpy"]
height = 0.679688
[sub_resource type="CylinderShape3D" id="CylinderShape3D_6d8x8"]
height = 1.18042
radius = 1.20117
[sub_resource type="SphereShape3D" id="SphereShape3D_ok250"]
[sub_resource type="Resource" id="Resource_c4ide"]
script = ExtResource("27_5v3dv")
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_fjg1v"]
script = ExtResource("27_5v3dv")
DamageType = 1
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_hed00"]
script = ExtResource("27_5v3dv")
DamageType = 2
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_q2flx"]
script = ExtResource("27_5v3dv")
DamageType = 3
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_k7ckg"]
script = ExtResource("27_5v3dv")
DamageType = 4
Attribute = 4
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_qlmfy"]
script = ExtResource("27_5v3dv")
DamageType = 5
Attribute = 4
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_v2m0j"]
script = ExtResource("27_5v3dv")
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_awrib"]
script = ExtResource("27_5v3dv")
DamageType = 1
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_nfrn8"]
script = ExtResource("27_5v3dv")
DamageType = 2
Attribute = 2
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_nfq4p"]
script = ExtResource("27_5v3dv")
DamageType = 3
Attribute = 1
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_m1iep"]
script = ExtResource("27_5v3dv")
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_ckpe7"]
script = ExtResource("27_5v3dv")
DamageType = 4
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="Resource" id="Resource_p5rkw"]
script = ExtResource("27_5v3dv")
DamageType = 5
metadata/_custom_type_script = "uid://ddsqqfx1usc3j"
[sub_resource type="SphereShape3D" id="SphereShape3D_p313o"]
radius = 0.0913725
[sub_resource type="AtlasTexture" id="AtlasTexture_n5ijo"]
atlas = ExtResource("30_rikg1")
region = Rect2(0, 0, 32, 32)
[sub_resource type="SpriteFrames" id="SpriteFrames_h1heu"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_n5ijo")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="AtlasTexture" id="AtlasTexture_vwjki"]
atlas = ExtResource("31_iw7um")
region = Rect2(0, 0, 32, 32)
[sub_resource type="SpriteFrames" id="SpriteFrames_nwocn"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_vwjki")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="AtlasTexture" id="AtlasTexture_igu66"]
atlas = ExtResource("32_chmen")
region = Rect2(0, 0, 4, 4)
[sub_resource type="SpriteFrames" id="SpriteFrames_nk07c"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_igu66")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="AtlasTexture" id="AtlasTexture_12erk"]
atlas = ExtResource("34_chmen")
region = Rect2(0, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_gndug"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_12erk")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_nk07c"]
height = 0.91430664
radius = 0.80566406
[node name="IsoPlayerFsm" type="CharacterBody3D" node_paths=PackedStringArray("PlayerFSM")]
collision_layer = 2
collision_mask = 17
script = ExtResource("1_cc7e7")
PlayerFSM = NodePath("StateMachine")
[node name="StateMachine" type="Node" parent="." node_paths=PackedStringArray("Storage")]
script = ExtResource("1_vsywg")
Storage = NodePath("../Storage")
[node name="Init" type="Node" parent="StateMachine"]
script = ExtResource("2_3oyrx")
[node name="Active" type="Node" parent="StateMachine" node_paths=PackedStringArray("_inputProvider", "AnimationProvider", "Storage", "DamageReceiver", "_moduleNodes")]
script = ExtResource("3_cc7e7")
_inputProvider = NodePath("../../InputProvider")
AnimationProvider = NodePath("../../AnimationProvider")
Storage = NodePath("../../Storage")
DamageReceiver = NodePath("../../DamageReceiver")
_moduleNodes = [NodePath("../../InputProvider"), NodePath("../../MovementModule"), NodePath("../../ShadowModule"), NodePath("../../InteractionController"), NodePath("../../ActivationProvider"), NodePath("../../WeaponModule"), NodePath("../../CrosshairModule"), NodePath("../../GrazingModule")]
[node name="Dead" type="Node" parent="StateMachine" node_paths=PackedStringArray("_motivationProvider", "_inputProvider", "_healthProvider", "_animationProvider")]
script = ExtResource("5_ok250")
_motivationProvider = NodePath("../../DamageReceiver/MotivationProvider")
_inputProvider = NodePath("../../InputProvider")
_healthProvider = NodePath("../../DamageReceiver/HealthProvider")
_animationProvider = NodePath("../../AnimationProvider")
[node name="Drowning" type="Node" parent="StateMachine" node_paths=PackedStringArray("_animationProvider")]
script = ExtResource("6_nk07c")
_animationProvider = NodePath("../../AnimationProvider")
[node name="Cutscene" type="Node" parent="StateMachine" node_paths=PackedStringArray("AnimationProvider", "PlayerStorage")]
script = ExtResource("6_chmen")
AnimationProvider = NodePath("../../AnimationProvider")
PlayerStorage = NodePath("../../Storage")
[node name="Teleporting" type="Node" parent="StateMachine" node_paths=PackedStringArray("AnimationProvider")]
script = ExtResource("7_nwocn")
AnimationProvider = NodePath("../../AnimationProvider")
[node name="UnTeleporting" type="Node" parent="StateMachine" node_paths=PackedStringArray("AnimationProvider")]
script = ExtResource("8_nk07c")
AnimationProvider = NodePath("../../AnimationProvider")
[node name="AnimationProvider" type="Node3D" parent="." node_paths=PackedStringArray("AnimatedSprite")]
script = ExtResource("6_onfm2")
AnimatedSprite = NodePath("AnimatedSprite3D")
BlinkMaterial = ExtResource("7_yarib")
[node name="AnimatedSprite3D" type="AnimatedSprite3D" parent="AnimationProvider"]
transform = Transform3D(0.707107, -0.5, 0.5, 0, 0.707107, 0.707107, -0.707107, -0.5, 0.5, 0, 0, 0)
material_override = ExtResource("7_yarib")
pixel_size = 0.05
texture_filter = 0
sprite_frames = ExtResource("6_yq7h2")
animation = &"walk_down"
frame_progress = 0.402096
script = ExtResource("9_yarib")
[node name="Legs" type="AnimatedSprite3D" parent="AnimationProvider"]
transform = Transform3D(0.707107, -0.5, 0.5, 0, 0.707107, 0.707107, -0.707107, -0.5, 0.5, 0, 0, 0)
pixel_size = 0.05
texture_filter = 0
sprite_frames = ExtResource("7_l4f8l")
animation = &"idle"
[node name="Sprite" type="Sprite3D" parent="AnimationProvider"]
transform = Transform3D(0.707107, -0.5, 0.5, 0, 0.707107, 0.707107, -0.707107, -0.5, 0.5, 0, 0, 0)
visible = false
pixel_size = 0.05
billboard = 1
texture_filter = 0
texture = ExtResource("1_vex34")
hframes = 3
vframes = 4
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.047, 0)
shape = SubResource("CapsuleShape3D_fg04g")
[node name="MovementModule" type="Node" parent="." node_paths=PackedStringArray("PlayerStorage", "_inputProvider", "HitboxSpriteProvider")]
script = ExtResource("5_fg04g")
PlayerStorage = NodePath("../Storage")
_inputProvider = NodePath("../InputProvider")
HitboxSpriteProvider = NodePath("../StrafeSpriteProvider")
Speed = 5
StrafeSpeed = 2
Acceleration = 150.0
Deceleration = 20.0
Gravity = -20.0
FallSpeed = 4.0
[node name="Storage" type="Node" parent="." node_paths=PackedStringArray("Root", "Shield")]
script = ExtResource("6_habpy")
Root = NodePath("..")
Shield = NodePath("../DamageReceiver/ShieldProvider")
[node name="MouseAimProvider" type="Node3D" parent="."]
script = ExtResource("9_2ffwi")
[node name="InputProvider" type="Node" parent="."]
script = ExtResource("7_4cdxq")
[node name="Shadow" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, -0.29, 0)
mesh = SubResource("QuadMesh_fg04g")
script = ExtResource("10_2kukh")
AutoEnable = false
MaxShadowScale = 1.0
CollisionMask = 1
[node name="ShadowModule" type="Node" parent="." node_paths=PackedStringArray("ShadowProvider")]
script = ExtResource("9_fg04g")
ShadowProvider = NodePath("../Shadow")
[node name="InteractionController" type="Area3D" parent="."]
collision_layer = 2
collision_mask = 0
script = ExtResource("10_habpy")
[node name="CollisionShape3D" type="CollisionShape3D" parent="InteractionController"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0410156, 0)
shape = SubResource("CylinderShape3D_habpy")
[node name="ActivationProvider" type="Area3D" parent="." node_paths=PackedStringArray("_inputProvider", "_selectorController", "_errorSound")]
collision_layer = 0
collision_mask = 32
script = ExtResource("11_4exx2")
_inputProvider = NodePath("../InputProvider")
_selectorController = NodePath("SelectorController")
_errorSound = NodePath("AudioStreamPlayer")
SelectorScene = ExtResource("24_j6bpw")
[node name="CollisionShape" type="CollisionShape3D" parent="ActivationProvider"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.294313, 0)
shape = SubResource("CylinderShape3D_6d8x8")
[node name="SelectorController" type="Node" parent="ActivationProvider"]
script = ExtResource("11_4cdxq")
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="ActivationProvider"]
stream = ExtResource("13_2ffwi")
bus = &"Effects"
[node name="AudioListener3D" type="AudioListener3D" parent="."]
current = true
[node name="WeaponOffset" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.267617, 0, -0.24769)
[node name="WeaponModule" type="Node" parent="." node_paths=PackedStringArray("WeaponProvider", "InputProvider", "Storage")]
script = ExtResource("15_el8as")
WeaponProvider = NodePath("WeaponProvider")
InputProvider = NodePath("../InputProvider")
Storage = NodePath("../Storage")
[node name="WeaponProvider" type="Node" parent="WeaponModule" node_paths=PackedStringArray("StorageModule", "WeaponRightOffset", "WeaponLeftOffset")]
script = ExtResource("16_olwak")
StorageModule = NodePath("../../Storage")
WeaponTemplate = ExtResource("17_olwak")
WeaponRightOffset = NodePath("../../WeaponOffset")
WeaponLeftOffset = NodePath("../../WeaponOffset")
[node name="AcidDeathModule" type="Node" parent="."]
script = ExtResource("19_7selo")
[node name="AcidDetector" type="Area3D" parent="."]
visible = false
collision_layer = 2
collision_mask = 256
[node name="CollisionShape3D" type="CollisionShape3D" parent="AcidDetector"]
shape = SubResource("SphereShape3D_ok250")
[node name="DamageReceiver" type="Area3D" parent="." node_paths=PackedStringArray("_healthProvider", "_shieldProvider", "_motivationProvider")]
collision_layer = 2
collision_mask = 384
script = ExtResource("26_ok6gd")
_healthProvider = NodePath("HealthProvider")
_shieldProvider = NodePath("ShieldProvider")
_motivationProvider = NodePath("MotivationProvider")
ShieldDamageResistances = Array[ExtResource("27_5v3dv")]([SubResource("Resource_c4ide"), SubResource("Resource_fjg1v"), SubResource("Resource_hed00"), SubResource("Resource_q2flx"), SubResource("Resource_k7ckg"), SubResource("Resource_qlmfy")])
HealthDamageResistances = Array[ExtResource("27_5v3dv")]([SubResource("Resource_v2m0j"), SubResource("Resource_awrib"), SubResource("Resource_nfrn8"), SubResource("Resource_nfq4p"), SubResource("Resource_m1iep"), SubResource("Resource_ckpe7"), SubResource("Resource_p5rkw")])
[node name="HealthProvider" type="Node" parent="DamageReceiver"]
script = ExtResource("28_b3jpo")
ResourceName = "Health"
_maxResource = 32.0
[node name="MotivationProvider" type="Node" parent="DamageReceiver"]
script = ExtResource("28_b3jpo")
ResourceName = "Motivation"
_maxResource = 400.0
[node name="ShieldProvider" type="Node" parent="DamageReceiver"]
script = ExtResource("28_b3jpo")
ResourceName = "Shield"
_maxResource = 32.0
[node name="CollisionShape2D" type="CollisionShape3D" parent="DamageReceiver"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.00122255, -0.00129807, 0.000553966)
shape = SubResource("SphereShape3D_p313o")
[node name="StrafeSpriteProvider" type="Node3D" parent="." node_paths=PackedStringArray("Hitbox", "Circle", "Square")]
script = ExtResource("29_tmq7e")
Hitbox = NodePath("Hitbox")
Circle = NodePath("MagicCircle")
Square = NodePath("MagicSquare")
RotationSpeed = 1.0
[node name="MagicCircle" type="AnimatedSprite3D" parent="StrafeSpriteProvider"]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, -0.2, 0)
modulate = Color(1, 1, 1, 0.501961)
pixel_size = 0.05
texture_filter = 0
render_priority = -1
sprite_frames = SubResource("SpriteFrames_h1heu")
[node name="MagicSquare" type="AnimatedSprite3D" parent="StrafeSpriteProvider"]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, -0.2, 0)
modulate = Color(1, 1, 1, 0.501961)
pixel_size = 0.05
texture_filter = 0
render_priority = -1
sprite_frames = SubResource("SpriteFrames_nwocn")
[node name="Hitbox" type="AnimatedSprite3D" parent="StrafeSpriteProvider"]
transform = Transform3D(0.707107, -0.5, 0.5, 0, 0.707107, 0.707107, -0.707107, -0.5, 0.5, 0, 0, 0)
pixel_size = 0.05
double_sided = false
no_depth_test = true
texture_filter = 0
render_priority = 1
sprite_frames = SubResource("SpriteFrames_nk07c")
[node name="CrosshairModule" type="Node3D" parent="." node_paths=PackedStringArray("Storage", "AnimatedSprite")]
script = ExtResource("33_iw7um")
Storage = NodePath("../Storage")
AnimatedSprite = NodePath("Crosshair")
CrosshairDistance = 2.0
[node name="Crosshair" type="AnimatedSprite3D" parent="CrosshairModule"]
transform = Transform3D(0.707107, -0.5, 0.5, 0, 0.707107, 0.707107, -0.707107, -0.5, 0.5, 0, 0, 0)
pixel_size = 0.05
no_depth_test = true
texture_filter = 0
render_priority = 1
sprite_frames = SubResource("SpriteFrames_gndug")
[node name="GrazingModule" type="Area3D" parent="." node_paths=PackedStringArray("Shield")]
collision_layer = 0
collision_mask = 128
script = ExtResource("39_gndug")
Shield = NodePath("../DamageReceiver/ShieldProvider")
[node name="CollisionShape3D" type="CollisionShape3D" parent="GrazingModule"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.12463379, 0)
shape = SubResource("CylinderShape3D_nk07c")
[connection signal="area_entered" from="AcidDetector" to="AcidDeathModule" method="OnAcidCollision"]
[connection signal="area_entered" from="DamageReceiver" to="DamageReceiver" method="_on_damage_hitbox_area_entered"]