Change 1-up flagpole to replace the 5000 point bonus (#550)

* Change 1-up flagpole to replace the 5000 point bonus

* Also no 1-ups in you vs boo

* Update EndFlagpole.gd

* Style

* Update EndFlagpole.tscn
This commit is contained in:
John Cooper McDonald
2025-10-18 08:42:51 -05:00
committed by GitHub
parent 1a0173f095
commit 568d45ee31
6 changed files with 18 additions and 35 deletions

View File

@@ -18,10 +18,10 @@ func on_area_entered(area: Area2D) -> void:
func give_life(_player: Player) -> void:
DiscoLevel.combo_amount += 1
AudioManager.play_sfx("1_up", global_position)
if Global.current_game_mode == Global.GameMode.CHALLENGE or Settings.file.difficulty.inf_lives:
if [Global.GameMode.CHALLENGE, Global.GameMode.BOO_RACE].has(Global.current_game_mode) or Settings.file.difficulty.inf_lives:
Global.score += 2000
$ScoreNoteSpawner.spawn_note(2000)
else:
$ScoreNoteSpawner.spawn_one_up_note()
Global.lives += 1
$ScoreNoteSpawner.spawn_one_up_note()
queue_free()

View File

@@ -445,7 +445,7 @@ func enemy_bounce_off(add_combo := true, award_score := true) -> void:
func add_stomp_combo(award_score := true) -> void:
if stomp_combo >= 10:
if award_score:
if Global.current_game_mode == Global.GameMode.CHALLENGE or Settings.file.difficulty.inf_lives:
if [Global.GameMode.CHALLENGE, Global.GameMode.BOO_RACE].has(Global.current_gamemode) or Settings.file.difficulty.inf_lives:
Global.score += 10000
score_note_spawner.spawn_note(10000)
else:

View File

@@ -67,7 +67,7 @@ func on_player_hit(hit_player: Player) -> void:
func award_score(award_level: int) -> void:
if award_level >= 10:
if Global.current_game_mode == Global.GameMode.CHALLENGE or Settings.file.difficulty.inf_lives:
if [Global.GameMode.CHALLENGE, Global.GameMode.BOO_RACE].has(Global.current_game_mode) or Settings.file.difficulty.inf_lives:
$ScoreNoteSpawner.spawn_note(10000)
else:
AudioManager.play_global_sfx("1_up")

View File

@@ -85,9 +85,13 @@ func do_lost_levels_firework_check() -> void:
else:
await show_fireworks(3)
if Global.coins % 11 == 0:
spawn_one_up_note()
AudioManager.play_sfx("1_up", global_position)
Global.lives += 1
if [Global.GameMode.CHALLENGE, Global.GameMode.BOO_RACE].has(Global.current_game_mode) or Settings.file.difficulty.inf_lives:
Global.score += 2000
$ScoreNoteSpawner.spawn_note(2000)
else:
Global.lives += 1
spawn_one_up_note()
const ONE_UP_NOTE = preload("uid://dopxwjj37gu0l")

View File

@@ -6,17 +6,10 @@ signal player_reached
signal sequence_begin
func _ready() -> void:
if Settings.file.difficulty.flagpole_lives == 0:
print(Settings.file.difficulty)
$Top.queue_free()
func on_area_entered(area: Area2D) -> void:
if area.owner is Player:
player_touch(area.owner)
func player_touch(player: Player) -> void:
player_reached.emit()
if Global.current_game_mode == Global.GameMode.MARATHON_PRACTICE:
@@ -50,10 +43,10 @@ func give_points(player: Player) -> void:
var value = clamp(int(lerp(0, 4, (player.global_position.y / -144))), 0, 4)
var nearest_value = FLAG_POINTS[value]
$Score.text = str(nearest_value)
Global.score += nearest_value
$Score/Animation2.play("ScoreRise")
func on_player_entered(player: Player) -> void:
player_touch(player)
Global.lives += 1
AudioManager.play_sfx("1_up", global_position)
if nearest_value == 5000 and Settings.file.difficulty.flagpole_lives and not [Global.GameMode.CHALLENGE, Global.GameMode.BOO_RACE].has(Global.current_game_mode) and not Settings.file.difficulty.inf_lives:
AudioManager.play_sfx("1_up", global_position)
Global.lives += 1
$ScoreNoteSpawner.spawn_one_up_note()
else:
Global.score += nearest_value
$Score/Animation2.play("ScoreRise")