add BlockMaterial.hitSound

This commit is contained in:
MihailRis 2025-02-18 18:50:50 +03:00
parent 17e4776f95
commit ce9853d813
4 changed files with 11 additions and 4 deletions

View File

@ -226,6 +226,7 @@ void AssetsLoader::addDefaults(AssetsLoader& loader, const Content* content) {
loader.tryAddSound(material.stepsSound);
loader.tryAddSound(material.placeSound);
loader.tryAddSound(material.breakSound);
loader.tryAddSound(material.hitSound);
}
for (auto& entry : content->getPacks()) {

View File

@ -573,6 +573,10 @@ void ContentLoader::loadBlockMaterial(
root.at("steps-sound").get(def.stepsSound);
root.at("place-sound").get(def.placeSound);
root.at("break-sound").get(def.breakSound);
root.at("hit-sound").get(def.hitSound);
if (def.hitSound.empty()) {
def.hitSound = def.stepsSound;
}
}
void ContentLoader::loadContent(const dv::value& root) {

View File

@ -13,7 +13,8 @@ dv::value BlockMaterial::serialize() const {
{"name", name},
{"stepsSound", stepsSound},
{"placeSound", placeSound},
{"breakSound", breakSound}
{"breakSound", breakSound},
{"hitSound", hitSound}
});
}

View File

@ -109,9 +109,10 @@ using BoxModel = AABB;
/// @brief Common kit of block properties applied to groups of blocks
struct BlockMaterial {
std::string name;
std::string stepsSound {""};
std::string placeSound {""};
std::string breakSound {""};
std::string stepsSound;
std::string placeSound;
std::string breakSound;
std::string hitSound;
dv::value serialize() const;
};