54 lines
1.9 KiB
GDScript
54 lines
1.9 KiB
GDScript
extends SceneTree
|
|
|
|
const FishingSpotScene := preload("res://fishing/fishing_spot.tscn")
|
|
|
|
|
|
func _initialize() -> void:
|
|
call_deferred("_run")
|
|
|
|
|
|
func _run() -> void:
|
|
var fishing_spot := FishingSpotScene.instantiate() as FishingSpot
|
|
root.add_child(fishing_spot)
|
|
await process_frame
|
|
|
|
var fight_audio := fishing_spot.get_node("%FightAudio") as AudioStreamPlayer
|
|
var bobber_audio := fishing_spot.get_node(
|
|
"%BobberAudio"
|
|
) as AudioStreamPlayer
|
|
assert(bobber_audio != null)
|
|
assert(bobber_audio.stream != null)
|
|
assert(bobber_audio.bus == &"SFX")
|
|
assert(is_equal_approx(bobber_audio.volume_db, -14.0))
|
|
var bobber_stream := bobber_audio.stream as AudioStreamWAV
|
|
assert(bobber_stream != null)
|
|
assert(bobber_stream.loop_mode == AudioStreamWAV.LOOP_DISABLED)
|
|
assert(fight_audio != null)
|
|
assert(fight_audio.stream != null)
|
|
assert(fight_audio.bus == &"SFX")
|
|
assert(is_equal_approx(fight_audio.volume_db, -10.0))
|
|
var fight_stream := fight_audio.stream as AudioStreamWAV
|
|
assert(fight_stream != null)
|
|
assert(fight_stream.loop_mode == AudioStreamWAV.LOOP_FORWARD)
|
|
assert(fight_stream.loop_end > fight_stream.loop_begin)
|
|
var reeling_audio := fishing_spot.get_node(
|
|
"%ReelingAudio"
|
|
) as AudioStreamPlayer
|
|
assert(reeling_audio != null)
|
|
assert(reeling_audio.stream != null)
|
|
assert(reeling_audio.bus == &"SFX")
|
|
assert(is_equal_approx(reeling_audio.volume_db, -10.0))
|
|
var reeling_stream := reeling_audio.stream as AudioStreamWAV
|
|
assert(reeling_stream != null)
|
|
assert(reeling_stream.loop_mode == AudioStreamWAV.LOOP_FORWARD)
|
|
assert(reeling_stream.loop_end > reeling_stream.loop_begin)
|
|
|
|
assert(fishing_spot.has_method("_start_fight_audio"))
|
|
assert(fishing_spot.has_method("_play_bobber_audio"))
|
|
assert(fishing_spot.has_method("_stop_fight_audio"))
|
|
assert(fishing_spot.has_method("_start_reeling_audio"))
|
|
assert(fishing_spot.has_method("_stop_reeling_audio"))
|
|
fishing_spot.free()
|
|
await process_frame
|
|
print("Fishing audio validation: PASS")
|
|
quit()
|