cirnogodot/Scenes/Actors/Generic_Boss_3D.tscn
2025-07-01 13:40:13 +02:00

214 lines
11 KiB
Text

[gd_scene load_steps=35 format=3 uid="uid://cboj3aamnco2r"]
[ext_resource type="Script" uid="uid://dwregubt4iila" path="res://Scripts/Components/FSM/Enemy/3D/EnemyProxy3D.cs" id="1_1rch2"]
[ext_resource type="Resource" uid="uid://bmgnelk21apt6" path="res://Resources/Enemies/Rumia_3D.tres" id="2_nghfy"]
[ext_resource type="Script" uid="uid://c651imhj6rjsh" path="res://Scripts/Components/FSM/Enemy/3D/EnemyStateMachine3D.cs" id="3_nghfy"]
[ext_resource type="Script" uid="uid://cy34e3htvbvnl" path="res://Scripts/Components/FSM/Enemy/3D/Init.cs" id="4_ypm0v"]
[ext_resource type="Script" uid="uid://05agh8h015fy" path="res://Scripts/Components/FSM/Boss/3D/Idle.cs" id="5_1rch2"]
[ext_resource type="Script" uid="uid://dvtdw2hcp4rm2" path="res://Scripts/Components/FSM/Enemy/3D/Alert.cs" id="6_meamr"]
[ext_resource type="Script" uid="uid://d2838a10x33w8" path="res://Scripts/Components/FSM/Boss/3D/Shooting.cs" id="7_ndwwt"]
[ext_resource type="Script" uid="uid://3irm5sccr2fc" path="res://Scripts/Components/FSM/Enemy/3D/Dead.cs" id="8_t5xh8"]
[ext_resource type="Script" uid="uid://mpws3eyrmx0q" path="res://Scripts/Components/FSM/Enemy/3D/Controlled.cs" id="9_yw116"]
[ext_resource type="Script" uid="uid://ts64slgd7twt" path="res://Scripts/Components/FSM/Enemy/3D/EnemyAnimationModule3D.cs" id="10_qde1g"]
[ext_resource type="Script" uid="uid://cq1joxgoj3jdp" path="res://Scripts/Components/Actors/3D/PlayerAnimationProvider3D.cs" id="11_xacal"]
[ext_resource type="Material" uid="uid://dsrsfpcpwmaql" path="res://Resources/Materials/Player_Blink_Teleport_Material_3D.tres" id="12_bpw1r"]
[ext_resource type="Shader" uid="uid://b8up3g1w7uqey" path="res://Shaders/Blink_3D.gdshader" id="13_rvc4r"]
[ext_resource type="Texture2D" uid="uid://xhwfgbv0fjbr" path="res://Sprites/Actors/FairyGuard.png" id="14_t5838"]
[ext_resource type="SpriteFrames" uid="uid://ch2ll1on8im2p" path="res://Resources/Sprites/FairyGuard.tres" id="15_fkdnv"]
[ext_resource type="Script" uid="uid://de31afbiua8xu" path="res://Scripts/Components/FSM/Enemy/3D/EnemyFSMAnimatedSprite3D.cs" id="16_hi83g"]
[ext_resource type="Script" uid="uid://chq5a73kw0c0m" path="res://Scripts/Components/FSM/Enemy/3D/EnemyStorage3D.cs" id="17_v4sds"]
[ext_resource type="Script" uid="uid://extjdng8nk6r" path="res://Scripts/Components/FSM/Enemy/3D/PlayerDetection3D.cs" id="18_spmi6"]
[ext_resource type="Script" uid="uid://k5k8wf821ytg" path="res://Scripts/Components/FSM/Enemy/3D/NavigationProvider3D.cs" id="19_e4lgb"]
[ext_resource type="PackedScene" uid="uid://cfgc6ik8vb08c" path="res://Scenes/Weapons/BaseWeapon_3D.tscn" id="20_lvcyx"]
[ext_resource type="Script" uid="uid://bvcfa6wivpgy1" path="res://Scripts/Components/FSM/Enemy/3D/EnemyDamageModule3D.cs" id="21_eoj2v"]
[ext_resource type="Script" uid="uid://dmawekjfas6k8" path="res://Scripts/Components/Actors/DamageReceiver3D.cs" id="22_85wnj"]
[ext_resource type="Script" uid="uid://cqwvssstkrdmw" path="res://Scripts/Components/Actors/ActorResourceProvider.cs" id="23_dggrs"]
[ext_resource type="Script" uid="uid://dvln1783wvvuw" path="res://Scripts/Components/Actors/ShadowProvider.cs" id="24_nxupd"]
[ext_resource type="Script" uid="uid://qrdor3gk6x37" path="res://Scripts/Components/FSM/Enemy/3D/GravityProvider.cs" id="25_mdc23"]
[ext_resource type="Script" uid="uid://dej2tbl70yiyp" path="res://Scripts/Components/FSM/Boss/3D/BossScriptHostModule3D.cs" id="26_nghfy"]
[ext_resource type="Script" uid="uid://bf5f2phitdqw8" path="res://Scripts/Actors/BulletSpawner3D.cs" id="26_ypm0v"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_jgarc"]
radius = 0.343
height = 0.686
[sub_resource type="AtlasTexture" id="AtlasTexture_ad5n8"]
atlas = ExtResource("14_t5838")
region = Rect2(32, 0, 16, 16)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_d6h7c"]
resource_local_to_scene = true
render_priority = 0
shader = ExtResource("13_rvc4r")
shader_parameter/tex = SubResource("AtlasTexture_ad5n8")
shader_parameter/blink_color = Color(0.954799, 0.00675169, 0, 1)
shader_parameter/blink_intensity = 0.0
shader_parameter/teleport_progress = 0.0
shader_parameter/scanline_density = 0.0
[sub_resource type="CylinderShape3D" id="CylinderShape3D_5j04l"]
height = 1.91858
radius = 3.04834
[sub_resource type="CylinderShape3D" id="CylinderShape3D_uv2lf"]
height = 0.853027
radius = 0.426758
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_cc7e7"]
transparency = 1
depth_draw_mode = 2
shading_mode = 0
albedo_color = Color(0, 0, 0, 0.235294)
[sub_resource type="QuadMesh" id="QuadMesh_05pdu"]
material = SubResource("StandardMaterial3D_cc7e7")
[node name="Boss" type="CharacterBody3D" node_paths=PackedStringArray("EnemyFSM")]
collision_layer = 64
collision_mask = 17
script = ExtResource("1_1rch2")
EnemyFSM = NodePath("StateMachine")
EnemyResource = ExtResource("2_nghfy")
[node name="CollisionShape2D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.047, 0)
shape = SubResource("CapsuleShape3D_jgarc")
[node name="StateMachine" type="Node" parent="."]
script = ExtResource("3_nghfy")
[node name="Init" type="Node" parent="StateMachine" node_paths=PackedStringArray("Storage", "DetectionProvider", "HealthProvider", "_moduleNodes")]
script = ExtResource("4_ypm0v")
Storage = NodePath("../../Storage")
DetectionProvider = NodePath("../../PlayerDetectionProvider")
HealthProvider = NodePath("../../DamageReceiver/HealthProvider")
_moduleNodes = [NodePath("../../AnimationModule")]
[node name="Idle" type="Node" parent="StateMachine" node_paths=PackedStringArray("Storage", "GravityProvider", "_moduleNodes")]
script = ExtResource("5_1rch2")
Storage = NodePath("../../Storage")
GravityProvider = NodePath("../../GravityProvider")
DebugEnabled = true
_moduleNodes = [NodePath("../../AnimationModule")]
[node name="Alert" type="Node" parent="StateMachine" node_paths=PackedStringArray("Storage", "PlayerDetection", "NavigationModule", "GravityProvider", "_moduleNodes")]
script = ExtResource("6_meamr")
Storage = NodePath("../../Storage")
PlayerDetection = NodePath("../../PlayerDetectionProvider")
NavigationModule = NodePath("../../NavigationProvider")
GravityProvider = NodePath("../../GravityProvider")
DebugEnabled = true
_moduleNodes = [NodePath("../../DamageModule"), NodePath("../../AnimationModule")]
[node name="Shooting" type="Node" parent="StateMachine" node_paths=PackedStringArray("Storage", "GravityProvider", "_moduleNodes")]
script = ExtResource("7_ndwwt")
Storage = NodePath("../../Storage")
GravityProvider = NodePath("../../GravityProvider")
_moduleNodes = [NodePath("../../DamageModule"), NodePath("../../AnimationModule"), NodePath("../../BossScriptModule")]
[node name="Dead" type="Node" parent="StateMachine" node_paths=PackedStringArray("Storage")]
script = ExtResource("8_t5xh8")
Storage = NodePath("../../Storage")
[node name="Controlled" type="Node" parent="StateMachine" node_paths=PackedStringArray("Storage", "_moduleNodes")]
script = ExtResource("9_yw116")
Storage = NodePath("../../Storage")
_moduleNodes = [NodePath("../../DamageModule")]
[node name="AnimationModule" type="Node" parent="." node_paths=PackedStringArray("AnimationProvider", "Storage", "HealthProvider")]
script = ExtResource("10_qde1g")
AnimationProvider = NodePath("../AnimationProvider")
Storage = NodePath("../Storage")
HealthProvider = NodePath("../DamageReceiver/HealthProvider")
[node name="AnimationProvider" type="Node3D" parent="." node_paths=PackedStringArray("AnimatedSprite")]
script = ExtResource("11_xacal")
AnimatedSprite = NodePath("../AnimatedSprite3D")
WalkRightAnimationName = &"right"
WalkLeftAnimationName = &"left"
WalkDownAnimationName = &"down"
WalkUpAnimationName = &"up"
BlinkMaterial = ExtResource("12_bpw1r")
[node name="AnimatedSprite3D" type="AnimatedSprite3D" parent="."]
transform = Transform3D(0.707107, -0.5, 0.5, 0, 0.707107, 0.707107, -0.707107, -0.5, 0.5, 0, 0, 0)
material_override = SubResource("ShaderMaterial_d6h7c")
pixel_size = 0.05
billboard = 1
texture_filter = 0
sprite_frames = ExtResource("15_fkdnv")
animation = &"down"
frame = 2
frame_progress = 0.92087
script = ExtResource("16_hi83g")
[node name="Storage" type="Node" parent="." node_paths=PackedStringArray("Root")]
script = ExtResource("17_v4sds")
Root = NodePath("..")
[node name="PlayerDetectionProvider" type="Area3D" parent="."]
collision_layer = 0
collision_mask = 2
script = ExtResource("18_spmi6")
ObstaclesCollisionMask = 17
[node name="CollisionShape3D" type="CollisionShape3D" parent="PlayerDetectionProvider"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.557434, 0)
shape = SubResource("CylinderShape3D_5j04l")
[node name="NavigationProvider" type="Node" parent="." node_paths=PackedStringArray("NavigationAgent", "StorageModule")]
script = ExtResource("19_e4lgb")
NavigationAgent = NodePath("../NavigationAgent3D")
StorageModule = NodePath("../Storage")
[node name="NavigationAgent3D" type="NavigationAgent3D" parent="."]
path_postprocessing = 1
debug_enabled = true
[node name="Weapon" parent="." instance=ExtResource("20_lvcyx")]
[node name="DamageModule" type="Node" parent="." node_paths=PackedStringArray("DamageReceiver", "StorageModule", "AnimationProvider")]
script = ExtResource("21_eoj2v")
DamageReceiver = NodePath("../DamageReceiver")
StorageModule = NodePath("../Storage")
AnimationProvider = NodePath("../AnimationProvider")
[node name="DamageReceiver" type="Area3D" parent="." node_paths=PackedStringArray("HealthProvider")]
collision_layer = 64
collision_mask = 8
script = ExtResource("22_85wnj")
HealthProvider = NodePath("HealthProvider")
BulletGroup = 2
DeleteParentOnDeath = false
[node name="CollisionShape3D" type="CollisionShape3D" parent="DamageReceiver"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.00463867, 0)
shape = SubResource("CylinderShape3D_uv2lf")
[node name="HealthProvider" type="Node" parent="DamageReceiver"]
script = ExtResource("23_dggrs")
ResourceName = "Health"
[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_05pdu")
script = ExtResource("24_nxupd")
CollisionMask = 1
[node name="GravityProvider" type="Node" parent="."]
script = ExtResource("25_mdc23")
Gravity = -20.0
MaxFallSpeed = 50.0
[node name="BossScriptModule" type="Node3D" parent="." node_paths=PackedStringArray("StorageModule", "DamageReceiver")]
script = ExtResource("26_nghfy")
StorageModule = NodePath("../Storage")
DamageReceiver = NodePath("../DamageReceiver")
[node name="BulletSpawner3D" type="Node3D" parent="BossScriptModule"]
script = ExtResource("26_ypm0v")
[connection signal="body_entered" from="PlayerDetectionProvider" to="PlayerDetectionProvider" method="_on_body_entered"]
[connection signal="body_exited" from="PlayerDetectionProvider" to="PlayerDetectionProvider" method="_on_body_exited"]
[connection signal="velocity_computed" from="NavigationAgent3D" to="NavigationProvider" method="_on_navigation_agent_3d_velocity_computed"]
[connection signal="area_entered" from="DamageReceiver" to="DamageReceiver" method="_on_damage_hitbox_area_entered"]