[gd_scene load_steps=17 format=3 uid="uid://bc1mrna4kybhv"]

[ext_resource type="Script" uid="uid://b5ejlbl0vp1gm" path="res://Scripts/Classes/Blocks/BlockClass.gd" id="1_bxree"]
[ext_resource type="Texture2D" uid="uid://uh7uhdkv3e6s" path="res://Assets/Sprites/Blocks/QuestionBlock.png" id="1_wt4d5"]
[ext_resource type="PackedScene" uid="uid://clxssds8sj8pf" path="res://Scenes/Prefabs/Entities/Items/SpinningCoin.tscn" id="2_ntyfr"]
[ext_resource type="PackedScene" uid="uid://dt58tjrnarms0" path="res://Scenes/Prefabs/Particles/QuestionBlockDestructionParticles.tscn" id="3_mvk7u"]
[ext_resource type="PackedScene" uid="uid://cijkvfkthetn5" path="res://Scenes/Parts/BlockAnimations.tscn" id="3_ntyfr"]
[ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="4_qf42s"]
[ext_resource type="JSON" path="res://Assets/Sprites/Blocks/QuestionBlock.json" id="5_mkj8t"]
[ext_resource type="Script" uid="uid://ctfbuoxtnnl0q" path="res://Scripts/Classes/Components/EditorPropertyExposer.gd" id="7_aekuo"]
[ext_resource type="Script" uid="uid://d4a7yp6e55u8t" path="res://Scripts/Classes/Components/TrackJoint.gd" id="8_ov42f"]
[ext_resource type="Script" uid="uid://maqpreddu5kg" path="res://Scripts/Classes/Components/LevelPersistance.gd" id="9_j1txv"]

[sub_resource type="AtlasTexture" id="AtlasTexture_w6pbl"]
atlas = ExtResource("1_wt4d5")
region = Rect2(0, 0, 16, 16)

[sub_resource type="AtlasTexture" id="AtlasTexture_bxree"]
atlas = ExtResource("1_wt4d5")
region = Rect2(16, 0, 16, 16)

[sub_resource type="AtlasTexture" id="AtlasTexture_ntyfr"]
atlas = ExtResource("1_wt4d5")
region = Rect2(32, 0, 16, 16)

[sub_resource type="AtlasTexture" id="AtlasTexture_aukm0"]
atlas = ExtResource("1_wt4d5")
region = Rect2(48, 0, 16, 16)

[sub_resource type="SpriteFrames" id="SpriteFrames_qf42s"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_w6pbl")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bxree")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ntyfr")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_aukm0")
}],
"loop": true,
"name": &"default",
"speed": 1.0
}]

[sub_resource type="RectangleShape2D" id="RectangleShape2D_mkj8t"]
size = Vector2(16, 16)

[node name="QuestionBlock" type="AnimatableBody2D" node_paths=PackedStringArray("visuals") groups=["Blocks"]]
collision_layer = 6
collision_mask = 0
sync_to_physics = false
script = ExtResource("1_bxree")
visuals = NodePath("Sprite")
item = ExtResource("2_ntyfr")
destruction_particle_scene = ExtResource("3_mvk7u")
combo_meter_amount = 30

[node name="Sprite" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_qf42s")
autoplay = "default"
frame_progress = 0.2849915

[node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect")]
script = ExtResource("4_qf42s")
node_to_affect = NodePath("..")
property_name = "sprite_frames"
resource_json = ExtResource("5_mkj8t")
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"

[node name="Collision" type="CollisionShape2D" parent="."]
visible = false
shape = SubResource("RectangleShape2D_mkj8t")

[node name="BlockAnimations" parent="." instance=ExtResource("3_ntyfr")]

[node name="EditorPropertyExposer" type="Node" parent="."]
script = ExtResource("7_aekuo")
properties = Array[String](["item", "item_amount", "mushroom_if_small"])
filters = Dictionary[String, String]({
"item": "can_be_stored"
})

[node name="TrackJoint" type="Node" parent="."]
script = ExtResource("8_ov42f")
offset = Vector2(0, 0)
metadata/_custom_type_script = "uid://d4a7yp6e55u8t"

[node name="LevelPersistance" type="Node" parent="."]
script = ExtResource("9_j1txv")
metadata/_custom_type_script = "uid://maqpreddu5kg"

[connection signal="block_destroyed" from="." to="LevelPersistance" method="set_as_active_2"]
[connection signal="block_emptied" from="." to="LevelPersistance" method="set_as_active"]
[connection signal="player_block_hit" from="." to="." method="player_mushroom_check"]
[connection signal="player_block_hit" from="." to="." method="dispense_item" unbinds=1]
[connection signal="player_block_hit" from="." to="BlockAnimations" method="bounce_block" unbinds=1]
[connection signal="shell_block_hit" from="." to="." method="dispense_item" unbinds=1]
[connection signal="shell_block_hit" from="." to="BlockAnimations" method="bounce_block" unbinds=1]
[connection signal="enabled" from="LevelPersistance" to="." method="spawn_empty_block"]
[connection signal="enabled_2" from="LevelPersistance" to="." method="queue_free"]
