Adds boss sounds
This commit is contained in:
@@ -232,6 +232,7 @@ func _tick_assembly(_delta: float) -> void:
|
||||
|
||||
|
||||
func _spawn_wave() -> void:
|
||||
AudioManager.play("hivemind_pulse")
|
||||
var scenes := [DRIFTER_SCENE, REPEATER_SCENE, ANCHOR_SCENE]
|
||||
var hw := ROOM_HW - WALL_T - 80.0
|
||||
var hh := ROOM_HH - WALL_T - 80.0
|
||||
@@ -642,6 +643,7 @@ func _do_unique_attack() -> void:
|
||||
|
||||
|
||||
func _start_beam() -> void:
|
||||
AudioManager.play("hivemind_beam")
|
||||
# Start with telegraph phase
|
||||
_beam_telegraphing = true
|
||||
_telegraph_timer = BEAM_TELEGRAPH
|
||||
@@ -745,6 +747,7 @@ func _on_beam_hit(body: Node) -> void:
|
||||
|
||||
|
||||
func _attack_pulse() -> void:
|
||||
AudioManager.play("hivemind_knockback")
|
||||
if _player == null or not is_instance_valid(_player):
|
||||
return
|
||||
|
||||
@@ -903,6 +906,7 @@ func _tick_flash(delta: float) -> void:
|
||||
# Climax / Death
|
||||
# ---------------------------------------------------------------------------
|
||||
func _enter_climax() -> void:
|
||||
AudioManager.play("boss_death")
|
||||
_phase = Phase.CLIMAX
|
||||
_climax_timer = FREEZE_DURATION
|
||||
velocity = Vector2.ZERO
|
||||
|
||||
@@ -142,6 +142,7 @@ func _enter_transit() -> void:
|
||||
_transit_timer = TRANSIT_TIME
|
||||
|
||||
func _reappear() -> void:
|
||||
AudioManager.play("relay_teleport")
|
||||
# Pick random position within room bounds
|
||||
var min_x := _room_center.x - ROOM_HW + WALL_T + WALL_MARGIN
|
||||
var max_x := _room_center.x + ROOM_HW - WALL_T - WALL_MARGIN
|
||||
@@ -193,6 +194,7 @@ func _roll_drifter_threshold() -> void:
|
||||
# Burst Transmission
|
||||
# ---------------------------------------------------------------------------
|
||||
func _fire_burst() -> void:
|
||||
AudioManager.play("relay_burst")
|
||||
var count := BURST_COUNT_P2 if _phase == Phase.TWO else BURST_COUNT_P1
|
||||
var angle_step := TAU / float(count)
|
||||
|
||||
@@ -394,6 +396,7 @@ func _flash_damage() -> void:
|
||||
# Climax / Death
|
||||
# ---------------------------------------------------------------------------
|
||||
func _enter_climax() -> void:
|
||||
AudioManager.play("boss_death")
|
||||
_phase = Phase.CLIMAX
|
||||
_climax_timer = FREEZE_DURATION
|
||||
_blink_accum = 0.0
|
||||
|
||||
@@ -111,6 +111,7 @@ func _enter_phase_two() -> void:
|
||||
_sweep_cd_timer = SWEEP_CD_P2 * 0.6 # first P2 sweep sooner
|
||||
|
||||
func _enter_climax() -> void:
|
||||
AudioManager.play("boss_death")
|
||||
_phase = Phase.CLIMAX
|
||||
velocity = Vector2.ZERO
|
||||
_freeze_timer = FREEZE_DURATION
|
||||
@@ -165,6 +166,7 @@ func _tick_sweep(delta: float) -> void:
|
||||
|
||||
|
||||
func _fire_sweep_pass() -> void:
|
||||
AudioManager.play("warden_sweep")
|
||||
_passes_fired += 1
|
||||
_pass_delay_timer = PASS_DELAY
|
||||
|
||||
@@ -287,6 +289,7 @@ func _tick_mines(delta: float) -> void:
|
||||
|
||||
|
||||
func _spawn_mine(world_pos: Vector2) -> void:
|
||||
AudioManager.play("mine_arm")
|
||||
var mine := Node2D.new()
|
||||
|
||||
# AOE ring visual — shows blast radius when armed (hidden initially)
|
||||
@@ -316,6 +319,7 @@ func _spawn_mine(world_pos: Vector2) -> void:
|
||||
|
||||
|
||||
func _explode_mine(entry: Dictionary) -> void:
|
||||
AudioManager.play("mine_explode")
|
||||
var node: Node2D = entry["node"]
|
||||
if not is_instance_valid(node):
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user