diff --git a/lib/callback/EditorCallback.cpp b/lib/callback/EditorCallback.cpp index 2f3d15074..d7029ca42 100644 --- a/lib/callback/EditorCallback.cpp +++ b/lib/callback/EditorCallback.cpp @@ -52,9 +52,9 @@ int EditorCallback::getDate(Date mode) const THROW_EDITOR_UNSUPPORTED; } -const TerrainTile * EditorCallback::getTile(int3, bool) const +const TerrainTile * EditorCallback::getTile(int3 tile, bool) const { - THROW_EDITOR_UNSUPPORTED; + return &map->getTile(tile); } const TerrainTile * EditorCallback::getTileUnchecked(int3) const diff --git a/lib/gameState/CGameState.cpp b/lib/gameState/CGameState.cpp index 2c1d94737..b264dc90a 100644 --- a/lib/gameState/CGameState.cpp +++ b/lib/gameState/CGameState.cpp @@ -607,6 +607,7 @@ void CGameState::initHeroes(IGameRandomizer & gameRandomizer) continue; } hero->initHero(gameRandomizer); + hero->armyChanged(); } // generate boats for all heroes on water diff --git a/lib/mapObjects/army/CCreatureSet.cpp b/lib/mapObjects/army/CCreatureSet.cpp index bf3c49f0a..06f8b9f54 100644 --- a/lib/mapObjects/army/CCreatureSet.cpp +++ b/lib/mapObjects/army/CCreatureSet.cpp @@ -661,7 +661,9 @@ void CCreatureSet::serializeJson(JsonSerializeFormat & handler, const std::strin { auto newStack = std::make_unique(getArmy()->cb); newStack->serializeJson(handler); - putStack(SlotID(static_cast(idx)), std::move(newStack)); + SlotID slot(static_cast(idx)); + stacks[slot] = std::move(newStack); + stacks[slot]->setArmy(getArmy()); } } }