mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Merge branch 'DaforLynx/louder-rivers' into 'master'
Loud rivers See merge request veloren/veloren!3254
This commit is contained in:
commit
8072c9db3b
@ -53,7 +53,7 @@
|
||||
],
|
||||
threshold: 15.0,
|
||||
),
|
||||
RunningWater: (
|
||||
RunningWaterSlow: (
|
||||
files: [
|
||||
"voxygen.audio.sfx.ambient.river_sounds.running_water-001",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.running_water-002",
|
||||
@ -85,6 +85,35 @@
|
||||
],
|
||||
threshold: 7.0,
|
||||
),
|
||||
RunningWaterFast: (
|
||||
files: [
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-001",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-002",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-003",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-004",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-005",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-006",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-007",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-008",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-009",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-010",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-011",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-012",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-013",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-014",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-015",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-016",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-017",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-018",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-019",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-020",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-021",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-022",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-023",
|
||||
"voxygen.audio.sfx.ambient.river_sounds.fast_water-024",
|
||||
],
|
||||
threshold: 5.0,
|
||||
),
|
||||
//
|
||||
// Character States
|
||||
//
|
||||
|
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-001.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-001.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-002.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-002.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-003.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-003.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-004.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-004.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-005.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-005.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-006.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-006.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-007.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-007.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-008.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-008.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-009.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-009.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-010.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-010.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-011.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-011.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-012.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-012.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-013.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-013.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-014.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-014.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-015.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-015.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-016.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-016.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-017.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-017.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-018.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-018.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-019.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-019.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-020.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-020.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-021.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-021.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-022.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-022.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-023.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-023.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-024.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/river_sounds/fast_water-024.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -86,6 +86,7 @@ pub struct TerrainChunkMeta {
|
||||
tree_density: f32,
|
||||
contains_cave: bool,
|
||||
contains_river: bool,
|
||||
river_velocity: Vec3<f32>,
|
||||
temp: f32,
|
||||
contains_settlement: bool,
|
||||
contains_dungeon: bool,
|
||||
@ -99,6 +100,7 @@ impl TerrainChunkMeta {
|
||||
tree_density: f32,
|
||||
contains_cave: bool,
|
||||
contains_river: bool,
|
||||
river_velocity: Vec3<f32>,
|
||||
temp: f32,
|
||||
contains_settlement: bool,
|
||||
contains_dungeon: bool,
|
||||
@ -110,6 +112,7 @@ impl TerrainChunkMeta {
|
||||
tree_density,
|
||||
contains_cave,
|
||||
contains_river,
|
||||
river_velocity,
|
||||
temp,
|
||||
contains_settlement,
|
||||
contains_dungeon,
|
||||
@ -124,6 +127,7 @@ impl TerrainChunkMeta {
|
||||
tree_density: 0.0,
|
||||
contains_cave: false,
|
||||
contains_river: false,
|
||||
river_velocity: Vec3::zero(),
|
||||
temp: 0.0,
|
||||
contains_settlement: false,
|
||||
contains_dungeon: false,
|
||||
@ -142,6 +146,8 @@ impl TerrainChunkMeta {
|
||||
|
||||
pub fn contains_river(&self) -> bool { self.contains_river }
|
||||
|
||||
pub fn river_velocity(&self) -> Vec3<f32> { self.river_velocity }
|
||||
|
||||
pub fn contains_settlement(&self) -> bool { self.contains_settlement }
|
||||
|
||||
pub fn contains_dungeon(&self) -> bool { self.contains_dungeon }
|
||||
|
@ -98,12 +98,19 @@ impl EventMapper for BlockEventMapper {
|
||||
cond: |st| st.get_day_period().is_dark(),
|
||||
},
|
||||
BlockSounds {
|
||||
blocks: |boi| &boi.river,
|
||||
blocks: |boi| &boi.slow_river,
|
||||
range: 1,
|
||||
sfx: SfxEvent::RunningWater,
|
||||
sfx: SfxEvent::RunningWaterSlow,
|
||||
volume: 1.5,
|
||||
cond: |_| true,
|
||||
},
|
||||
BlockSounds {
|
||||
blocks: |boi| &boi.fast_river,
|
||||
range: 1,
|
||||
sfx: SfxEvent::RunningWaterFast,
|
||||
volume: 2.5,
|
||||
cond: |_| true,
|
||||
},
|
||||
//BlockSounds {
|
||||
// blocks: |boi| &boi.embers,
|
||||
// range: 1,
|
||||
@ -188,7 +195,9 @@ impl EventMapper for BlockEventMapper {
|
||||
Vec3::from(chunk_pos * TerrainChunk::RECT_SIZE.map(|e| e as i32));
|
||||
|
||||
// Replace all RunningWater blocks with just one random one per tick
|
||||
let blocks = if sounds.sfx == SfxEvent::RunningWater {
|
||||
let blocks = if sounds.sfx == SfxEvent::RunningWaterSlow
|
||||
|| sounds.sfx == SfxEvent::RunningWaterFast
|
||||
{
|
||||
blocks
|
||||
.choose(&mut thread_rng())
|
||||
.map(std::slice::from_ref)
|
||||
@ -205,7 +214,8 @@ impl EventMapper for BlockEventMapper {
|
||||
if ((sounds.sfx == SfxEvent::Birdcall || sounds.sfx == SfxEvent::Owl)
|
||||
&& thread_rng().gen_bool(0.999))
|
||||
|| (sounds.sfx == SfxEvent::Frog && thread_rng().gen_bool(0.75))
|
||||
|| (sounds.sfx == SfxEvent::RunningWater && thread_rng().gen_bool(0.5))
|
||||
|| (sounds.sfx == SfxEvent::RunningWaterSlow
|
||||
&& thread_rng().gen_bool(0.5))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
@ -150,7 +150,8 @@ pub enum SfxEvent {
|
||||
Cricket3,
|
||||
Frog,
|
||||
Bees,
|
||||
RunningWater,
|
||||
RunningWaterSlow,
|
||||
RunningWaterFast,
|
||||
Idle,
|
||||
Swim,
|
||||
Run(BlockKind),
|
||||
|
@ -17,7 +17,8 @@ pub struct BlocksOfInterest {
|
||||
pub leaves: Vec<Vec3<i32>>,
|
||||
pub drip: Vec<Vec3<i32>>,
|
||||
pub grass: Vec<Vec3<i32>>,
|
||||
pub river: Vec<Vec3<i32>>,
|
||||
pub slow_river: Vec<Vec3<i32>>,
|
||||
pub fast_river: Vec<Vec3<i32>>,
|
||||
pub fires: Vec<Vec3<i32>>,
|
||||
pub smokers: Vec<Vec3<i32>>,
|
||||
pub beehives: Vec<Vec3<i32>>,
|
||||
@ -43,7 +44,8 @@ impl BlocksOfInterest {
|
||||
let mut leaves = Vec::new();
|
||||
let mut drip = Vec::new();
|
||||
let mut grass = Vec::new();
|
||||
let mut river = Vec::new();
|
||||
let mut slow_river = Vec::new();
|
||||
let mut fast_river = Vec::new();
|
||||
let mut fires = Vec::new();
|
||||
let mut smokers = Vec::new();
|
||||
let mut beehives = Vec::new();
|
||||
@ -61,6 +63,8 @@ impl BlocksOfInterest {
|
||||
|
||||
let mut rng = ChaCha8Rng::from_seed(thread_rng().gen());
|
||||
|
||||
let river_speed_sq = chunk.meta().river_velocity().magnitude_squared();
|
||||
|
||||
chunk.iter_changed().for_each(|(pos, block)| {
|
||||
match block.kind() {
|
||||
BlockKind::Leaves if rng.gen_range(0..16) == 0 => leaves.push(pos),
|
||||
@ -76,7 +80,9 @@ impl BlocksOfInterest {
|
||||
_ => {},
|
||||
}
|
||||
},
|
||||
BlockKind::Water if chunk.meta().contains_river() => river.push(pos),
|
||||
// Assign a river speed to water blocks depending on river velocity
|
||||
BlockKind::Water if river_speed_sq > 0.9_f32.powi(2) => fast_river.push(pos),
|
||||
BlockKind::Water if river_speed_sq > 0.3_f32.powi(2) => slow_river.push(pos),
|
||||
BlockKind::Snow if rng.gen_range(0..16) == 0 => snow.push(pos),
|
||||
BlockKind::Lava if rng.gen_range(0..5) == 0 => fires.push(pos + Vec3::unit_z()),
|
||||
BlockKind::Snow | BlockKind::Ice if rng.gen_range(0..16) == 0 => snow.push(pos),
|
||||
@ -153,7 +159,8 @@ impl BlocksOfInterest {
|
||||
leaves,
|
||||
drip,
|
||||
grass,
|
||||
river,
|
||||
slow_river,
|
||||
fast_river,
|
||||
fires,
|
||||
smokers,
|
||||
beehives,
|
||||
|
@ -291,6 +291,7 @@ impl World {
|
||||
sim_chunk.tree_density,
|
||||
sim_chunk.cave.1.alt != 0.0,
|
||||
sim_chunk.river.is_river(),
|
||||
sim_chunk.river.velocity,
|
||||
sim_chunk.temp,
|
||||
sim_chunk
|
||||
.sites
|
||||
|
Loading…
Reference in New Issue
Block a user