diff --git a/assets/minigames/turtles/graphic/green_turtle_spritesheet.png b/assets/minigames/turtles/graphic/green_turtle_spritesheet.png new file mode 100644 index 00000000..23a75d4d Binary files /dev/null and b/assets/minigames/turtles/graphic/green_turtle_spritesheet.png differ diff --git a/assets/minigames/turtles/graphic/green_turtle_spritesheet.png.import b/assets/minigames/turtles/graphic/green_turtle_spritesheet.png.import new file mode 100644 index 00000000..3b6def78 --- /dev/null +++ b/assets/minigames/turtles/graphic/green_turtle_spritesheet.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cpyluuh331y6u" +path="res://.godot/imported/green_turtle_spritesheet.png-b1503559ba979fc938d9381ac49ec72b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/minigames/turtles/graphic/green_turtle_spritesheet.png" +dest_files=["res://.godot/imported/green_turtle_spritesheet.png-b1503559ba979fc938d9381ac49ec72b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/minigames/turtles/graphic/khaki_turtle_spritesheet.png b/assets/minigames/turtles/graphic/khaki_turtle_spritesheet.png new file mode 100644 index 00000000..1633d79a Binary files /dev/null and b/assets/minigames/turtles/graphic/khaki_turtle_spritesheet.png differ diff --git a/assets/minigames/turtles/graphic/khaki_turtle_spritesheet.png.import b/assets/minigames/turtles/graphic/khaki_turtle_spritesheet.png.import new file mode 100644 index 00000000..0ffebf69 --- /dev/null +++ b/assets/minigames/turtles/graphic/khaki_turtle_spritesheet.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d14qsri0qk7ka" +path="res://.godot/imported/khaki_turtle_spritesheet.png-a086f44af79aa8241854ed0402dd727c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/minigames/turtles/graphic/khaki_turtle_spritesheet.png" +dest_files=["res://.godot/imported/khaki_turtle_spritesheet.png-a086f44af79aa8241854ed0402dd727c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/minigames/turtles/graphic/purple_turtle_spritesheet.png b/assets/minigames/turtles/graphic/purple_turtle_spritesheet.png new file mode 100644 index 00000000..e509abac Binary files /dev/null and b/assets/minigames/turtles/graphic/purple_turtle_spritesheet.png differ diff --git a/assets/minigames/turtles/graphic/turtle_spritesheet.png.import b/assets/minigames/turtles/graphic/purple_turtle_spritesheet.png.import similarity index 71% rename from assets/minigames/turtles/graphic/turtle_spritesheet.png.import rename to assets/minigames/turtles/graphic/purple_turtle_spritesheet.png.import index d990be44..460c4d7e 100644 --- a/assets/minigames/turtles/graphic/turtle_spritesheet.png.import +++ b/assets/minigames/turtles/graphic/purple_turtle_spritesheet.png.import @@ -3,15 +3,15 @@ importer="texture" type="CompressedTexture2D" uid="uid://cgtaho31ifol5" -path="res://.godot/imported/turtle_spritesheet.png-42d810865cf7eed5bf8d038a7e9e83d8.ctex" +path="res://.godot/imported/purple_turtle_spritesheet.png-71c379fad43eb5a5e325a6344e8c2842.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://assets/minigames/turtles/graphic/turtle_spritesheet.png" -dest_files=["res://.godot/imported/turtle_spritesheet.png-42d810865cf7eed5bf8d038a7e9e83d8.ctex"] +source_file="res://assets/minigames/turtles/graphic/purple_turtle_spritesheet.png" +dest_files=["res://.godot/imported/purple_turtle_spritesheet.png-71c379fad43eb5a5e325a6344e8c2842.ctex"] [params] diff --git a/assets/minigames/turtles/graphic/turtle_island.png b/assets/minigames/turtles/graphic/turtle_island.png index d8a1fbf7..a21f0658 100644 Binary files a/assets/minigames/turtles/graphic/turtle_island.png and b/assets/minigames/turtles/graphic/turtle_island.png differ diff --git a/assets/minigames/turtles/graphic/turtle_spritesheet.png b/assets/minigames/turtles/graphic/turtle_spritesheet.png deleted file mode 100644 index 1bd2f311..00000000 Binary files a/assets/minigames/turtles/graphic/turtle_spritesheet.png and /dev/null differ diff --git a/sources/minigames/turtles/island.tscn b/sources/minigames/turtles/island.tscn index 5dbbe9b0..ea94cc26 100644 --- a/sources/minigames/turtles/island.tscn +++ b/sources/minigames/turtles/island.tscn @@ -23,4 +23,4 @@ horizontal_alignment = 1 vertical_alignment = 1 [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="."] -polygon = PackedVector2Array(66, -204, 66, -202.4, 57.5, -199, 55.099976, -199, 46.099976, -189, 44.700012, -189, 38, -173.4, 38, -166.9, 22.900024, -166, 15.599976, -166, 4.5999756, -161, 2.2000122, -161, -14.900024, -145, -16.299988, -145, -24.700012, -127, -404.2, -127, -434.4, -121, -438.4, -121, -460.4, -111, -462.6, -111, -476.6, -101, -478.8, -101, -502.8, -78, -504.1, -78, -524.1, -46, -525.5, -46, -532.5, -24, -533.7, -24, -536.7, -4, -538, -4, -538, 32.199997, -534, 48, -534, 52.399994, -521, 81.29999, -521, 83.70001, -503, 106.600006, -503, 108.899994, -481, 127.79999, -481, 129.20001, -467, 137.1, -467, 138.4, -436, 150.29999, -436, 151.70001, -413.2, 156, -408.1, 156, -400, 170.4, -400, 172.9, -392, 179.79999, -392, 181.29999, -370, 191.20001, -370, 193, -124.600006, 193, -111.600006, 187, -109.20001, 187, -103.20001, 181, -100.899994, 181, -84.29999, 155.9, 325, 155, 330.90002, 155, 333.90002, 160, 337.40002, 160, 361.40002, 151, 373, 168.6, 373, 170.9, 398, 191.9, 398, 193.4, 427, 203.4, 427, 204.79999, 436.90002, 206, 453.2, 206, 465.09998, 203, 469.5, 203, 494.5, 190, 496.80005, 190, 519, 167.79999, 519, 165, 465, 124.70001, 526.80005, 140, 530.19995, 140, 532.19995, 136, 533.9, 136, 534.9, 122, 536.19995, 122, 534, 100.79999, 534, 95.600006, 523, 70.600006, 523, 68.20001, 505, 48.200012, 505, 46.899994, 481, 32.800003, 481, 31.5, 458.3, 25, 450, 25, 450, -0.19999695, 443, -28, 443, -31.5, 430, -56.600006, 430, -58.699997, 415, -76.7, 415, -78.899994, 393, -97.9, 393, -99.2, 372, -111.2, 372, -112.4, 345, -121.5, 345, -122.7, 316.09998, -127, 310.3, -127, 306, -137.4, 306, -139.8, 294, -152.9, 294, -154.2, 279, -162.3, 279, -163.6, 264.2, -167, 248, -167, 248, -175.5, 244, -183.5, 244, -185.8, 234, -195.8, 234, -197.3, 227, -200.3, 227, -202) +polygon = PackedVector2Array(212, -195, 46.5, -195, 42.5, -193, 40.099976, -193, 33.099976, -185, 31.700012, -185, 24, -166.4, 24, -161.9, 11.900024, -161, 3.5999756, -161, -10.299988, -155, -12.799988, -155, -26.900024, -142, -28.200012, -142, -38.700012, -122, -412.2, -122, -447.3, -116, -451.4, -116, -477.4, -104, -479.7, -104, -488.7, -97, -490.8, -97, -518.8, -70, -520.1, -70, -539.1, -38, -540.5, -38, -549, -5.899994, -549, 49.100006, -547, 56, -547, 60.399994, -535, 86.29999, -535, 88.70001, -522, 105.600006, -522, 107.899994, -500, 128.79999, -500, 130.1, -481, 142.1, -481, 143.29999, -462, 151.20001, -462, 152.6, -428.2, 161, -422.1, 161, -413, 176.4, -413, 179, -399, 189.9, -399, 191.4, -389.1, 195, -131.20001, 195, -118.399994, 187, -116, 187, -99, 163.70001, -99, 161.9, 299, 161, 447.2, 161, 467.09998, 156, 471.5, 156, 496.5, 143, 498.80005, 143, 520.80005, 123, 522, 123, 532, 109, 533.30005, 109, 542.30005, 90, 543.6, 90, 549, 68, 549, 16.899994, 543, -0.5, 543, -3.600006, 525, -29.600006, 525, -31.899994, 506, -48.899994, 506, -50.199997, 484, -62.300003, 484, -63.5, 450.3, -73, 399.8, -73, 384, -88.8, 384, -90.1, 365, -102.2, 365, -103.4, 334, -115.4, 334, -116.7, 311.2, -121, 297.2, -121, 291, -134.4, 291, -136.8, 281, -146.8, 281, -148.2, 267, -156.2, 267, -157.6, 247.20001, -162, 234.70001, -162, 234, -165.4, 234, -171.6, 228, -181.6, 228, -184.1) diff --git a/sources/minigames/turtles/turtle.tscn b/sources/minigames/turtles/turtle.tscn index 44a50f75..ab3eea87 100644 --- a/sources/minigames/turtles/turtle.tscn +++ b/sources/minigames/turtles/turtle.tscn @@ -1,206 +1,158 @@ -[gd_scene load_steps=46 format=3 uid="uid://djykrpdu58f3v"] +[gd_scene load_steps=47 format=3 uid="uid://djykrpdu58f3v"] [ext_resource type="Script" uid="uid://doq6myv45i4w6" path="res://sources/minigames/turtles/turtle.gd" id="1_vx1yr"] [ext_resource type="PackedScene" uid="uid://cn2rw06pltyiu" path="res://sources/utils/fx/right.tscn" id="2_dmkbj"] [ext_resource type="PackedScene" uid="uid://cge0uyn30tcpv" path="res://sources/utils/fx/highlight.tscn" id="2_rllc5"] -[ext_resource type="Texture2D" uid="uid://cgtaho31ifol5" path="res://assets/minigames/turtles/graphic/turtle_spritesheet.png" id="11_3b3ei"] +[ext_resource type="Texture2D" uid="uid://cgtaho31ifol5" path="res://assets/minigames/turtles/graphic/purple_turtle_spritesheet.png" id="11_3b3ei"] [ext_resource type="PackedScene" uid="uid://dlmbxcgiv8tpr" path="res://sources/utils/fx/wrong.tscn" id="40_vguhy"] [ext_resource type="LabelSettings" uid="uid://bguqnhiblwick" path="res://resources/themes/minigames_label_settings.tres" id="41_enfmr"] [ext_resource type="AudioStream" uid="uid://cmsn7q4fxnghr" path="res://assets/sfx/splash.mp3" id="42_p3fqk"] [ext_resource type="PackedScene" uid="uid://cjg6pgc7yfp1p" path="res://sources/utils/swipe_detector.tscn" id="49_0qwwy"] -[sub_resource type="AtlasTexture" id="AtlasTexture_b6373"] +[sub_resource type="AtlasTexture" id="AtlasTexture_xbpgw"] atlas = ExtResource("11_3b3ei") region = Rect2(0, 4000, 800, 800) -[sub_resource type="AtlasTexture" id="AtlasTexture_8my05"] +[sub_resource type="AtlasTexture" id="AtlasTexture_4juk7"] atlas = ExtResource("11_3b3ei") region = Rect2(800, 4000, 800, 800) -[sub_resource type="AtlasTexture" id="AtlasTexture_1r4iv"] +[sub_resource type="AtlasTexture" id="AtlasTexture_d5x3l"] atlas = ExtResource("11_3b3ei") region = Rect2(1600, 4000, 800, 800) -[sub_resource type="AtlasTexture" id="AtlasTexture_fdorw"] +[sub_resource type="AtlasTexture" id="AtlasTexture_yhidj"] atlas = ExtResource("11_3b3ei") region = Rect2(2400, 4000, 800, 800) -[sub_resource type="AtlasTexture" id="AtlasTexture_a4xw3"] +[sub_resource type="AtlasTexture" id="AtlasTexture_8syuy"] atlas = ExtResource("11_3b3ei") region = Rect2(3200, 4000, 800, 800) -[sub_resource type="AtlasTexture" id="AtlasTexture_tinqr"] -atlas = ExtResource("11_3b3ei") -region = Rect2(0, 0, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_yjcj8"] -atlas = ExtResource("11_3b3ei") -region = Rect2(800, 0, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_jjktv"] -atlas = ExtResource("11_3b3ei") -region = Rect2(1600, 0, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_qhmcw"] -atlas = ExtResource("11_3b3ei") -region = Rect2(2400, 0, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_u4obg"] -atlas = ExtResource("11_3b3ei") -region = Rect2(3200, 0, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_61th3"] -atlas = ExtResource("11_3b3ei") -region = Rect2(4000, 0, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_eufa2"] -atlas = ExtResource("11_3b3ei") -region = Rect2(4800, 0, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_ebdps"] -atlas = ExtResource("11_3b3ei") -region = Rect2(5600, 0, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_xbpgw"] -atlas = ExtResource("11_3b3ei") -region = Rect2(0, 800, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_4juk7"] -atlas = ExtResource("11_3b3ei") -region = Rect2(800, 800, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_d5x3l"] -atlas = ExtResource("11_3b3ei") -region = Rect2(1600, 800, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_yhidj"] -atlas = ExtResource("11_3b3ei") -region = Rect2(2400, 800, 800, 800) - -[sub_resource type="AtlasTexture" id="AtlasTexture_8syuy"] -atlas = ExtResource("11_3b3ei") -region = Rect2(3200, 800, 800, 800) - [sub_resource type="AtlasTexture" id="AtlasTexture_oxwih"] atlas = ExtResource("11_3b3ei") -region = Rect2(4000, 800, 800, 800) +region = Rect2(4000, 4000, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_eg23a"] atlas = ExtResource("11_3b3ei") -region = Rect2(4800, 800, 800, 800) +region = Rect2(0, 0, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_p0pfx"] atlas = ExtResource("11_3b3ei") -region = Rect2(5600, 800, 800, 800) +region = Rect2(800, 0, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_s54nu"] atlas = ExtResource("11_3b3ei") -region = Rect2(0, 1600, 800, 800) +region = Rect2(1600, 0, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_edqdb"] atlas = ExtResource("11_3b3ei") -region = Rect2(800, 1600, 800, 800) +region = Rect2(2400, 0, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_p24xq"] atlas = ExtResource("11_3b3ei") -region = Rect2(1600, 1600, 800, 800) +region = Rect2(3200, 0, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_sv4dl"] atlas = ExtResource("11_3b3ei") -region = Rect2(2400, 1600, 800, 800) +region = Rect2(4000, 0, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_yovpm"] atlas = ExtResource("11_3b3ei") -region = Rect2(3200, 1600, 800, 800) +region = Rect2(4800, 0, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_2sepv"] atlas = ExtResource("11_3b3ei") -region = Rect2(4000, 1600, 800, 800) +region = Rect2(5600, 0, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_74pfv"] atlas = ExtResource("11_3b3ei") -region = Rect2(4800, 1600, 800, 800) +region = Rect2(0, 800, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_wcw11"] atlas = ExtResource("11_3b3ei") -region = Rect2(5600, 1600, 800, 800) +region = Rect2(800, 800, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_81y3d"] atlas = ExtResource("11_3b3ei") -region = Rect2(0, 2400, 800, 800) +region = Rect2(1600, 800, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_r80uy"] atlas = ExtResource("11_3b3ei") -region = Rect2(800, 2400, 800, 800) +region = Rect2(2400, 800, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_7qs4e"] atlas = ExtResource("11_3b3ei") -region = Rect2(1600, 2400, 800, 800) +region = Rect2(3200, 800, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_l7snx"] atlas = ExtResource("11_3b3ei") -region = Rect2(2400, 2400, 800, 800) +region = Rect2(4000, 800, 800, 800) [sub_resource type="AtlasTexture" id="AtlasTexture_2frwj"] atlas = ExtResource("11_3b3ei") +region = Rect2(4800, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_hydhh"] +atlas = ExtResource("11_3b3ei") +region = Rect2(5600, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_b6373"] +atlas = ExtResource("11_3b3ei") +region = Rect2(0, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_8my05"] +atlas = ExtResource("11_3b3ei") +region = Rect2(800, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_1r4iv"] +atlas = ExtResource("11_3b3ei") +region = Rect2(1600, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_fdorw"] +atlas = ExtResource("11_3b3ei") +region = Rect2(2400, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_a4xw3"] +atlas = ExtResource("11_3b3ei") +region = Rect2(3200, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_owlps"] +atlas = ExtResource("11_3b3ei") +region = Rect2(4000, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_3b3ei"] +atlas = ExtResource("11_3b3ei") +region = Rect2(4800, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_tinqr"] +atlas = ExtResource("11_3b3ei") +region = Rect2(5600, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yjcj8"] +atlas = ExtResource("11_3b3ei") +region = Rect2(0, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_jjktv"] +atlas = ExtResource("11_3b3ei") +region = Rect2(800, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_qhmcw"] +atlas = ExtResource("11_3b3ei") +region = Rect2(1600, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_u4obg"] +atlas = ExtResource("11_3b3ei") +region = Rect2(2400, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_61th3"] +atlas = ExtResource("11_3b3ei") region = Rect2(3200, 2400, 800, 800) [sub_resource type="SpriteFrames" id="SpriteFrames_1emmd"] animations = [{ "frames": [{ "duration": 1.0, -"texture": SubResource("AtlasTexture_b6373") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_8my05") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_1r4iv") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_fdorw") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_a4xw3") -}, { -"duration": 1.0, -"texture": null -}], -"loop": false, -"name": &"disappear", -"speed": 12.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": SubResource("AtlasTexture_tinqr") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_yjcj8") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_jjktv") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_qhmcw") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_u4obg") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_61th3") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_eufa2") -}, { -"duration": 1.0, -"texture": SubResource("AtlasTexture_ebdps") -}], -"loop": true, -"name": &"swim", -"speed": 12.0 -}, { -"frames": [{ -"duration": 1.0, "texture": SubResource("AtlasTexture_xbpgw") }, { "duration": 1.0, @@ -217,18 +169,18 @@ animations = [{ }, { "duration": 1.0, "texture": SubResource("AtlasTexture_oxwih") +}], +"loop": false, +"name": &"disappear", +"speed": 12.0 }, { +"frames": [{ "duration": 1.0, "texture": SubResource("AtlasTexture_eg23a") }, { "duration": 1.0, "texture": SubResource("AtlasTexture_p0pfx") -}], -"loop": false, -"name": &"swim_left", -"speed": 18.0 }, { -"frames": [{ "duration": 1.0, "texture": SubResource("AtlasTexture_s54nu") }, { @@ -246,18 +198,18 @@ animations = [{ }, { "duration": 1.0, "texture": SubResource("AtlasTexture_2sepv") +}], +"loop": true, +"name": &"swim", +"speed": 12.0 }, { +"frames": [{ "duration": 1.0, "texture": SubResource("AtlasTexture_74pfv") }, { "duration": 1.0, "texture": SubResource("AtlasTexture_wcw11") -}], -"loop": false, -"name": &"swim_right", -"speed": 18.0 }, { -"frames": [{ "duration": 1.0, "texture": SubResource("AtlasTexture_81y3d") }, { @@ -272,6 +224,58 @@ animations = [{ }, { "duration": 1.0, "texture": SubResource("AtlasTexture_2frwj") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_hydhh") +}], +"loop": false, +"name": &"swim_left", +"speed": 18.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_b6373") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_8my05") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_1r4iv") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_fdorw") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_a4xw3") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_owlps") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_3b3ei") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_tinqr") +}], +"loop": false, +"name": &"swim_right", +"speed": 18.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_yjcj8") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_jjktv") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_qhmcw") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_u4obg") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_61th3") }], "loop": false, "name": &"victory", @@ -279,11 +283,11 @@ animations = [{ }] [sub_resource type="CircleShape2D" id="CircleShape2D_xbpgw"] -radius = 48.0 +radius = 25.298222 [sub_resource type="CapsuleShape2D" id="CapsuleShape2D_xsnve"] -radius = 128.0 -height = 352.0 +radius = 103.54 +height = 288.0 [node name="Turtle" type="Node2D"] script = ExtResource("1_vx1yr") @@ -305,7 +309,7 @@ unique_name_in_owner = true position = Vector2(0, -16) scale = Vector2(0.8, 0.8) sprite_frames = SubResource("SpriteFrames_1emmd") -animation = &"swim" +animation = &"victory" autoplay = "swim" [node name="VisibleOnScreenNotifier2D" type="VisibleOnScreenNotifier2D" parent="Body"] @@ -317,9 +321,9 @@ collision_mask = 0 monitoring = false [node name="CollisionShape2D" type="CollisionShape2D" parent="Body/HeadArea"] -position = Vector2(0, -176) +position = Vector2(0, -160) shape = SubResource("CircleShape2D_xbpgw") -debug_color = Color(0.129412, 0.458824, 0, 0.505882) +debug_color = Color(0.870588, 0.117647, 0, 0.388235) [node name="BodyArea" type="Area2D" parent="Body"] position = Vector2(0, -16) @@ -327,7 +331,7 @@ collision_layer = 0 monitorable = false [node name="CollisionShape2D" type="CollisionShape2D" parent="Body/BodyArea"] -position = Vector2(0, 24) +position = Vector2(0, 16) shape = SubResource("CapsuleShape2D_xsnve") debug_color = Color(0.870588, 0.117647, 0, 0.388235) diff --git a/sources/minigames/turtles/turtles_minigame.gd b/sources/minigames/turtles/turtles_minigame.gd index aa73be97..bcd079ad 100644 --- a/sources/minigames/turtles/turtles_minigame.gd +++ b/sources/minigames/turtles/turtles_minigame.gd @@ -29,6 +29,7 @@ var stimulus_spawned: bool = false @onready var spawn_timer: Timer = $GameRoot/SpawnTimer @onready var spawn_points_container: Node2D = $GameRoot/SpawnPoints @onready var spawn_location: Node2D +@onready var crab: AnimatedSprite2D = %CrabAnimatedSprite2D # Find and set the parameters of the minigame, like the number of lives or the victory conditions. @@ -70,15 +71,16 @@ func _clear_turtles() -> void: for turtle: Turtle in turtles.get_children(): turtle.disappear() - #region Connections func _on_spawn_timer_timeout() -> void: + Log.trace("TurtleMinigame: Spawn timer timeout") # Checks if there are too many turtle, and wait for one to despawn if turtle_count >= MAX_TURTLE_COUNT: + Log.trace("TurtleMinigame: Waiting for possibility to spawn more turtles") await can_spawn_turtle - # Spawn a turtle + Log.trace("TurtleMinigame: Spawn a turtle") var turtle: Turtle = TURTLE_SCENE.instantiate() # Pick a position to spawn the turtle @@ -204,6 +206,11 @@ func _on_current_progression_changed() -> void: # Restarts the spawning spawn_timer.start() + +func _win() -> void: + crab.play("right") + super() + #endregion class DifficultySettings: diff --git a/sources/minigames/turtles/turtles_minigame.tscn b/sources/minigames/turtles/turtles_minigame.tscn index addbf33b..ddeef097 100644 --- a/sources/minigames/turtles/turtles_minigame.tscn +++ b/sources/minigames/turtles/turtles_minigame.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=7 format=3 uid="uid://tkfgc7fdyw1a"] +[gd_scene load_steps=41 format=3 uid="uid://tkfgc7fdyw1a"] [ext_resource type="PackedScene" uid="uid://cisurm74fqg2i" path="res://sources/minigames/base/words/words_minigame.tscn" id="1_geqym"] [ext_resource type="Script" uid="uid://crs4p0fblwt00" path="res://sources/minigames/turtles/turtles_minigame.gd" id="2_f5de7"] @@ -6,6 +6,254 @@ [ext_resource type="Texture2D" uid="uid://rnqme2j272qf" path="res://assets/minigames/turtles/graphic/gauge_icon_turtle_full.png" id="4_l6oqe"] [ext_resource type="PackedScene" uid="uid://chuny571miwxm" path="res://sources/minigames/turtles/island.tscn" id="5_bgryf"] [ext_resource type="PackedScene" uid="uid://b8vmq4o8f7v5p" path="res://sources/minigames/turtles/water.tscn" id="5_g012u"] +[ext_resource type="Texture2D" uid="uid://cjxvog1y6wkfv" path="res://assets/minigames/crabs/graphic/crab_spritesheet.png" id="7_yqywd"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_c4r2k"] +atlas = ExtResource("7_yqywd") +region = Rect2(0, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_2ax6s"] +atlas = ExtResource("7_yqywd") +region = Rect2(800, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_wj62x"] +atlas = ExtResource("7_yqywd") +region = Rect2(1600, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_6t11r"] +atlas = ExtResource("7_yqywd") +region = Rect2(2400, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_3nie6"] +atlas = ExtResource("7_yqywd") +region = Rect2(3200, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_kdwxe"] +atlas = ExtResource("7_yqywd") +region = Rect2(4000, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_mgkmu"] +atlas = ExtResource("7_yqywd") +region = Rect2(4800, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_og115"] +atlas = ExtResource("7_yqywd") +region = Rect2(5600, 800, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_6hu02"] +atlas = ExtResource("7_yqywd") +region = Rect2(0, 0, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_dxdqd"] +atlas = ExtResource("7_yqywd") +region = Rect2(800, 0, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_2m5dj"] +atlas = ExtResource("7_yqywd") +region = Rect2(1600, 0, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_miac0"] +atlas = ExtResource("7_yqywd") +region = Rect2(2400, 0, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_sujw8"] +atlas = ExtResource("7_yqywd") +region = Rect2(3200, 0, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_wjmc5"] +atlas = ExtResource("7_yqywd") +region = Rect2(4000, 0, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_xkrgk"] +atlas = ExtResource("7_yqywd") +region = Rect2(4800, 0, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_h0764"] +atlas = ExtResource("7_yqywd") +region = Rect2(5600, 0, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_xsvu8"] +atlas = ExtResource("7_yqywd") +region = Rect2(0, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_bonf7"] +atlas = ExtResource("7_yqywd") +region = Rect2(800, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_ptv43"] +atlas = ExtResource("7_yqywd") +region = Rect2(1600, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_6lqfo"] +atlas = ExtResource("7_yqywd") +region = Rect2(2400, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_f2fec"] +atlas = ExtResource("7_yqywd") +region = Rect2(3200, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_xrh66"] +atlas = ExtResource("7_yqywd") +region = Rect2(4000, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_aoe4r"] +atlas = ExtResource("7_yqywd") +region = Rect2(4800, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_10bej"] +atlas = ExtResource("7_yqywd") +region = Rect2(5600, 1600, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_7d3jy"] +atlas = ExtResource("7_yqywd") +region = Rect2(0, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_0a5g2"] +atlas = ExtResource("7_yqywd") +region = Rect2(800, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_w3881"] +atlas = ExtResource("7_yqywd") +region = Rect2(1600, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_q31br"] +atlas = ExtResource("7_yqywd") +region = Rect2(2400, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_rgrd2"] +atlas = ExtResource("7_yqywd") +region = Rect2(3200, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_dgt6k"] +atlas = ExtResource("7_yqywd") +region = Rect2(4000, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_g32nd"] +atlas = ExtResource("7_yqywd") +region = Rect2(4800, 2400, 800, 800) + +[sub_resource type="AtlasTexture" id="AtlasTexture_kww4x"] +atlas = ExtResource("7_yqywd") +region = Rect2(5600, 2400, 800, 800) + +[sub_resource type="SpriteFrames" id="SpriteFrames_gg017"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_c4r2k") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_2ax6s") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_wj62x") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_6t11r") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_3nie6") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_kdwxe") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_mgkmu") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_og115") +}], +"loop": true, +"name": &"idle", +"speed": 10.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_6hu02") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_dxdqd") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_2m5dj") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_miac0") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_sujw8") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_wjmc5") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_xkrgk") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_h0764") +}], +"loop": false, +"name": &"idle_blink", +"speed": 10.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_xsvu8") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_bonf7") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_ptv43") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_6lqfo") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_f2fec") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_xrh66") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_aoe4r") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_10bej") +}], +"loop": true, +"name": &"right", +"speed": 10.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_7d3jy") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_0a5g2") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_w3881") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_q31br") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_rgrd2") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_dgt6k") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_g32nd") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_kww4x") +}], +"loop": true, +"name": &"wrong", +"speed": 10.0 +}] [node name="TurtlesMinigame" instance=ExtResource("1_geqym")] script = ExtResource("2_f5de7") @@ -93,5 +341,14 @@ rotation = 3.1415927 [node name="SpawnTimer" type="Timer" parent="GameRoot" index="4"] one_shot = true +[node name="CrabAnimatedSprite2D" type="AnimatedSprite2D" parent="." index="4"] +unique_name_in_owner = true +position = Vector2(1544, 742) +scale = Vector2(0.3, 0.3) +sprite_frames = SubResource("SpriteFrames_gg017") +animation = &"right" +autoplay = "idle" +centered = false + [connection signal="area_entered" from="GameRoot/Island" to="." method="_on_island_area_entered"] [connection signal="timeout" from="GameRoot/SpawnTimer" to="." method="_on_spawn_timer_timeout"]