[gd_scene load_steps=26 format=3 uid="uid://bghghp5ep4w2j"]

[ext_resource type="Script" uid="uid://dqw1gfr3n6rl3" path="res://Scripts/PlayerMovement.cs" id="1_m27vu"]
[ext_resource type="Texture2D" uid="uid://la06powu57hu" path="res://Sprites/Cirno_Big.png" id="2_bwf6x"]
[ext_resource type="PackedScene" uid="uid://b1qnfiuokpvsr" path="res://Scenes/Weapons/bullet.tscn" id="2_ov36d"]
[ext_resource type="PackedScene" uid="uid://chkpk7erlqajg" path="res://Scenes/Selector.tscn" id="3_8wt6s"]
[ext_resource type="Texture2D" uid="uid://b2v6j7lsyltrc" path="res://Sprites/Actors/CirnoWings.png" id="3_ul15q"]
[ext_resource type="PackedScene" uid="uid://biugfbp0yae2s" path="res://Scenes/Particles/DeathParticles.tscn" id="4_1bl4h"]
[ext_resource type="Script" uid="uid://c1ac1yeu0oevo" path="res://addons/smoothing/smoothing_2d.gd" id="4_j4xhu"]
[ext_resource type="PackedScene" uid="uid://cfb3nsay84xdb" path="res://Scenes/Weapons/crosshair.tscn" id="6_l43rf"]
[ext_resource type="Shader" uid="uid://0ruey5bjl7mh" path="res://Shaders/Blink.gdshader" id="6_xugve"]
[ext_resource type="SpriteFrames" uid="uid://bc7mghjx75qip" path="res://Resources/Sprites/player.tres" id="7_fd4e3"]
[ext_resource type="Material" uid="uid://dnvwgyt2tbqmr" path="res://Resources/Materials/Player_Blink_Teleport_Material.tres" id="7_igrcy"]
[ext_resource type="Texture2D" uid="uid://bf37ce6jskdel" path="res://Sprites/SmallHitbox.png" id="7_msn8i"]
[ext_resource type="Script" uid="uid://cem7a1agaqtrt" path="res://Scenes/InteractionController.cs" id="7_uvgjg"]
[ext_resource type="Texture2D" uid="uid://bwjrdlnysft15" path="res://Sprites/Actors/Focus_Circle.png" id="8_1og8b"]
[ext_resource type="Resource" uid="uid://b8apu0l5fm4k" path="res://Resources/Weapons/IcicleGun.tres" id="9_84o8f"]
[ext_resource type="PackedScene" uid="uid://crry0rgk7a8sm" path="res://Scenes/Weapons/BaseWeapon.tscn" id="9_wblq0"]
[ext_resource type="Script" uid="uid://cqwvssstkrdmw" path="res://Scripts/Components/Actors/ActorResourceProvider.cs" id="14_mfxfv"]
[ext_resource type="Script" uid="uid://b4nixnxhj5qhw" path="res://Scripts/Components/Actors/PlayerWeaponProvider.cs" id="17_qqcod"]

[sub_resource type="RectangleShape2D" id="RectangleShape2D_ai4rh"]
size = Vector2(6, 6)

[sub_resource type="AtlasTexture" id="AtlasTexture_omx2u"]
atlas = ExtResource("2_bwf6x")
region = Rect2(0, 0, 8, 16)

[sub_resource type="AtlasTexture" id="AtlasTexture_lsyrf"]
atlas = ExtResource("8_1og8b")
region = Rect2(0, 0, 32, 32)

[sub_resource type="SpriteFrames" id="SpriteFrames_27k5e"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_lsyrf")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]

[sub_resource type="CircleShape2D" id="CircleShape2D_oevaq"]
radius = 17.2627

[sub_resource type="CircleShape2D" id="CircleShape2D_e6woi"]
radius = 1.0

[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_hmqi5"]
particle_flag_disable_z = true
emission_shape = 2
emission_sphere_radius = 16.0
orbit_velocity_min = -1.0
orbit_velocity_max = 1.098
gravity = Vector3(0, 0, 0)
color = Color(0.0392157, 0.380392, 1, 1)

[node name="Player" type="CharacterBody2D" node_paths=PackedStringArray("Muzzle", "HitboxSprite", "_shieldParticles") groups=["Destroyable", "player"]]
process_mode = 1
y_sort_enabled = true
collision_layer = 2
collision_mask = 99
script = ExtResource("1_m27vu")
Speed = 45
StrafeSpeed = 35
CrosshairDistance = 35.0
SelectorScene = ExtResource("3_8wt6s")
GameOverScene = "res://Scenes/GameOver.tscn"
WingsSprite = ExtResource("3_ul15q")
Muzzle = NodePath("Muzzle")
BlinkShader = ExtResource("6_xugve")
HitboxSprite = NodePath("Smoothing2D/HitboxSprite")
_deathParticles = ExtResource("4_1bl4h")
_shieldParticles = NodePath("ShieldParticles")
metadata/_edit_group_ = true

[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(0, 1)
shape = SubResource("RectangleShape2D_ai4rh")

[node name="Muzzle" type="Marker2D" parent="."]
position = Vector2(-1, 0)

[node name="Node2D" type="Node2D" parent="."]

[node name="Smoothing2D" type="Node2D" parent="."]

[node name="Sprite2D" type="Sprite2D" parent="Smoothing2D"]
visible = false
scale = Vector2(2.5, 1.75)
texture = SubResource("AtlasTexture_omx2u")
hframes = 3
vframes = 4
frame = 1

[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="Smoothing2D" groups=["player_sprite"]]
y_sort_enabled = true
material = ExtResource("7_igrcy")
sprite_frames = ExtResource("7_fd4e3")
animation = &"walk_left"
frame = 1
frame_progress = 0.47396

[node name="Crosshair" parent="Smoothing2D" instance=ExtResource("6_l43rf")]
z_index = 100

[node name="HitboxSprite" type="Sprite2D" parent="Smoothing2D"]
z_index = 2
texture = ExtResource("7_msn8i")

[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="Smoothing2D/HitboxSprite"]
self_modulate = Color(1, 1, 1, 0.423529)
show_behind_parent = true
sprite_frames = SubResource("SpriteFrames_27k5e")

[node name="Smoothing2Dasdf" type="Node2D" parent="."]
script = ExtResource("4_j4xhu")
flags = 38

[node name="InteractionController" type="Area2D" parent="."]
visible = false
collision_layer = 2
collision_mask = 4
script = ExtResource("7_uvgjg")

[node name="CollisionShape2D" type="CollisionShape2D" parent="InteractionController"]
shape = SubResource("CircleShape2D_oevaq")

[node name="ShootTimer" type="Timer" parent="."]
one_shot = true

[node name="DamageHitBox" type="Area2D" parent="."]
collision_layer = 2
collision_mask = 128

[node name="CollisionShape2D" type="CollisionShape2D" parent="DamageHitBox"]
shape = SubResource("CircleShape2D_e6woi")
debug_color = Color(1, 0.00817797, 0.0443347, 0.42)

[node name="Weapon" parent="." node_paths=PackedStringArray("Muzzle") instance=ExtResource("9_wblq0")]
scale = Vector2(1.38995, 1.96064)
WeaponData = ExtResource("9_84o8f")
BulletScene = ExtResource("2_ov36d")
Muzzle = NodePath("../Muzzle")

[node name="HealthProvider" type="Node2D" parent="."]
script = ExtResource("14_mfxfv")
ResourceName = "Health"
MaxResource = 25.0

[node name="ShieldProvider" type="Node2D" parent="."]
script = ExtResource("14_mfxfv")
ResourceName = "Shield"
MaxResource = 25.0

[node name="ShieldParticles" type="GPUParticles2D" parent="."]
emitting = false
amount = 32
lifetime = 0.4
one_shot = true
process_material = SubResource("ParticleProcessMaterial_hmqi5")

[node name="WeaponProvider" type="Node2D" parent="."]
script = ExtResource("17_qqcod")
WeaponTemplate = ExtResource("9_wblq0")

[connection signal="area_entered" from="InteractionController" to="." method="_on_interaction_controller_area_entered"]
[connection signal="area_exited" from="InteractionController" to="." method="_on_interaction_controller_area_exited"]
[connection signal="area_entered" from="DamageHitBox" to="." method="_on_damage_hit_box_area_entered"]
