From f40d09cb8f712e87691af4912f3630d92d692779 Mon Sep 17 00:00:00 2001 From: untodesu Date: Thu, 11 Dec 2025 15:14:26 +0500 Subject: Shuffle stuff around - Use the new and improved hierarchy I figured out when making Prospero chat - Re-add NSIS scripts, again from Prospero - Update most build and utility scripts with their most recent versions --- game/client/world/voxel_sounds.cc | 83 --------------------------------------- 1 file changed, 83 deletions(-) delete mode 100644 game/client/world/voxel_sounds.cc (limited to 'game/client/world/voxel_sounds.cc') diff --git a/game/client/world/voxel_sounds.cc b/game/client/world/voxel_sounds.cc deleted file mode 100644 index fe91f01..0000000 --- a/game/client/world/voxel_sounds.cc +++ /dev/null @@ -1,83 +0,0 @@ -#include "client/pch.hh" - -#include "client/world/voxel_sounds.hh" - -#include "client/resource/sound_effect.hh" - -static std::vector> footsteps_sounds[world::VMAT_COUNT]; -static std::mt19937_64 randomizer; - -static void add_footsteps_effect(world::VoxelMaterial material, std::string_view name) -{ - if(auto effect = resource::load(name)) { - footsteps_sounds[material].push_back(effect); - } -} - -static resource_ptr get_footsteps_effect(world::VoxelMaterial material) -{ - auto surface_index = static_cast(material); - - if(surface_index >= world::VMAT_COUNT) { - // Surface index out of range - return nullptr; - } - - const auto& sounds = footsteps_sounds[surface_index]; - - if(sounds.empty()) { - // No sounds for this surface - return nullptr; - } - - auto dist = std::uniform_int_distribution(0, sounds.size() - 1); - return sounds.at(dist(randomizer)); -} - -void world::voxel_sounds::init(void) -{ - add_footsteps_effect(VMAT_DEFAULT, "sounds/surface/default1.wav"); - add_footsteps_effect(VMAT_DEFAULT, "sounds/surface/default2.wav"); - add_footsteps_effect(VMAT_DEFAULT, "sounds/surface/default3.wav"); - add_footsteps_effect(VMAT_DEFAULT, "sounds/surface/default4.wav"); - - add_footsteps_effect(VMAT_DIRT, "sounds/surface/dirt1.wav"); - - add_footsteps_effect(VMAT_GRASS, "sounds/surface/grass1.wav"); - add_footsteps_effect(VMAT_GRASS, "sounds/surface/grass2.wav"); - add_footsteps_effect(VMAT_GRASS, "sounds/surface/grass3.wav"); - - add_footsteps_effect(VMAT_GRAVEL, "sounds/surface/gravel1.wav"); - - add_footsteps_effect(VMAT_SAND, "sounds/surface/sand1.wav"); - add_footsteps_effect(VMAT_SAND, "sounds/surface/sand2.wav"); - - add_footsteps_effect(VMAT_WOOD, "sounds/surface/wood1.wav"); - add_footsteps_effect(VMAT_WOOD, "sounds/surface/wood2.wav"); - add_footsteps_effect(VMAT_WOOD, "sounds/surface/wood3.wav"); -} - -void world::voxel_sounds::shutdown(void) -{ - for(std::size_t i = 0; i < world::VMAT_COUNT; ++i) { - footsteps_sounds[i].clear(); - } -} - -resource_ptr world::voxel_sounds::get_footsteps(world::VoxelMaterial material) -{ - if(auto effect = get_footsteps_effect(material)) { - return effect; - } - - if(auto effect = get_footsteps_effect(VMAT_DEFAULT)) { - return effect; - } - - return nullptr; -} - -resource_ptr world::voxel_sounds::get_placebreak(world::VoxelMaterial material) -{ - return nullptr; -} -- cgit