add Outrun Radio, with "Outrun" BGM by Andrew Vice

This commit is contained in:
yuni 2024-11-17 03:43:16 +01:00
parent 0f33b6e88e
commit eceb4b329e
5 changed files with 25 additions and 1 deletions

View file

@ -5,6 +5,7 @@
- Implement fast travel (must be unlocked by getting phone number of FASTravel) - Implement fast travel (must be unlocked by getting phone number of FASTravel)
- Implement factory reset - Implement factory reset
- Chats don't automatically advance now, the player has to press "Continue" - Chats don't automatically advance now, the player has to press "Continue"
- Add Outrun Radio, featuring "Outrun" BGM by Andrew Vice
- Add sparkles to Jupiter's ring ✨😍✨ best visible from Farview Station - Add sparkles to Jupiter's ring ✨😍✨ best visible from Farview Station
- Add auroras to Jupiter and Saturn - Add auroras to Jupiter and Saturn
- Add setting to change pointer - Add setting to change pointer

View file

@ -69,6 +69,7 @@
- powerdown.ogg: [Energy Drain by qubodup, CC0](https://freesound.org/people/qubodup/sounds/742835/) - powerdown.ogg: [Energy Drain by qubodup, CC0](https://freesound.org/people/qubodup/sounds/742835/)
- spark.ogg: [Socket Connect Disconnect by JustHallowed, CC BY 4.0](https://freesound.org/people/JustHallowed/sounds/691007/), Tempo -40, Amplify 4 - spark.ogg: [Socket Connect Disconnect by JustHallowed, CC BY 4.0](https://freesound.org/people/JustHallowed/sounds/691007/), Tempo -40, Amplify 4
- Takeoff.ogg: [By Serat, CC BY 4.0](https://freemusicarchive.org/music/serat/route-remastered/takeoff-remastered/) - Takeoff.ogg: [By Serat, CC BY 4.0](https://freemusicarchive.org/music/serat/route-remastered/takeoff-remastered/)
- Outrun.ogg: [by Andrew Vice, CC BY-SA 3.0](https://soundcloud.com/ncmfyt/andrew-vice-outrun)
- JupiterRecording.ogg: An [actual Jupiter recording by NASA](https://archive.org/download/voyager-1-and-2-1990-jupiter-nasa-voyager-space-sounds-electronic), public domain. - JupiterRecording.ogg: An [actual Jupiter recording by NASA](https://archive.org/download/voyager-1-and-2-1990-jupiter-nasa-voyager-space-sounds-electronic), public domain.
- Processed by cutting out min 1:47-3:47 and applying a 10s linear crossfade at the end. Exported as ogg with quality=3, see [.kdenlive file](src/audio/JupiterRecording.kdenlive). - Processed by cutting out min 1:47-3:47 and applying a 10s linear crossfade at the end. Exported as ogg with quality=3, see [.kdenlive file](src/audio/JupiterRecording.kdenlive).
- The source file has been taken down, and generally, I can't find information on how exactly this was produced. Hoping it's not a hoax. - The source file has been taken down, and generally, I can't find information on how exactly this was produced. Hoping it's not a hoax.

BIN
assets/music/Outrun.ogg Normal file

Binary file not shown.

View file

@ -53,6 +53,11 @@ const PATHS: &[(SfxType, Sfx, &str)] = &[
Sfx::BGMActualJupiterRecording, Sfx::BGMActualJupiterRecording,
"music/JupiterRecording.ogg", "music/JupiterRecording.ogg",
), ),
(
SfxType::Radio,
Sfx::BGMOutrun,
"music/Outrun.ogg",
),
( (
SfxType::LoopSfx, SfxType::LoopSfx,
Sfx::ElectricMotor, Sfx::ElectricMotor,
@ -88,11 +93,16 @@ const PATHS: &[(SfxType, Sfx, &str)] = &[
(SfxType::OneOff, Sfx::Zoom, "sounds/zoom.ogg"), (SfxType::OneOff, Sfx::Zoom, "sounds/zoom.ogg"),
]; ];
const RADIO_VOLUMES: &[(Sfx, f32)] = &[
(Sfx::BGMOutrun, 0.3)
];
#[derive(Component, PartialEq, Hash, Eq, Copy, Clone)] #[derive(Component, PartialEq, Hash, Eq, Copy, Clone)]
pub enum Sfx { pub enum Sfx {
Achieve, Achieve,
BGMActualJupiterRecording, BGMActualJupiterRecording,
BGMTakeoff, BGMTakeoff,
BGMOutrun,
Cat, Cat,
Click, Click,
Click3, Click3,
@ -176,6 +186,15 @@ pub fn setup(
ew_respawnsinks.send(RespawnSinksEvent); ew_respawnsinks.send(RespawnSinksEvent);
} }
fn get_radio_volume(radio: &Sfx) -> f32 {
for (sfx, volume) in RADIO_VOLUMES {
if radio == sfx {
return *volume;
}
}
return 1.0;
}
pub fn respawn_sinks( pub fn respawn_sinks(
mut commands: Commands, mut commands: Commands,
asset_server: Res<AssetServer>, asset_server: Res<AssetServer>,
@ -196,6 +215,7 @@ pub fn respawn_sinks(
settings: PlaybackSettings { settings: PlaybackSettings {
mode: PlaybackMode::Loop, mode: PlaybackMode::Loop,
paused: !settings.is_radio_playing(*sfx).unwrap_or(true), paused: !settings.is_radio_playing(*sfx).unwrap_or(true),
volume: Volume::new(get_radio_volume(sfx)),
..default() ..default()
}, },
}, },

View file

@ -188,6 +188,7 @@ impl Default for Settings {
// see also: settings.is_radio_playing() // see also: settings.is_radio_playing()
"Off".to_string(), "Off".to_string(),
"Space Wave Radio".to_string(), "Space Wave Radio".to_string(),
"Outrun Radio".to_string(),
"Amplify outside recordings".to_string(), "Amplify outside recordings".to_string(),
], ],
volume_sfx: 1.0, volume_sfx: 1.0,
@ -351,7 +352,8 @@ impl Settings {
let radio = self.radio_mode; let radio = self.radio_mode;
match sfx { match sfx {
audio::Sfx::BGMTakeoff => Some(radio == 1), audio::Sfx::BGMTakeoff => Some(radio == 1),
audio::Sfx::BGMActualJupiterRecording => Some(radio == 2), audio::Sfx::BGMOutrun => Some(radio == 2),
audio::Sfx::BGMActualJupiterRecording => Some(radio == 3),
_ => None, _ => None,
} }
} }