1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-24 08:32:34 +02:00

Good morale can no longer happen after battle is over

This commit is contained in:
Ivan Savenko 2023-04-20 13:10:03 +03:00
parent d9939f0918
commit 9882c37ce3
2 changed files with 6 additions and 3 deletions

View File

@ -3,6 +3,8 @@
### GENERAL:
* Fixed movement cost penalty from terrain
* Fixed empty Black Market on game start
* Fixed bad morale happening after waiting
* Fixed good morale happening after defeating last enemy unit
* RMG settings will now show all existing in game templates and not just those suitable for current settings
* RMG settings (map size and two-level maps) that are not compatible with current template will be blocked
* Fixed centering of scenario information window

View File

@ -6788,12 +6788,13 @@ void CGameHandler::runBattle()
{
//check for good morale
nextStackMorale = next->MoraleVal();
if(!next->hadMorale //only one extra move per turn possible
if( !battleResult.get()
&& !next->hadMorale
&& !next->defending
&& !next->waited()
&& !next->fear
&& next->alive()
&& nextStackMorale > 0)
&& next->alive()
&& nextStackMorale > 0)
{
auto diceSize = VLC->settings()->getVector(EGameSettings::COMBAT_GOOD_MORALE_DICE);
size_t diceIndex = std::min<size_t>(diceSize.size()-1, nextStackMorale);