1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-08-13 19:54:17 +02:00

Merge pull request #2087 from IvanSavenko/beta_fixes

Last fixes for 1.2.1
This commit is contained in:
Ivan Savenko
2023-04-28 19:02:08 +03:00
committed by GitHub
3 changed files with 10 additions and 3 deletions

View File

@@ -8,6 +8,8 @@
* Fixed good morale happening after defeating last enemy unit * Fixed good morale happening after defeating last enemy unit
* Fixed death animation of Efreeti killed by petrification attack * Fixed death animation of Efreeti killed by petrification attack
* Fixed crash on leaving to main menu from battle in hotseat mode * Fixed crash on leaving to main menu from battle in hotseat mode
* Fixed music playback on switching between towns
* Special months (double growth and plague) will now appear correctly
* Adventure map spells are no longer visible on units in battle * Adventure map spells are no longer visible on units in battle
* Attempt to cast spell with no valid targets in hotseat will show appropriate error message * Attempt to cast spell with no valid targets in hotseat will show appropriate error message
* RMG settings will now show all existing in game templates and not just those suitable for current settings * RMG settings will now show all existing in game templates and not just those suitable for current settings
@@ -17,6 +19,7 @@
* Fixed blocked progress in Launcher on language detection failure * Fixed blocked progress in Launcher on language detection failure
* Launcher will now correctly handle selection of Ddata directory in H3 install * Launcher will now correctly handle selection of Ddata directory in H3 install
* Map editor will now correctly save message property for events and pandoras * Map editor will now correctly save message property for events and pandoras
* Fixed incorrect saving of heroes portraits in editor
# 1.1.1 -> 1.2.0 # 1.1.1 -> 1.2.0

View File

@@ -1206,13 +1206,17 @@ CCastleInterface::CCastleInterface(const CGTownInstance * Town, const CGTownInst
townlist->onSelect = std::bind(&CCastleInterface::townChange, this); townlist->onSelect = std::bind(&CCastleInterface::townChange, this);
recreateIcons(); recreateIcons();
adventureInt->onAudioPaused(); if (!from)
adventureInt->onAudioPaused();
CCS->musich->playMusic(town->town->clientInfo.musicTheme, true, false); CCS->musich->playMusic(town->town->clientInfo.musicTheme, true, false);
} }
CCastleInterface::~CCastleInterface() CCastleInterface::~CCastleInterface()
{ {
if (adventureInt) // may happen on exiting client with open castle interface // resume map audio if:
// adventureInt exists (may happen on exiting client with open castle interface)
// castleInt has not been replaced (happens on switching between towns inside castle interface)
if (adventureInt && LOCPLINT->castleInt == this)
adventureInt->onAudioResumed(); adventureInt->onAudioResumed();
if(LOCPLINT->castleInt == this) if(LOCPLINT->castleInt == this)
LOCPLINT->castleInt = nullptr; LOCPLINT->castleInt = nullptr;

View File

@@ -1812,7 +1812,7 @@ void CGameHandler::newTurn()
n.specialWeek = NewTurn::DEITYOFFIRE; n.specialWeek = NewTurn::DEITYOFFIRE;
n.creatureid = CreatureID::IMP; n.creatureid = CreatureID::IMP;
} }
else if(!VLC->settings()->getBoolean(EGameSettings::CREATURES_ALLOW_RANDOM_SPECIAL_WEEKS)) else if(VLC->settings()->getBoolean(EGameSettings::CREATURES_ALLOW_RANDOM_SPECIAL_WEEKS))
{ {
int monthType = getRandomGenerator().nextInt(99); int monthType = getRandomGenerator().nextInt(99);
if (newMonth) //new month if (newMonth) //new month