[gd_scene load_steps=14 format=3 uid="uid://cxjumgf8bhr3l"]

[ext_resource type="Texture2D" uid="uid://cyq6f1n0nrgrs" path="res://Sprites/Elevator.png" id="1_0xq5m"]
[ext_resource type="Script" uid="uid://bd0m1l6pqjwf7" path="res://Scripts/Components/FSM/Elevator/ElevatorProxyProxy.cs" id="1_flxos"]
[ext_resource type="Script" uid="uid://b6jp6fhmwmobv" path="res://Scripts/Components/FSM/Elevator/ElevatorProxy.cs" id="1_xv5vg"]
[ext_resource type="Script" uid="uid://bpey64n21hyhu" path="res://Scripts/Activables/Elevator.cs" id="2_dmimb"]
[ext_resource type="Script" uid="uid://cuxk8rrhvpe2c" path="res://Scripts/Components/FSM/Elevator/Init.cs" id="3_xv5vg"]
[ext_resource type="Script" uid="uid://ju87yydywmxi" path="res://Scripts/Components/FSM/Elevator/Bottom.cs" id="5_57077"]
[ext_resource type="Script" uid="uid://cxxu5ed50wiev" path="res://Scripts/Components/FSM/Elevator/Top.cs" id="6_rd3yl"]
[ext_resource type="Script" uid="uid://bgmehqn7g7fvj" path="res://Scripts/Components/FSM/Elevator/Ascending.cs" id="7_r4wj7"]
[ext_resource type="Script" uid="uid://72sfdklqrc6d" path="res://Scripts/Components/FSM/Elevator/Descending.cs" id="8_flmvm"]
[ext_resource type="AudioStream" uid="uid://b0b3rcpdvfwsk" path="res://SFX/elevator.ogg" id="9_flmvm"]

[sub_resource type="Curve2D" id="Curve2D_flxos"]
_data = {
"points": PackedVector2Array(0, 0, 0, 0, 0, -31, 0, 0, 0, 0, 0, 0)
}
point_count = 2

[sub_resource type="RectangleShape2D" id="RectangleShape2D_flxos"]
size = Vector2(32, 32)

[sub_resource type="RectangleShape2D" id="RectangleShape2D_3lpp4"]
size = Vector2(20, 19)

[node name="Elevator" type="Path2D"]
curve = SubResource("Curve2D_flxos")
script = ExtResource("1_flxos")

[node name="StaticBody2D" type="StaticBody2D" parent="."]
collision_mask = 0

[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"]
shape = SubResource("RectangleShape2D_flxos")

[node name="Elevator" type="Area2D" parent="." node_paths=PackedStringArray("ElevatorPath", "TopBody")]
collision_layer = 0
collision_mask = 2
script = ExtResource("1_xv5vg")
ElevatorPath = NodePath("..")
TopBody = NodePath("../StaticBody2D/CollisionShape2D")

[node name="Sprite2D" type="Sprite2D" parent="Elevator"]
texture = ExtResource("1_0xq5m")

[node name="CollisionShape2D" type="CollisionShape2D" parent="Elevator"]
position = Vector2(0, -0.5)
shape = SubResource("RectangleShape2D_3lpp4")

[node name="StateMachine" type="Node2D" parent="Elevator"]
script = ExtResource("2_dmimb")

[node name="Init" type="Node2D" parent="Elevator/StateMachine"]
script = ExtResource("3_xv5vg")

[node name="Bottom" type="Node2D" parent="Elevator/StateMachine"]
script = ExtResource("5_57077")

[node name="Top" type="Node2D" parent="Elevator/StateMachine"]
script = ExtResource("6_rd3yl")

[node name="Ascending" type="Node2D" parent="Elevator/StateMachine" node_paths=PackedStringArray("Sound")]
script = ExtResource("7_r4wj7")
Sound = NodePath("../../AudioStreamPlayer2D")

[node name="Descending" type="Node2D" parent="Elevator/StateMachine" node_paths=PackedStringArray("Sound")]
script = ExtResource("8_flmvm")
Sound = NodePath("../../AudioStreamPlayer2D")

[node name="Disabled" type="Node2D" parent="Elevator/StateMachine"]

[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="Elevator"]
stream = ExtResource("9_flmvm")

[connection signal="area_entered" from="Elevator" to="Elevator" method="_on_area_entered"]
[connection signal="area_exited" from="Elevator" to="Elevator" method="_on_area_exited"]
