mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
River water sfx
This commit is contained in:
parent
8f5a22671d
commit
09a1974974
@ -46,6 +46,12 @@
|
|||||||
],
|
],
|
||||||
threshold: 15.0,
|
threshold: 15.0,
|
||||||
),
|
),
|
||||||
|
RunningWater: (
|
||||||
|
files: [
|
||||||
|
"voxygen.audio.sfx.ambient.running_water_1",
|
||||||
|
],
|
||||||
|
threshold: 7.0,
|
||||||
|
),
|
||||||
//
|
//
|
||||||
// Character States
|
// Character States
|
||||||
//
|
//
|
||||||
|
BIN
assets/voxygen/audio/sfx/ambient/running_water_1.wav
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/ambient/running_water_1.wav
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -71,6 +71,7 @@ pub struct TerrainChunkMeta {
|
|||||||
//warp_factor: f32,
|
//warp_factor: f32,
|
||||||
surface_veg: f32,
|
surface_veg: f32,
|
||||||
cave_alt: f32,
|
cave_alt: f32,
|
||||||
|
contains_river: bool,
|
||||||
/*place: Option<Id<Place>>, */
|
/*place: Option<Id<Place>>, */
|
||||||
|
|
||||||
/*path: (Way, Path),*/
|
/*path: (Way, Path),*/
|
||||||
@ -89,6 +90,7 @@ impl TerrainChunkMeta {
|
|||||||
tree_density: f32,
|
tree_density: f32,
|
||||||
surface_veg: f32,
|
surface_veg: f32,
|
||||||
cave_alt: f32,
|
cave_alt: f32,
|
||||||
|
contains_river: bool,
|
||||||
) -> Self {
|
) -> Self {
|
||||||
Self {
|
Self {
|
||||||
name,
|
name,
|
||||||
@ -101,6 +103,7 @@ impl TerrainChunkMeta {
|
|||||||
tree_density,
|
tree_density,
|
||||||
surface_veg,
|
surface_veg,
|
||||||
cave_alt,
|
cave_alt,
|
||||||
|
contains_river,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -116,6 +119,7 @@ impl TerrainChunkMeta {
|
|||||||
tree_density: 0.0,
|
tree_density: 0.0,
|
||||||
surface_veg: 0.0,
|
surface_veg: 0.0,
|
||||||
cave_alt: 0.0,
|
cave_alt: 0.0,
|
||||||
|
contains_river: false,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -138,6 +142,8 @@ impl TerrainChunkMeta {
|
|||||||
pub fn surface_veg(&self) -> f32 { self.surface_veg }
|
pub fn surface_veg(&self) -> f32 { self.surface_veg }
|
||||||
|
|
||||||
pub fn cave_alt(&self) -> f32 { self.cave_alt }
|
pub fn cave_alt(&self) -> f32 { self.cave_alt }
|
||||||
|
|
||||||
|
pub fn contains_river(&self) -> bool { self.contains_river }
|
||||||
}
|
}
|
||||||
|
|
||||||
// Terrain type aliases
|
// Terrain type aliases
|
||||||
|
@ -86,6 +86,13 @@ impl EventMapper for BlockEventMapper {
|
|||||||
volume: 1.0,
|
volume: 1.0,
|
||||||
cond: |st| st.get_day_period().is_dark(),
|
cond: |st| st.get_day_period().is_dark(),
|
||||||
},
|
},
|
||||||
|
BlockSounds {
|
||||||
|
blocks: |boi| &boi.river,
|
||||||
|
range: 1,
|
||||||
|
sfx: SfxEvent::RunningWater,
|
||||||
|
volume: 1.0,
|
||||||
|
cond: |_| true,
|
||||||
|
},
|
||||||
//BlockSounds {
|
//BlockSounds {
|
||||||
// blocks: |boi| &boi.embers,
|
// blocks: |boi| &boi.embers,
|
||||||
// range: 1,
|
// range: 1,
|
||||||
|
@ -142,6 +142,7 @@ pub enum SfxEvent {
|
|||||||
Cricket,
|
Cricket,
|
||||||
Frog,
|
Frog,
|
||||||
Bees,
|
Bees,
|
||||||
|
RunningWater,
|
||||||
Idle,
|
Idle,
|
||||||
Swim,
|
Swim,
|
||||||
Run,
|
Run,
|
||||||
|
@ -9,7 +9,7 @@ use vek::*;
|
|||||||
pub struct BlocksOfInterest {
|
pub struct BlocksOfInterest {
|
||||||
pub leaves: Vec<Vec3<i32>>,
|
pub leaves: Vec<Vec3<i32>>,
|
||||||
pub grass: Vec<Vec3<i32>>,
|
pub grass: Vec<Vec3<i32>>,
|
||||||
pub water: Vec<Vec3<i32>>,
|
pub river: Vec<Vec3<i32>>,
|
||||||
pub embers: Vec<Vec3<i32>>,
|
pub embers: Vec<Vec3<i32>>,
|
||||||
pub beehives: Vec<Vec3<i32>>,
|
pub beehives: Vec<Vec3<i32>>,
|
||||||
pub reeds: Vec<Vec3<i32>>,
|
pub reeds: Vec<Vec3<i32>>,
|
||||||
@ -24,7 +24,7 @@ impl BlocksOfInterest {
|
|||||||
span!(_guard, "from_chunk", "BlocksOfInterest::from_chunk");
|
span!(_guard, "from_chunk", "BlocksOfInterest::from_chunk");
|
||||||
let mut leaves = Vec::new();
|
let mut leaves = Vec::new();
|
||||||
let mut grass = Vec::new();
|
let mut grass = Vec::new();
|
||||||
let mut water = Vec::new();
|
let mut river = Vec::new();
|
||||||
let mut embers = Vec::new();
|
let mut embers = Vec::new();
|
||||||
let mut beehives = Vec::new();
|
let mut beehives = Vec::new();
|
||||||
let mut reeds = Vec::new();
|
let mut reeds = Vec::new();
|
||||||
@ -53,8 +53,8 @@ impl BlocksOfInterest {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
BlockKind::Water => {
|
BlockKind::Water => {
|
||||||
if thread_rng().gen_range(0, 16) == 0 {
|
if chunk.meta().contains_river() && thread_rng().gen_range(0, 16) == 0 {
|
||||||
water.push(pos)
|
river.push(pos)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
_ => match block.get_sprite() {
|
_ => match block.get_sprite() {
|
||||||
@ -78,7 +78,7 @@ impl BlocksOfInterest {
|
|||||||
Self {
|
Self {
|
||||||
leaves,
|
leaves,
|
||||||
grass,
|
grass,
|
||||||
water,
|
river,
|
||||||
embers,
|
embers,
|
||||||
beehives,
|
beehives,
|
||||||
reeds,
|
reeds,
|
||||||
|
@ -166,6 +166,7 @@ impl World {
|
|||||||
sim_chunk.tree_density,
|
sim_chunk.tree_density,
|
||||||
sim_chunk.surface_veg,
|
sim_chunk.surface_veg,
|
||||||
sim_chunk.cave.1.alt,
|
sim_chunk.cave.1.alt,
|
||||||
|
sim_chunk.river.is_river(),
|
||||||
);
|
);
|
||||||
|
|
||||||
let mut chunk = TerrainChunk::new(base_z, stone, air, meta);
|
let mut chunk = TerrainChunk::new(base_z, stone, air, meta);
|
||||||
|
Loading…
Reference in New Issue
Block a user