1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-24 22:14:36 +02:00

Merge pull request #3588 from IvanSavenko/fix_regressions

Fix regressions
This commit is contained in:
Ivan Savenko 2024-02-01 22:27:52 +02:00 committed by GitHub
commit 58ee72f684
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 15 additions and 4 deletions

View File

@ -188,7 +188,12 @@ uint32_t CSoundHandler::getSoundDurationMilliseconds(const AudioPath & sound)
if (!initialized || sound.empty())
return 0;
auto data = CResourceHandler::get()->load(sound.addPrefix("SOUNDS/"))->readAll();
auto resourcePath = sound.addPrefix("SOUNDS/");
if (!CResourceHandler::get()->existsResource(resourcePath))
return 0;
auto data = CResourceHandler::get()->load(resourcePath)->readAll();
SDL_AudioSpec spec;
uint32_t audioLen;

View File

@ -325,6 +325,11 @@ void MetaString::serializeJson(JsonSerializeFormat & handler)
jsonDeserialize(handler.getCurrent());
}
void MetaString::appendName(const ArtifactID & id)
{
appendTextID(id.toEntity(VLC)->getNameTextID());
}
void MetaString::appendName(const SpellID & id)
{
appendTextID(id.toEntity(VLC)->getNameTextID());

View File

@ -75,6 +75,7 @@ public:
/// Appends specified number to resulting string
void appendNumber(int64_t value);
void appendName(const ArtifactID& id);
void appendName(const SpellID& id);
void appendName(const PlayerColor& id);
void appendName(const CreatureID & id, TQuantity count);

View File

@ -1276,7 +1276,7 @@ EDiggingStatus CGHeroInstance::diggingStatus() const
{
if(static_cast<int>(movement) < movementPointsLimit(true))
return EDiggingStatus::LACK_OF_MOVEMENT;
if(ArtifactID(ArtifactID::GRAIL).toArtifact()->canBePutAt(this))
if(!ArtifactID(ArtifactID::GRAIL).toArtifact()->canBePutAt(this))
return EDiggingStatus::BACKPACK_IS_FULL;
return cb->getTileDigStatus(visitablePos());
}

View File

@ -3707,8 +3707,8 @@ bool CGameHandler::dig(const CGHeroInstance *h)
{
ArtifactID grail = ArtifactID::GRAIL;
iw.text.appendLocalString(EMetaText::GENERAL_TXT, 58); //"Congratulations! After spending many hours digging here, your hero has uncovered the "
iw.text.replaceName(grail);
iw.text.appendLocalString(EMetaText::GENERAL_TXT, 58); //"Congratulations! After spending many hours digging here, your hero has uncovered the " ...
iw.text.appendName(grail); // ... " The Grail"
iw.soundID = soundBase::ULTIMATEARTIFACT;
giveHeroNewArtifact(h, grail.toArtifact(), ArtifactPosition::FIRST_AVAILABLE); //give grail
sendAndApply(&iw);