1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-27 22:49:25 +02:00

Stability & regression fixes

This commit is contained in:
Ivan Savenko
2025-04-16 12:02:13 +03:00
parent f025a3a932
commit 77845f74bc
3 changed files with 8 additions and 5 deletions

View File

@@ -1217,16 +1217,17 @@ void RemoveObject::applyGs(CGameState *gs)
beatenHero->setVisitedTown(nullptr, false);
}
//return hero to the pool, so he may reappear in tavern
//return hero to the pool, so he may reappear in tavern
gs->heroesPool->addHeroToPool(beatenHero->getHeroTypeID());
gs->getMap().addToHeroPool(beatenHero);
//If hero on Boat is removed, the Boat disappears
if(beatenHero->inBoat())
{
beatenHero->detachFrom(*beatenHero->getBoat());
gs->getMap().eraseObject(beatenHero->getBoat()->id);
auto boat = beatenHero->getBoat();
beatenHero->setBoat(nullptr);
gs->getMap().eraseObject(boat->id);
}
return;
}
@@ -1242,7 +1243,6 @@ void RemoveObject::applyGs(CGameState *gs)
}
}
gs->getMap().eraseObject(objectID);
gs->getMap().calculateGuardingGreaturePositions();//FIXME: excessive, update only affected tiles
}