From b919ebb6580f9015105b88c8caed0324968c535d Mon Sep 17 00:00:00 2001 From: Haze Weathers Date: Sun, 24 Nov 2024 18:54:21 -0500 Subject: [PATCH] Animated and hidden whirlpool. --- graphics/level_select/whirlpool.png | Bin 1135 -> 5457 bytes graphics/level_select/whirlpool.xcf | Bin 0 -> 10211 bytes menus/level_select_scholar.gd | 9 ++++++++ menus/level_select_scholar.tscn | 34 ++++++++++++++++++++++++---- 4 files changed, 38 insertions(+), 5 deletions(-) create mode 100644 graphics/level_select/whirlpool.xcf diff --git a/graphics/level_select/whirlpool.png b/graphics/level_select/whirlpool.png index 272806fea1a37d8364f0017329a1884cff4780cf..8f5db4b1976ac85458eeef588ba5f52a179eb953 100644 GIT binary patch literal 5457 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 literal 1135 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 literal 0 HcmV?d00001 diff --git a/menus/level_select_scholar.gd b/menus/level_select_scholar.gd index 40885a3..6c1c13f 100644 --- a/menus/level_select_scholar.gd +++ b/menus/level_select_scholar.gd @@ -44,6 +44,15 @@ func _ready() -> void: if Game.current_palette == "super_player": $"%Sparkles".visible = true $ShardCount.text = "%02d" % Save.current_file.get_total_shards() + + var save := Save.current_file + + if save.levels["boss3"].completed: + $"%Whirlpool".visible = true + $"%Whirlpool".play("default") + else: + $"%Whirlpool".visible = false + Fade.fade_in(Options.transition_speed_secs) # set initial offset selected_level = Game.current_level diff --git a/menus/level_select_scholar.tscn b/menus/level_select_scholar.tscn index f5907f2..8af7178 100644 --- a/menus/level_select_scholar.tscn +++ b/menus/level_select_scholar.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=48 format=2] +[gd_scene load_steps=53 format=2] [ext_resource path="res://menus/level_select_scholar.gd" type="Script" id=1] [ext_resource path="res://graphics/level_select/world_map.png" type="Texture" id=2] @@ -22,6 +22,30 @@ [ext_resource path="res://scripts/randomize_particle_start.gd" type="Script" id=20] [ext_resource path="res://graphics/particles/shine.png" type="Texture" id=21] +[sub_resource type="AtlasTexture" id=33] +atlas = ExtResource( 15 ) +region = Rect2( 0, 0, 48, 48 ) + +[sub_resource type="AtlasTexture" id=34] +atlas = ExtResource( 15 ) +region = Rect2( 48, 0, 48, 48 ) + +[sub_resource type="AtlasTexture" id=35] +atlas = ExtResource( 15 ) +region = Rect2( 96, 0, 48, 48 ) + +[sub_resource type="AtlasTexture" id=36] +atlas = ExtResource( 15 ) +region = Rect2( 144, 0, 48, 48 ) + +[sub_resource type="SpriteFrames" id=32] +animations = [ { +"frames": [ SubResource( 33 ), SubResource( 34 ), SubResource( 35 ), SubResource( 36 ) ], +"loop": true, +"name": "default", +"speed": 8.0 +} ] + [sub_resource type="CanvasItemMaterial" id=9] particles_animation = true particles_anim_h_frames = 9 @@ -939,10 +963,10 @@ margin_right = 256.0 margin_bottom = 192.0 texture = ExtResource( 2 ) -[node name="WhirlPool" type="TextureRect" parent="."] -margin_right = 256.0 -margin_bottom = 192.0 -texture = ExtResource( 15 ) +[node name="Whirlpool" type="AnimatedSprite" parent="."] +unique_name_in_owner = true +position = Vector2( 83, 65 ) +frames = SubResource( 32 ) [node name="WaveParticles" type="CPUParticles2D" parent="."] material = SubResource( 9 )