1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-29 00:41:38 +02:00

- Fixed mantis #1422 (starting another scenario crashes VCMI for now)

- Refactoring
This commit is contained in:
beegee1
2013-12-16 18:39:56 +00:00
parent 7d7e65a316
commit b9b25ef552
8 changed files with 312 additions and 256 deletions

View File

@ -807,7 +807,7 @@ void CGameState::init(StartInfo * si)
{
continue;
}
auto bb = new Bonus(Bonus::PERMANENT, Bonus::PRIMARY_SKILL, Bonus::CAMPAIGN_BONUS, val, scenarioOps->campState->currentMap, g);
auto bb = new Bonus(Bonus::PERMANENT, Bonus::PRIMARY_SKILL, Bonus::CAMPAIGN_BONUS, val, *scenarioOps->campState->currentMap, g);
hero->addNewBonus(bb);
}
}
@ -886,9 +886,9 @@ void CGameState::init(StartInfo * si)
{
logGlobal->infoStream() << "Open campaign map file: " << scenarioOps->campState->currentMap;
auto campaign = scenarioOps->campState;
assert(vstd::contains(campaign->camp->mapPieces, scenarioOps->campState->currentMap));
assert(vstd::contains(campaign->camp->mapPieces, *scenarioOps->campState->currentMap));
std::string & mapContent = campaign->camp->mapPieces[scenarioOps->campState->currentMap];
std::string & mapContent = campaign->camp->mapPieces[*scenarioOps->campState->currentMap];
auto buffer = reinterpret_cast<const ui8 *>(mapContent.data());
map = CMapService::loadMap(buffer, mapContent.size()).release();
}