From d37910a3799c9e2a43f5d26f4f7169ef1a0d5116 Mon Sep 17 00:00:00 2001 From: John Cooper McDonald Date: Sun, 19 Oct 2025 03:53:26 -0500 Subject: [PATCH 1/2] Don't give points for the powerup from a checkpoint (#628) --- Scripts/Classes/Entities/Player.gd | 9 +++++---- Scripts/Parts/Checkpoint.gd | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/Scripts/Classes/Entities/Player.gd b/Scripts/Classes/Entities/Player.gd index dc717ad..bec9302 100644 --- a/Scripts/Classes/Entities/Player.gd +++ b/Scripts/Classes/Entities/Player.gd @@ -698,12 +698,13 @@ func set_power_state_frame() -> void: can_bump_fly = %Sprite.sprite_frames.has_animation("FlyBump") can_kick_anim = %Sprite.sprite_frames.has_animation("Kick") -func get_power_up(power_name := "") -> void: +func get_power_up(power_name := "", give_points := true) -> void: if is_dead: return - Global.score += 1000 - DiscoLevel.combo_amount += 1 - score_note_spawner.spawn_note(1000) + if give_points: + Global.score += 1000 + DiscoLevel.combo_amount += 1 + score_note_spawner.spawn_note(1000) AudioManager.play_sfx("power_up", global_position) if Settings.file.difficulty.damage_style == 0 and power_state.state_name != power_name: if power_name != "Big" and power_state.state_name != "Big": diff --git a/Scripts/Parts/Checkpoint.gd b/Scripts/Parts/Checkpoint.gd index 1c2914f..589d247 100644 --- a/Scripts/Parts/Checkpoint.gd +++ b/Scripts/Parts/Checkpoint.gd @@ -62,7 +62,7 @@ func on_area_entered(area: Area2D) -> void: sublevel_id = Global.level_editor.sub_level_id if Settings.file.difficulty.checkpoint_style == 2 and has_meta("is_flag"): if player.power_state.state_name == "Small": - player.get_power_up("Big") + player.get_power_up("Big", false) respawn_position = global_position crossed.emit(area.owner) From 2d0c34ce6956fc23bec5c6aaac50e9eae6cb3b8b Mon Sep 17 00:00:00 2001 From: John Cooper McDonald Date: Sun, 19 Oct 2025 12:16:34 -0500 Subject: [PATCH 2/2] Fix Lakitu and deco not spawning in Challenge 8-2 (#629) --- Scenes/Levels/SMB1/World2/2-1.tscn | 2 +- Scenes/Levels/SMB1/World3/3-2.tscn | 3 +-- Scenes/Levels/SMB1/World4/4-1.tscn | 2 +- Scenes/Levels/SMB1/World7/7-3.tscn | 2 +- Scenes/Levels/SMB1/World8/8-2.tscn | 2 +- 5 files changed, 5 insertions(+), 6 deletions(-) diff --git a/Scenes/Levels/SMB1/World2/2-1.tscn b/Scenes/Levels/SMB1/World2/2-1.tscn index 964aaea..f617948 100644 --- a/Scenes/Levels/SMB1/World2/2-1.tscn +++ b/Scenes/Levels/SMB1/World2/2-1.tscn @@ -238,7 +238,7 @@ metadata/_custom_type_script = "uid://pfwgmuchergf" [node name="ChallengeNodes" type="Node" parent="." node_paths=PackedStringArray("nodes_to_delete")] script = ExtResource("27_nvjju") -nodes_to_delete = [NodePath("../Blocks/QuestionBlock2"), null, NodePath("../Blocks/BrickBlock7")] +nodes_to_delete = [NodePath("../Blocks/QuestionBlock2"), NodePath("../Blocks/BrickBlock7")] metadata/_custom_type_script = "uid://cgm3opb5qudc1" [node name="RedCoin" parent="ChallengeNodes" instance=ExtResource("28_t63mw")] diff --git a/Scenes/Levels/SMB1/World3/3-2.tscn b/Scenes/Levels/SMB1/World3/3-2.tscn index 9609a66..dce9f77 100644 --- a/Scenes/Levels/SMB1/World3/3-2.tscn +++ b/Scenes/Levels/SMB1/World3/3-2.tscn @@ -164,9 +164,8 @@ position = Vector2(3192, 0) [node name="Checkpoint" parent="." instance=ExtResource("20_xv2tb")] position = Vector2(1328, 0) -[node name="ChallengeNodes" type="Node" parent="." node_paths=PackedStringArray("nodes_to_delete")] +[node name="ChallengeNodes" type="Node" parent="."] script = ExtResource("21_8rqg6") -nodes_to_delete = [null] metadata/_custom_type_script = "uid://cgm3opb5qudc1" [node name="RedCoin" parent="ChallengeNodes" instance=ExtResource("22_cxldk")] diff --git a/Scenes/Levels/SMB1/World4/4-1.tscn b/Scenes/Levels/SMB1/World4/4-1.tscn index 29bfc19..ce13541 100644 --- a/Scenes/Levels/SMB1/World4/4-1.tscn +++ b/Scenes/Levels/SMB1/World4/4-1.tscn @@ -112,7 +112,7 @@ tile_map_data = PackedByteArray("AAD7////AAAAAAAAAAD8////AAABAAAAAAD+////AAABAAA [node name="ChallengeNodes" type="Node" parent="." node_paths=PackedStringArray("nodes_to_delete")] script = ExtResource("21_f001g") -nodes_to_delete = [NodePath("../Blocks/QuestionBlock3"), NodePath("../Coin"), null, NodePath("../Blocks/QuestionBlock4")] +nodes_to_delete = [NodePath("../Blocks/QuestionBlock3"), NodePath("../Coin"), NodePath("../Blocks/QuestionBlock4")] metadata/_custom_type_script = "uid://cgm3opb5qudc1" [node name="QuestionBlock" parent="ChallengeNodes" instance=ExtResource("9_vtupl")] diff --git a/Scenes/Levels/SMB1/World7/7-3.tscn b/Scenes/Levels/SMB1/World7/7-3.tscn index d729705..cb3fde4 100644 --- a/Scenes/Levels/SMB1/World7/7-3.tscn +++ b/Scenes/Levels/SMB1/World7/7-3.tscn @@ -1054,7 +1054,7 @@ position = Vector2(2976, -96) [node name="InvisibleQuestionBlock" parent="ChallengeNodes" index="5"] position = Vector2(504, -104) -[node name="InvisibleQuestionBlock2" parent="ChallengeNodes" index="6" instance=ExtResource("3_dfskb")] +[node name="InvisibleQuestionBlock3" parent="ChallengeNodes" index="6" instance=ExtResource("3_dfskb")] position = Vector2(1176, -104) [node name="Enemies" type="Node" parent="." index="13"] diff --git a/Scenes/Levels/SMB1/World8/8-2.tscn b/Scenes/Levels/SMB1/World8/8-2.tscn index b4531c9..04f1185 100644 --- a/Scenes/Levels/SMB1/World8/8-2.tscn +++ b/Scenes/Levels/SMB1/World8/8-2.tscn @@ -185,7 +185,7 @@ optional = true [node name="ChallengeNodes" type="Node" parent="." node_paths=PackedStringArray("nodes_to_delete")] script = ExtResource("20_8cbri") -nodes_to_delete = [NodePath("../Enemies/Lakitu"), NodePath("../DecoTiles"), NodePath("../Blocks")] +nodes_to_delete = [NodePath("../Blocks")] force_on = true metadata/_custom_type_script = "uid://cgm3opb5qudc1"