1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-15 00:05:02 +02:00

Stabilization

This commit is contained in:
Ivan Savenko
2023-11-01 16:10:33 +02:00
parent 8346d71c98
commit b42f073f0c
6 changed files with 19 additions and 25 deletions

View File

@ -128,7 +128,7 @@ void CGDwelling::pickRandomObject(CRandomGenerator & rand)
FactionID faction = randomizeFaction(rand);
int level = randomizeLevel(rand);
assert(faction != FactionID::NONE && faction != FactionID::NEUTRAL);
assert(level >= 1 && level <= 7);
assert(level >= 0 && level <= 6);
randomizationInfo.reset();
CreatureID cid = (*VLC->townh)[faction]->town->creatures[level][0];
@ -163,6 +163,8 @@ void CGDwelling::pickRandomObject(CRandomGenerator & rand)
ID = Obj::CREATURE_GENERATOR4;
subID = *RandomGeneratorUtil::nextItem(VLC->objtypeh->knownSubObjects(Obj::CREATURE_GENERATOR1), rand);
}
setType(ID, subID);
}
}

View File

@ -1547,14 +1547,14 @@ void CGHeroInstance::afterAddToMap(CMap * map)
}
}
if(ID == Obj::HERO)
if(ID != Obj::PRISON)
{
map->heroesOnMap.emplace_back(this);
}
}
void CGHeroInstance::afterRemoveFromMap(CMap* map)
{
if (ID == Obj::HERO)
if (ID == Obj::PRISON)
vstd::erase_if_present(map->heroesOnMap, this);
}

View File

@ -1100,14 +1100,12 @@ void CGTownInstance::onTownCaptured(const PlayerColor & winner) const
void CGTownInstance::afterAddToMap(CMap * map)
{
if(ID == Obj::TOWN)
map->towns.emplace_back(this);
map->towns.emplace_back(this);
}
void CGTownInstance::afterRemoveFromMap(CMap * map)
{
if (ID == Obj::TOWN)
vstd::erase_if_present(map->towns, this);
vstd::erase_if_present(map->towns, this);
}
void CGTownInstance::reset()