[gd_scene load_steps=8 format=3 uid="uid://djwjl8xll53vn"]

[ext_resource type="Script" uid="uid://e6lqknfl4ngt" path="res://scripts/weapon_system/weapon_substate_machine.gd" id="1_g7s1i"]
[ext_resource type="Script" uid="uid://ofv4e3dsfe8" path="res://scripts/weapon_system/gun/idle_state.gd" id="2_cmn6f"]
[ext_resource type="Script" uid="uid://vj13r83l3xyq" path="res://scripts/weapon_system/gun/semi_auto_shoot_state.gd" id="3_016ti"]
[ext_resource type="Script" uid="uid://hmekwp8444ao" path="res://scripts/weapon_system/gun/reload_state.gd" id="4_hoqxt"]
[ext_resource type="Script" uid="uid://bmj0bwy2tlian" path="res://scripts/weapon_system/gun/intro_state.gd" id="5_ud1dr"]

[sub_resource type="Curve" id="Curve_cmn6f"]
_limits = [0.0, 0.1, 0.0, 20.0]
_data = [Vector2(0, 0.1), 0.0, 0.0, 0, 0, Vector2(20, 0.1), -2.2834061e-05, 0.0, 0, 0]
point_count = 2
metadata/_snap_enabled = true
metadata/_snap_count = 8

[sub_resource type="Curve" id="Curve_016ti"]
_limits = [-0.02, 0.02, 0.0, 20.0]
_data = [Vector2(0, -9.313226e-10), 0.0, 0.0, 0, 0, Vector2(4.959569, 0.0044327714), 0.0, 0.0, 0, 0, Vector2(9.919138, -0.0075840354), 0.0, 0.0, 0, 0, Vector2(15.09434, 0.011533612), 0.0, 0.0, 0, 0, Vector2(20, -0.014684878), 0.0, 0.0, 0, 0]
point_count = 5

[node name="StartingPistol" type="Node" node_paths=PackedStringArray("enter_state")]
script = ExtResource("1_g7s1i")
animation_prefix = &"baked_sp_"
max_ammo = 20
enter_state = NodePath("Intro")
metadata/_custom_type_script = "uid://e6lqknfl4ngt"

[node name="Idle" type="Node" parent="."]
script = ExtResource("2_cmn6f")
emptyable = true

[node name="Shoot" type="Node" parent="." node_paths=PackedStringArray("fire_timer")]
script = ExtResource("3_016ti")
vertical_curve = SubResource("Curve_cmn6f")
horizontal_curve = SubResource("Curve_016ti")
emptyable = true
damage = 22
fire_timer = NodePath("../FireTimer")

[node name="Reload" type="Node" parent="."]
script = ExtResource("4_hoqxt")
emptyable = true

[node name="Intro" type="Node" parent="."]
script = ExtResource("5_ud1dr")
emptyable = true

[node name="FireTimer" type="Timer" parent="."]
wait_time = 0.15
one_shot = true
