[gd_scene load_steps=29 format=3 uid="uid://be0rqt7sk1da0"] [ext_resource type="Texture2D" uid="uid://bicjfwpoa3pma" path="res://test_table.png" id="1_7i8d4"] [ext_resource type="Script" path="res://prototype_dark_cut.gd" id="1_vl0qk"] [ext_resource type="Texture2D" uid="uid://bp10w3bh1gn14" path="res://test_body_1.png" id="2_atjyl"] [ext_resource type="Texture2D" uid="uid://cg3dg7iqif56d" path="res://test_scalpel.png" id="3_a4jra"] [ext_resource type="Script" path="res://bat_dropoff.gd" id="4_2wsdd"] [ext_resource type="Script" path="res://test_scalpel.gd" id="4_5ba3g"] [ext_resource type="Texture2D" uid="uid://ccy71gl4qatjy" path="res://pliers.png" id="4_aj8rk"] [ext_resource type="Texture2D" uid="uid://bkjxp2r3pobmc" path="res://bat_extraction_open_chest.png" id="5_c2dn1"] [ext_resource type="Script" path="res://pliers.gd" id="5_ewpkr"] [ext_resource type="Texture2D" uid="uid://ciy24ri5lusqs" path="res://bat_extraction_bat.png" id="6_yfdwj"] [ext_resource type="Texture2D" uid="uid://dwjmlaw1vxgxo" path="res://bat_extraction_body.png" id="7_7hv63"] [ext_resource type="Script" path="res://operation.gd" id="7_mteqj"] [ext_resource type="PackedScene" uid="uid://c3of67m4ic212" path="res://pickup_area.tscn" id="7_uhavf"] [ext_resource type="Texture2D" uid="uid://n8x3g2swx0x2" path="res://bat_extraction_open_chest_flaps.png" id="8_1vja2"] [ext_resource type="Shape2D" uid="uid://bo77ihhtxfueg" path="res://scalpel_pickup_area_collision_shape.tres" id="8_mvvp0"] [ext_resource type="Script" path="res://feedback_canvas_modulate.gd" id="9_4ghh6"] [ext_resource type="Texture2D" uid="uid://ljl3y4633ted" path="res://bat_extraction_bones.png" id="9_7uu43"] [ext_resource type="Script" path="res://cut_sequence.gd" id="10_gcaa6"] [ext_resource type="PackedScene" uid="uid://x5powiwrfash" path="res://cut_sequence_point.tscn" id="11_hcsao"] [ext_resource type="Script" path="res://bat_extraction_bat.gd" id="13_um5dt"] [ext_resource type="Script" path="res://grab_step.gd" id="18_d00rj"] [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_pgu75"] bg_color = Color(0.417457, 0, 0.105249, 1) [sub_resource type="RectangleShape2D" id="RectangleShape2D_m114t"] size = Vector2(325.047, 551.953) [sub_resource type="CapsuleShape2D" id="CapsuleShape2D_1a0oe"] radius = 7.10071 height = 206.493 [sub_resource type="CapsuleShape2D" id="CapsuleShape2D_f4g1u"] radius = 7.10071 height = 193.839 [sub_resource type="CircleShape2D" id="CircleShape2D_8w656"] radius = 8.24621 [sub_resource type="CircleShape2D" id="CircleShape2D_qmwrh"] radius = 5.65684 [sub_resource type="Curve2D" id="Curve2D_wv8oy"] _data = { "points": PackedVector2Array(0, 0, 0, 0, -44, -62, 0, 0, 0, 0, 19, -64, 0, 0, 0, 0, -46, -35, 0, 0, 0, 0, 29, -24, 0, 0, 0, 0, 28, 6, 0, 0, 0, 0, -52, 12, 0, 0, 0, 0, -66, -50, 0, 0, 0, 0, -44, -62) } point_count = 8 [node name="PrototypeDarkCut" type="Node"] script = ExtResource("1_vl0qk") [node name="UI" type="Control" parent="."] unique_name_in_owner = true layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 offset_top = 1.0 offset_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 mouse_filter = 1 [node name="HBoxContainer" type="HBoxContainer" parent="UI"] layout_mode = 0 offset_left = 15.0 offset_top = 13.0 offset_right = 281.0 offset_bottom = 57.0 theme_override_constants/separation = 10 [node name="Label" type="Label" parent="UI/HBoxContainer"] layout_mode = 2 text = "Patience:" [node name="PatienceBar" type="ProgressBar" parent="UI/HBoxContainer"] unique_name_in_owner = true layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 4 theme_override_styles/fill = SubResource("StyleBoxFlat_pgu75") value = 100.0 [node name="FeedbackCanvasModulate" type="CanvasModulate" parent="."] unique_name_in_owner = true script = ExtResource("9_4ghh6") [node name="UtilsDropoff" type="Sprite2D" parent="."] unique_name_in_owner = true position = Vector2(1020.25, 43) scale = Vector2(0.761429, 0.14494) texture = ExtResource("1_7i8d4") [node name="Area2D" type="Area2D" parent="UtilsDropoff"] collision_layer = 2 collision_mask = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="UtilsDropoff/Area2D"] shape = SubResource("RectangleShape2D_m114t") [node name="BatDropoff" type="Sprite2D" parent="."] unique_name_in_owner = true position = Vector2(895, 222) scale = Vector2(0.317262, -0.14494) texture = ExtResource("1_7i8d4") script = ExtResource("4_2wsdd") [node name="Area2D" type="Area2D" parent="BatDropoff"] collision_layer = 8 collision_mask = 8 [node name="CollisionShape2D" type="CollisionShape2D" parent="BatDropoff/Area2D"] shape = SubResource("RectangleShape2D_m114t") [node name="TestTable" type="Sprite2D" parent="."] position = Vector2(613, 358) texture = ExtResource("1_7i8d4") [node name="Pliers" type="Sprite2D" parent="." groups=["grabber"]] z_index = 10 position = Vector2(1026, 45) scale = Vector2(0.5, 0.5) texture = ExtResource("4_aj8rk") script = ExtResource("5_ewpkr") [node name="PickupArea" parent="Pliers" instance=ExtResource("7_uhavf")] [node name="CollisionShape2D" type="CollisionShape2D" parent="Pliers/PickupArea"] position = Vector2(2, 18) rotation = 1.00484 shape = SubResource("CapsuleShape2D_1a0oe") [node name="CollisionShape2D2" type="CollisionShape2D" parent="Pliers/PickupArea"] position = Vector2(-30, -2) rotation = 0.363771 shape = SubResource("CapsuleShape2D_f4g1u") [node name="GrabArea" type="Area2D" parent="Pliers"] position = Vector2(-74, 78) collision_layer = 8 collision_mask = 8 [node name="CollisionShape2D" type="CollisionShape2D" parent="Pliers/GrabArea"] shape = SubResource("CircleShape2D_8w656") debug_color = Color(0.879882, 0.304191, 0.394852, 0.42) [node name="TestScalpel" type="Sprite2D" parent="." groups=["cutter"]] z_index = 10 position = Vector2(949, 41) rotation = -2.0542 scale = Vector2(0.5, 0.5) texture = ExtResource("3_a4jra") script = ExtResource("4_5ba3g") [node name="PickupArea" parent="TestScalpel" instance=ExtResource("7_uhavf")] [node name="CollisionShape2D2" type="CollisionShape2D" parent="TestScalpel/PickupArea"] shape = ExtResource("8_mvvp0") [node name="CutArea" type="Area2D" parent="TestScalpel"] collision_layer = 5 collision_mask = 5 [node name="CollisionShape2D" type="CollisionShape2D" parent="TestScalpel/CutArea"] position = Vector2(9.33812, -65.1214) shape = SubResource("CircleShape2D_qmwrh") debug_color = Color(0.879882, 0.304191, 0.394852, 0.42) [node name="CutHurtTimer" type="Timer" parent="TestScalpel"] unique_name_in_owner = true [node name="TestBody1" type="Sprite2D" parent="."] unique_name_in_owner = true position = Vector2(620, 399) texture = ExtResource("2_atjyl") [node name="Area2D" type="Area2D" parent="TestBody1"] collision_layer = 4 collision_mask = 4 [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="TestBody1/Area2D"] polygon = PackedVector2Array(0, -250, -39.2, -250, -45.6, -246, -48.9, -246, -54.9, -239, -56.2, -239, -61.1, -230, -62.6, -230, -67.5, -210, -69, -210, -69, -181.7, -65, -168, -65, -163.3, -49, -143, -47, -128.8, -47, -124.8, -63.3, -122, -67.3, -122, -102.9, -109.8, -113.5, -116, -124.4, -116, -148.3, -106, -150, -106, -150, 49.2, -146, 67.4, -146, 71.4, -138, 93.4, -138, 99.7, -132, 106.7, -132, 109, -115.2, 109, -108.2, 102, -106.5, 102, -101.5, 86, -100, 86, -99, 35, -99, 16.8, -96.5, 26, -96, 93, -100, 140.9, -100, 163.1, -95.7, 192, -94.9, 192, -91, 246.1, -91, 250, 61, 250, 61, 236.5, 58, 230.5, 58, 217.1, 68, 38.1, 68, 64.3, 74, 82.3, 74, 85, 82, 91, 82, 92.8, 93, 93.8, 93, 95, 109.8, 95, 117.7, 88, 119.8, 88, 128.8, 9, 129.9, 9, 131.9, -42, 133.1, -42, 132, -84, 132, -90.7, 121, -103.8, 121, -105.6, 113, -107.6, 113, -109.2, 90.1, -107.1, 87, -112.5, 87, -114.9, 75, -125, 75, -127.2, 44.8, -124, 31.2, -124, 33, -144.9, 33, -151.3, 48.9, -169, 50.4, -169, 54.4, -179, 56, -179, 56, -200.6, 43, -219.7, 43, -222, 30, -232, 30, -233.2, 0, -248.3) [node name="BatExtraction" type="Node2D" parent="."] unique_name_in_owner = true position = Vector2(620, 399) [node name="BatExtractionOpenChest" type="Sprite2D" parent="BatExtraction"] texture = ExtResource("5_c2dn1") [node name="OpenChestHurtArea" type="Area2D" parent="BatExtraction/BatExtractionOpenChest"] collision_layer = 8 collision_mask = 8 priority = 2 [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionOpenChest/OpenChestHurtArea"] polygon = PackedVector2Array(35.5, -87.4, 33, -86.3, 33, -85.1, 25.3, -80, 23.4, -80, 22.7, -76.9, 28.5, -74, 31.8, -74, 37.8, -80, 39.3, -80, 40.4, -82.5) [node name="CollisionPolygon2D2" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionOpenChest/OpenChestHurtArea"] polygon = PackedVector2Array(48.9, -81.3, 46, -80.5, 46, -79, 34, -70, 7.89999, -69, 2.5, -69, 0.5, -62, -2.2, -62, 1, -55.6, 1, -53.4, 21.8, -49, 38.7, -49, 44.7, -54, 46.5, -54, 51.5, -72, 52.2, -72, 53.3, -74) [node name="CollisionPolygon2D3" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionOpenChest/OpenChestHurtArea"] polygon = PackedVector2Array(22.5, -80.4, 20, -79.3, 20, -78.3, 18, -77.2, 18, -73, 26.3, -73, 27.4, -75.5) [node name="CollisionPolygon2D4" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionOpenChest/OpenChestHurtArea"] polygon = PackedVector2Array(-64.7, -78.4, -67, -77.3, -67, -75.4, -71, -66.4, -71, -57.8, -61, -52.8, -61, -51.4, -51.2, -49, -38.7, -49, -17.7, -56, -14.5, -56, -17, -67.4, -17, -70.1, -36.1, -69, -43.7, -69, -55.7, -73, -58.3, -73) [node name="CollisionPolygon2D5" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionOpenChest/OpenChestHurtArea"] polygon = PackedVector2Array(-24, -53.4, -24, -50, -28, -47, -40, -45.8, -69.9, -48, -72.4, -48, -74.4, -42, -76, -42, -76, -24.6, -66.4, 0, -65.5, 0, -60, 22, -60, 25.9, -38.6, 18, -35.5, 18, -11.7, 4.5, -10.3, 5, -7.7, 5, 2.3, 13, 4.10001, 13, 17.2, 25, 19.8, 25, 23, 21.8, 23, 19.2, 16, 11.2, 16, 9.10001, 6.8, 1, 4.89999, 1, -12.1, -19, -13, -45.1, -13, -47.2) [node name="CollisionPolygon2D6" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionOpenChest/OpenChestHurtArea"] polygon = PackedVector2Array(2, -48.6, 2, -46.3, 0, -45.2, 0, -36.7, 13, -30.8, 13, -29.4, 23, -27.4, 23, -25.6, 43.3, -29, 46.5, -29, 44, -40.4, 44, -43, 22.1, -43) [node name="CollisionPolygon2D7" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionOpenChest/OpenChestHurtArea"] polygon = PackedVector2Array(8.2, -26.3, 6, -25.2, 6, -24.3, 4, -23.2, 4, -19.8, 13.5, -15, 16.5, -10.6, 16, -8.2, 16, -6.39999, 11, -4.39999, 11, -0.899994, 37, 16.1, 37, 17.5, 39.8, 18.3, 44.1, 12, 46, 12, 46, 0, 47.3, 0, 45, -18.2, 45, -21, 15.6, -21) [node name="Path2D" type="Path2D" parent="BatExtraction"] curve = SubResource("Curve2D_wv8oy") [node name="PathFollow2D" type="PathFollow2D" parent="BatExtraction/Path2D"] position = Vector2(-44, -62) rotation = -0.0317354 rotates = false [node name="BatExtractionBat" type="Sprite2D" parent="BatExtraction/Path2D/PathFollow2D"] texture = ExtResource("6_yfdwj") script = ExtResource("13_um5dt") speed = 0.1 [node name="BatArea" type="Area2D" parent="BatExtraction/Path2D/PathFollow2D/BatExtractionBat"] collision_layer = 8 collision_mask = 8 priority = 3 [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="BatExtraction/Path2D/PathFollow2D/BatExtractionBat/BatArea"] polygon = PackedVector2Array(-9, -13, -22.4, -13, -24, -12.2, -24, -9.6, -18, 3.3, -18, 5, -8, 12.9, 5, 13, 23.7, -3, 25, -3, 25, -6.9, 18.8, -13, 13, -13, 3, -3.9, 3, -3, -1.1, -3, -9, -11.8) [node name="BatExtractionBody" type="Sprite2D" parent="BatExtraction"] texture = ExtResource("7_7hv63") [node name="BatExtractionOpenChestFlaps" type="Sprite2D" parent="BatExtraction"] texture = ExtResource("8_1vja2") [node name="OpenChestFlapsHurtArea" type="Area2D" parent="BatExtraction/BatExtractionOpenChestFlaps"] collision_layer = 8 collision_mask = 8 priority = 4 [node name="CollisionPolygon2D2" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionOpenChestFlaps/OpenChestFlapsHurtArea"] polygon = PackedVector2Array(-88, -97, -88, -95.4, -89.4, -94, -90.6, -94, -93, -89.2, -93, -87.4, -99.5, -79, -100.8, -79, -102.8, -71, -103.9, -71, -105, -63.1, -105, -43.8, -103, -39.8, -103, -33, -103.9, -28, -104.9, -28, -105.9, -11, -107.1, -11, -106, 8.10001, -106, 16.3, -100, 24.3, -100, 26.6, -98, 27.6, -98, 28.8, -85, 31.8, -85, 33, -75.7, 33, -68.7, 28, -60.5, 28, -58.5, 25, -56.4, 25, -58.4, 21, -59.1, 21, -62, 4.8, -62, 0.800003, -64.4, -4, -65, -4, -65, -7.2, -66.4, -10, -67.2, -10, -72.3, -26, -73, -26, -73, -39.8, -69.2, -55, -67.9, -55, -69, -66.1, -69, -68.6, -68.6, -69, -67, -69, -67, -71, -66.2, -71, -64, -81.9, -64, -83.4, -70, -89.4, -70, -91, -72.6, -91, -74, -92.4, -74, -93.6, -78, -95.6, -78, -97) [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionOpenChestFlaps/OpenChestFlapsHurtArea"] polygon = PackedVector2Array(66, -103.6, 66, -101.6, 62.8, -100, 60.6, -100, 51.6, -90, 50, -90, 50, -74.2, 48.3, -70, 47, -70, 47, -67, 46.2, -67, 43.2, -51, 41.9, -51, 43, -38.9, 43, -30.6, 45.6, -28, 49, -28, 49, -27, 47.4, -27, 46.4, -25, 45.3, -25, 44.8, -23.8, 47, -21.6, 47, -19.4, 45.6, -18, 44.1, -18, 43, -2, 43, 9.79999, 41.4, 13, 40, 13, 40, 16.6, 42, 17.6, 42, 19.6, 41.6, 20, 40.3, 20, 39.1, 23.4, 38.2, 23, 36.7, 23, 32.7, 26, 31.4, 26, 30.8, 27.1, 33.5, 31, 37.4, 31, 39.8, 28.5, 40.8, 29, 44.6, 29, 45.6, 27, 52.3, 27, 55.3, 25, 57.6, 25, 58.6, 23, 60.5, 23, 65.5, 17, 66.9, 17, 68, 9.10001, 68, 6.29999, 70.5, 3, 71.7, 3, 73.7, -2, 74.7, -2, 76, -5.8, 76, -11.8, 78.6, -17, 79.7, -17, 82.8, -27, 83.8, -27, 86, -36.9, 86, -53.2, 81.6, -62, 80.8, -62, 78, -71.3, 78, -89.3, 72, -97.4, 72, -100.6) [node name="BatExtractionBones" type="Sprite2D" parent="BatExtraction"] texture = ExtResource("9_7uu43") [node name="BonesHurtArea" type="Area2D" parent="BatExtraction/BatExtractionBones"] collision_layer = 8 collision_mask = 8 priority = 4 [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="BatExtraction/BatExtractionBones/BonesHurtArea"] polygon = PackedVector2Array(39, -86, 39, -84.3, 21, -75.2, -2, -75, -2, -74, -14.8, -74, -16, -76.5, -16, -79.8, -32.4, -74, -34.6, -74, -62.7, -84, -64.8, -84, -68, -80.8, -68, -78.2, -61, -71.2, -61, -69.3, -38, -65.3, -38, -63.6, -19, -67, -19, -59.5, -41, -53.5, -50.9, -54, -55.4, -54, -63.4, -59, -68.1, -59, -71.1, -54, -74.2, -54, -72, -49.6, -72, -45.8, -68, -43.8, -68, -42, -54, -42, -54, -40.9, -37.9, -42, -29.4, -42, -20, -48.7, -17.1, -44, -16, -24.9, -16, -16.2, 20, 21.8, 20, 23.2, 22.1, 24.3, 25.1, 22.3, 27.9, 27, 36.6, 27, 45, 21, 45, 16.9, 22.6, 2, 19.8, 2, 14.3, -3.5, 21, -6.8, 21, -13.1, 5.60001, -22.8, 15, -18.8, 15, -17, 23, -17, 23, -15.9, 40.1, -17, 45.5, -17, 48, -25.7, 48, -28.8, 37.1, -30, 25.3, -30, 4, -39.3, 4, -43.5, 21.8, -39, 42.4, -39, 46, -49.7, 46, -52.8, 42.8, -56, 40.2, -56, 37.2, -53, 22.1, -53, 3, -58.5, 3, -59.5, 5.7, -65.1, 30.1, -66, 36.8, -66, 49.8, -79, 51.3, -79, 52.4, -81.5, 50, -83.9, 50, -86) [node name="Operation" type="Node" parent="."] script = ExtResource("7_mteqj") [node name="CutSequence" type="Node2D" parent="Operation"] script = ExtResource("10_gcaa6") [node name="CutSequencePoint" parent="Operation/CutSequence" instance=ExtResource("11_hcsao")] position = Vector2(558, 316) [node name="CutSequencePoint2" parent="Operation/CutSequence" instance=ExtResource("11_hcsao")] position = Vector2(584, 321) [node name="CutSequencePoint3" parent="Operation/CutSequence" instance=ExtResource("11_hcsao")] position = Vector2(614, 326) [node name="CutSequencePoint4" parent="Operation/CutSequence" instance=ExtResource("11_hcsao")] position = Vector2(644, 318) [node name="CutSequencePoint5" parent="Operation/CutSequence" instance=ExtResource("11_hcsao")] position = Vector2(668, 311) [node name="CutSequence2" type="Node2D" parent="Operation"] position = Vector2(-4, 69) script = ExtResource("10_gcaa6") [node name="CutSequencePoint" parent="Operation/CutSequence2" instance=ExtResource("11_hcsao")] position = Vector2(618, 257) [node name="CutSequencePoint2" parent="Operation/CutSequence2" instance=ExtResource("11_hcsao")] position = Vector2(615, 285) [node name="CutSequencePoint3" parent="Operation/CutSequence2" instance=ExtResource("11_hcsao")] position = Vector2(615, 310) [node name="CutSequencePoint4" parent="Operation/CutSequence2" instance=ExtResource("11_hcsao")] position = Vector2(615, 334) [node name="CutSequence3" type="Node2D" parent="Operation"] position = Vector2(-4, 69) script = ExtResource("10_gcaa6") [node name="CutSequencePoint" parent="Operation/CutSequence3" instance=ExtResource("11_hcsao")] position = Vector2(615, 334) [node name="CutSequencePoint2" parent="Operation/CutSequence3" instance=ExtResource("11_hcsao")] position = Vector2(598, 342) [node name="CutSequencePoint3" parent="Operation/CutSequence3" instance=ExtResource("11_hcsao")] position = Vector2(580, 350) [node name="CutSequencePoint4" parent="Operation/CutSequence3" instance=ExtResource("11_hcsao")] position = Vector2(562, 355) [node name="CutSequence4" type="Node2D" parent="Operation"] position = Vector2(-4, 69) script = ExtResource("10_gcaa6") [node name="CutSequencePoint" parent="Operation/CutSequence4" instance=ExtResource("11_hcsao")] position = Vector2(615, 334) [node name="CutSequencePoint2" parent="Operation/CutSequence4" instance=ExtResource("11_hcsao")] position = Vector2(628, 342) [node name="CutSequencePoint3" parent="Operation/CutSequence4" instance=ExtResource("11_hcsao")] position = Vector2(647, 353) [node name="CutSequencePoint4" parent="Operation/CutSequence4" instance=ExtResource("11_hcsao")] position = Vector2(665, 355) [node name="BatGrabStep" type="Node2D" parent="Operation"] script = ExtResource("18_d00rj") grabbing_target_path = NodePath("../../BatExtraction/Path2D/PathFollow2D/BatExtractionBat") [connection signal="value_changed" from="UI/HBoxContainer/PatienceBar" to="." method="_on_patience_bar_value_changed"] [connection signal="timeout" from="TestScalpel/CutHurtTimer" to="TestScalpel" method="_on_cut_hurt_timer_timeout"] [connection signal="area_entered" from="TestBody1/Area2D" to="TestScalpel" method="_on_body_area_entered"] [connection signal="area_exited" from="TestBody1/Area2D" to="TestScalpel" method="_on_body_area_exited"]